The free shipping bar that reads your real WooCommerce shipping zone

Most WooCommerce free-shipping bars store their own threshold separately from your actual shipping zone. Change the zone's free-shipping minimum and forget the bar, and the two drift apart — the bar promises free shipping at an amount that no longer triggers it. Asteris Cart reads your WC_Shipping_Zones configuration and uses the real min_amount, so the bar reflects the zone the customer is in. It also raises a Site Health warning when the bar's threshold matches no zone at all.

The bar that quietly lies

A free-shipping progress bar is a simple, effective nudge: “You’re $20 away from free shipping.” The problem is where most bars get the number. They store their own threshold in their own settings, with no link to the WooCommerce shipping zone that actually decides whether shipping is free.

So the two drift. You raise your free-shipping minimum from $75 to $100 in the shipping settings, the bar still says $75, and now it promises free shipping at a number that does not trigger it. The customer hits “$0 away”, reaches checkout, and shipping is still charged. The nudge becomes a small broken promise at the worst possible moment.

What Asteris Cart does differently

Asteris Cart’s free-shipping bar does not keep a private number. It reads the live shipping configuration:

Code receipt: src/Cart/Free_Shipping_Bar.php::effective_threshold() [CODE SNIPPET — CC to insert the current effective_threshold() body from src/ at build; must match shipping v1.0.]

Why this is the honest design

The whole positioning of Asteris Cart is that the cart should not lie to the customer. A free-shipping bar that reads a number you typed once, somewhere else, is structurally prone to lying — not through bad intent, but through drift. Reading the real zone removes the drift at the source. The Site Health warning closes the remaining gap, where a threshold was set that no zone supports.

How this fits

The free-shipping bar is one of 22 Asteris Cart modules, and one of the six wedges where the plugin does something the ecosystem does not package cleanly. See the Free Shipping Bar module → · Compare Asteris Cart with the alternatives → · See pricing →

FAQ

Why does my WooCommerce free shipping bar show the wrong amount? Most bars store their own threshold, separate from your shipping zone. Change the zone and forget the bar, and they disagree.

How does Asteris Cart keep the bar accurate? It reads the real WC_Shipping_Zones min_amount and follows the customer’s zone, and warns you in Site Health when the bar matches no zone.

Does it handle different shipping zones? Yes — the threshold shown follows the customer’s zone rather than one number typed once.

Sources