PremiumNewTrust Builders

Free Shipping Estimator

Delivery-date estimate plus free-ship progress, by visitor location.

#shipping#delivery#estimate#pdp#shippingeasy-replacement

Live preview

See it in action.

Fully interactive, drag, click, scroll inside the frame, toggle to mobile.

About this section

A compact PDP / cart widget that shows an estimated delivery-date range based on the visitor's country (auto-detected from Shopify Markets), plus a live free-shipping progress bar that updates from the cart. Configure shipping zones as theme blocks: country list, min/max business days, threshold per zone. Skips weekends in the date math.

Install in 90 seconds

  1. 01

    Create /sections/modblo-free-shipping-estimator.liquid.

  2. 02

    Paste the section code and save.

  3. 03

    Add the section to product.json or wherever you want the widget (works great near the Add-to-Cart button or in the cart drawer).

  4. 04

    Add Zone blocks for each shipping region. Set country codes (comma-separated ISO codes, e.g. US, CA), min/max business days, and free-shipping threshold.

  5. 05

    Add a final zone with countries set to * as the fallback for any country not explicitly covered.

The Liquid

Unlock the section code

Free Shipping Estimator is a premium section. Get the full Liquid + scoped CSS paste-ready.

One-time purchase · Lifetime updates · You own the code

Theme editor settings

SettingTypeDefault

Heading

heading

textEstimated delivery

Show free-shipping progress bar

show_progress

checkboxtrue

Background

bg

color,

Foreground

fg

color#0b0b0c

Accent

accent

color#6366f1

Shipping zones (theme blocks)

blocks

One Zone block per shipping region. Use * for the fallback (rest-of-world) zone.

blocks,

SEO & accessibility notes

  • Country auto-detected from Shopify localization (works with Markets), no IP-geolocation API needed.
  • Date math skips Saturday and Sunday for accurate business-day estimates.
  • Free-ship progress uses /cart.js polling on cart:updated event, no extra API calls during idle.
  • Zone data lives in inert <div data-modblo-fs-zones hidden> so it's invisible to layout but JS-readable.
Free Shipping Estimator. Shopify section | modblo