Shopify guide

Different local delivery rates by distance in Shopify: radius zones vs. per-kilometre pricing

Shopify's local delivery lets you set a delivery radius and a price per zone, but the only conditions you can attach to that price are order-value breaks — not the customer's actual distance from your store. So a rate that grows the farther someone lives, or that's free only within a short radius and paid beyond it, has no native setting. An app that calculates a real per-kilometre rate through Shopify's checkout is the way merchants close that gap.

Last updated: · Kevin Metzdorf

In short

Shopify’s local delivery gives you a radius or a postal-code list per zone and one price for that zone, with up to three extra rules that change the price by order value. None of that varies by the customer’s actual distance from your store — a delivery 1 km away and one 15 km away inside the same zone pay the same rate. Merchants who want a fee that grows with distance, or free delivery only within a short radius and a paid rate beyond it, need an app that calculates a real per-kilometre rate through Shopify’s checkout.

The problem, in merchants’ words

The Shopify Community has asked for this repeatedly, in slightly different framings: “Can we change the price by distance for local delivery”, “Need Different Rates for Local Delivery” (one merchant wanted Standard/Express/Same-day rates that varied within a 30-mile area), and “Can I limit free local delivery to a specific radius?” — free close to the store, a paid rate further out. The common thread: local delivery in Shopify is priced per zone, not per kilometre, so as soon as a merchant wants the price to track actual distance, the native settings run out.

The native way in Shopify

Set up local delivery: Settings › Shipping and delivery › “Add local delivery”. Choose a delivery radius (up to 160 km / 100 miles) or a list of postal codes, and set a base price for the zone — enter 0 for free delivery.

Add price rules: Within the same zone, up to three additional pricing rules can be added. Each rule sets a minimum and maximum order value and a delivery fee for that range — for example, free above $75, otherwise a flat $5. Up to 10 such delivery zones are possible per location.

Nothing in this setup reads the delivery address’s distance from your store beyond deciding whether it falls inside or outside a zone’s radius. Two customers in the same zone are charged the same, whether they’re around the corner or at the edge of the radius.

Where Shopify stops

  • Pricing rules key off order value, not distance. The only condition a local delivery price rule understands is the cart’s subtotal — there’s no “price increases per kilometre” option.
  • Zones aren’t distance bands. A radius zone is measured from your location outward; Shopify doesn’t turn several zones into clean, non-overlapping rings automatically, so stacking zones to fake distance tiers is fragile to set up and maintain by hand.
  • No routing or map calculation at all. Local delivery doesn’t calculate driving distance or even straight-line distance for pricing purposes — it only checks whether an address falls inside a configured radius or postal-code list.

How an app solves it

An app that calculates distance-based rates through Shopify’s Carrier Service API can turn the customer’s distance from your store into the actual price, in tiers or as a running rate:

Goal Rule
Free close by, flat fee further out 0–5 km → free; 5–15 km → flat $4.90
Fee that grows with distance Base price $3.00 + $0.50 per km, capped at $15.00
A delivery area with a hard edge Beyond the largest tier → no rate offered, so the order can’t go through with this method

What the customer sees: an address 3 km from the store shows the free or lowest tier; one 12 km away shows the higher tier or the calculated per-km price; an address beyond the configured area sees no rate for this shipping method at all — other configured methods, if any, are unaffected.

Technically, the app registers a Carrier Service with Shopify: on every rate request at checkout, Shopify hands the app the delivery address, the app calculates the distance from your store location and returns a rate for the matching tier. That runs on every plan that has carrier-calculated shipping enabled, without touching the theme.

The app from this business works exactly like this for Germany and nearby countries — in kilometres, without UK coverage: calculate delivery rates per kilometre with an app.

Things to watch

  • Carrier-calculated shipping is a requirement. Apps that price by real distance need the Shopify feature “Third-party carrier-calculated shipping” — included automatically on the Advanced and Plus plans, available on Grow with annual billing or as a paid add-on, usually not available on Basic.
  • Straight-line vs. driving distance. Some apps calculate the direct distance between postal codes rather than the actual route; that’s faster and doesn’t depend on an external map service, but it can undercount the real driving distance in areas with rivers, motorways or detours.
  • A capped or tiered rate avoids surprises. An uncapped price-per-kilometre rate can look steep for distant addresses — a price cap or a fixed number of tiers keeps the top rate predictable for both you and the customer.
  • This runs alongside, not instead of, native local delivery. You can keep Shopify’s local delivery for a simple flat-price radius and add the app only for a separate, distance-priced shipping method — Shopify shows every available method side by side at checkout.

Frequently asked questions

Can I set different local delivery rates by distance in Shopify?

Not with a single native rule. Local delivery zones let you set one base price per zone, plus up to three extra pricing rules — but those rules key off the order's value, not how far within the zone the delivery address is. To approximate distance tiers you'd have to build several overlapping radius zones by hand, and Shopify still won't calculate a price that scales per kilometre.

Can I limit free local delivery to a specific radius?

Yes, for a single flat radius: set a zone's delivery radius and enter 0 as the price. What you can't do natively is make delivery free up to, say, 5 km and then charge a distance-based fee beyond that in the same rule — that needs a second zone and still won't scale smoothly with distance.

Does Shopify's local delivery calculate a price per kilometre or mile?

No. A local delivery zone always charges one flat price (or a price broken by order value), regardless of whether the customer lives 1 km or 15 km inside that zone's radius. A per-kilometre or per-mile rate needs an app.

Do I need Shopify Plus for distance-based shipping rates?

No. Apps that calculate distance-based rates use Shopify's Carrier Service API, which runs on every plan — but your shop needs the "Third-party carrier-calculated shipping" feature active, and that's not automatic on every plan (see the next question).

Does distance-based shipping work on the Basic plan?

Usually not. The app needs carrier-calculated shipping, which is usually not available on Basic — the app's setup guide checks whether your shop has the feature. Shopify includes it automatically on the Advanced and Plus plans and offers it on Grow with annual billing or as a paid add-on. Without it, a carrier-based distance app can't return rates at checkout.

Is the distance calculated as driving distance or a straight line?

It depends on the app. Some calculate driving distance via a routing service; others use the straight-line distance between postal codes, which is faster and doesn't depend on an external map service. Check which method an app uses before comparing it to your actual delivery routes.

Sources

  1. Shopify Help Center: Setting up local delivery for online orders (radius, zones, order-value pricing rules)
  2. Shopify Help Center: Third-party carrier-calculated shipping (plan requirements)
  3. Shopify Community: "Can we change the price by distance for local delivery"
  4. Shopify Community: "Need Different Rates for Local Delivery"
  5. Shopify Community: "Can I limit free local delivery to a specific radius?"
  6. Shopify App Store: KM Distance Shipping (distance tiers, flat rate or base + price per km)

No off-the-shelf solution fits?

25 minutes, free of charge. We look at your checkout together — afterwards you'll know whether an app is enough or you need a custom solution.