Distance Based Shipping Rates for WooCommerce | ShipAddon
WooCommerce Distance Based Shipping

Charge customers based on
how far you’re delivering.

Calculate shipping costs by the actual distance between your store and the customer’s address. Perfect for local delivery, regional services, and anyone who wants to price fairly by distance.

7-day trial for $1  ·  Cancel anytime  ·  Setup in under 10 minutes
km or miles
Your choice of unit
Google Maps API
Accurate route distance
Any radius
Deliver as far as you want
No code
Pure UI setup

What you actually get

🗺️

Fair pricing for local delivery

Charge £2 for 2km and £10 for 20km — automatically, with no manual zones to maintain.

🚴

Perfect for restaurant, food, and local stores

Any business that delivers locally by van, bike, or courier needs distance-based rates. This is the tool for it.

📍

Set your maximum delivery radius

Don’t want to deliver more than 25km? Set a cutoff and that option won’t show beyond it.

💰

Stop flat-rate subsidising of long-distance orders

Charging a flat £5 for all local deliveries means nearby orders fund far-away ones. Distance rates fix that.

Simple setup.
Powerful results.

Get configured and live in under 10 minutes — no developer required.

1

Set your origin address

The starting point for all distance calculations — your warehouse, shop, or kitchen.

2

Connect the Google Maps Distance Matrix API

A free-to-low-cost Google API that returns actual road distance between two addresses.

3

Build your distance rate table

Set a rate for every distance range — under 5km, 5–15km, 15–30km — and a maximum radius.

Works everywhere
WooCommerce does

Tested with all major setups, themes, and page builders. Compatible with:

WooCommerce 8.x & 9.x
WordPress 6.x
Google Maps Distance Matrix API
HPOS Compatible
WooCommerce Blocks
PHP 7.4 – 8.3
km and miles
Multisite

Trusted by thousands of
WooCommerce stores

5k+
Local delivery stores on ShipAddon
Road distance
Not straight-line estimates
Google Maps
Accurate route calculation
★★★★★

“We deliver within 8km of our restaurant. We now charge by distance and our delivery drivers don’t have to do long unprofitable runs for a £5 flat fee. Should have had this years ago.”

Marco P. — Italian restaurant with delivery
★★★★★

“Same-day delivery means we need accurate distance pricing. This plugin does exactly that. Works great on mobile checkout too.”

Grace H. — Local florist & delivery
★★★★★

“We have our own delivery vans but it gets expensive over 20 miles. Now those rates scale with distance and our margins are protected.”

Ian T. — Regional furniture store

Built to solve real shipping problems.

✓ What you get with ShipAddon

Real road distance (not straight line)

Uses Google Maps routing — the actual driving distance, not ‘as the crow flies’.

Maximum radius cutoff

Block orders beyond your delivery area without confusion.

Per-km or per-mile rate tables

Full flexibility in how you price each distance band.

$1 trial — test with your address

7 days to verify distance calculations match your real delivery area.

✗ Common problems elsewhere

Postcode zones are maintenance-heavy

Manual postcode group zone tables need updating whenever you expand coverage.

Straight-line distance is inaccurate

Road distance matters — straight-line calculations underestimate distances to some areas.

Flat rate is unfair to you and customers

Nearby customers overpay, far customers underpay. Distance rates fix both.

No radius limit

Without a cutoff, your local delivery option shows for orders 200km away.

Everything you need,
nothing you don’t

🗺️

Road distance calculation

Uses Google Distance Matrix API for actual driving distances.

📏

km or miles

Choose your preferred unit of distance.

💰

Distance rate table

Set rates per distance band — under 5km, 5–15km, etc.

🚫

Maximum radius limit

Hide the shipping method beyond your coverage area.

📍

Custom origin address

Use your exact shop or warehouse address as the start point.

💼

Per-km/mile rate

Charge a fixed cost per km/mile of distance.

🏁

Flat + per-unit rates

Combine a base charge with a per-km multiplier.

Address autocomplete

Google Places autocomplete at checkout for accurate address entry.

🔄

Multiple methods

Different rates for different vehicles — bike vs van delivery.

🏷️

Custom method labels

‘Local Delivery’, ‘Same-Day’, ‘Express Courier’ — your naming.

📦

Works with all products

No product configuration needed — distance is cart-level.

🔐

Google API key setup guide

Step-by-step guide to getting and restricting your Google API key.

Start for $1.

Try the full plugin for 7 days, then choose the plan that fits your store count.

Single Plugin
$89 / year
1 plugin · 1 WooCommerce store
  • Full plugin access
  • Priority email support
  • All future updates
  • 1 year of support
  • Setup documentation
Get Single Plugin
7-day trial for just $1 — cancel anytime
All Access
All Access Pass
$229 / year
Every ShipAddon plugin · Unlimited sites
  • All current & future plugins
  • Unlimited site licenses
  • Dedicated account manager
  • Agency & freelancer use
  • Early access to new releases
Get All Access
7-day trial for just $1 — cancel anytime

Common questions

Yes — the plugin uses the Google Distance Matrix API. Google provides $200/month free credit which is enough for most small stores (about 40,000 calculations per month).
Road distance — using Google’s actual routing. This is more accurate for pricing local delivery.
Yes — set a maximum km/mile limit and the shipping method won’t show at checkout for customers outside that range.
This plugin focuses on distance-based rates. For time-based conditions, pair it with Flexible Shipping PRO.
Unlimited — create as many ranges as you need (0–5km, 5–10km, 10–20km, etc.).

Price your local delivery fairly, automatically.

Distance-based rates calculated by road distance at checkout. $1 for 7 days.

7-day $1 trial
No setup fee
Cancel any time
1-on-1 support included