WooCommerce shipping zones plugin
Draw your own shipping zones.
Shipping Zones by Drawing lets you create custom WooCommerce shipping zones by drawing them on a map. Define variable shipping rates, use multiple shipping origins, and let checkout show customers right away whether you deliver to them.
600+ stores on the free version
★★★★★ 18 five-star reviews
Made & supported in Sweden

Postcodes are a blunt tool.
One postcode can cover the street around the corner and the village 30 minutes away. Draw the area you really serve instead, and charge what the trip really costs.
With postcodes
- Orders from places you can’t reach
- One price for short and long trips
- Long lists to keep up to date
With Shipping Zones by Drawing
- Only addresses inside your zones can order
- Prices that follow the distance
- Change the map in a minute
Features
Everything a local delivery needs.
From the first zone to multi-store delivery with distance-based prices.
Draw
Draw your own zones
Define your own shipping areas by drawing into a map or by a radius from your store location. Already have a KML polygon? Import it.

Price Premium
Shipping cost by distance
Use fixed shipping rates or set a rate per transportation distance. Or a fixed rate inside an included radius, plus a charge per kilometre or mile beyond it.
Rules Premium
Minimum order amount
Set minimum order amounts to control the shipping rate by how much your customers are spending.
Checkout
Checkout page map
Insert a map on the checkout page that lets customers pick their delivery location. Style it with your own Google Map ID.
Location
Plus Code
Let customers specify their delivery location with a Google Plus Code. Great for places without a street address. Always available with Premium; in the free version when the address can’t be found.
Origins Premium
Multiple shipping origins
Deliver from several locations? Decide where each shipping method starts, so customers get the most appropriate delivery. How it works →
Products
Product categories
Distinguish shipping costs and zones depending on the product categories in the delivery.
Limits Premium
Driving distance & time
Limit a method by real driving distance or time, by car or bike, measured from its origin. Not just as the crow flies.
Anywhere
A delivery map on any page
Show your zones and radius circles on any page with the [szbd] shortcode, so customers see where you go before they shop.
Checkout
Classic and block checkout
Works with both WooCommerce checkouts. With Premium, turn on show only the lowest cost method and customers see just the best match.
Draw what postcodes can’t
Your delivery area follows the real world.
Rivers, bridges, tolls and highways decide what a delivery really costs. A postcode or a circle can’t see them. A drawn zone can.

Water, bridges and mountains
A 3 km circle around a Boston store reaches Cambridge across the river and East Boston through a toll tunnel. Draw the zone along the shore instead, and only promise what you can drive. The same goes for islands, fjords and mountain valleys.

The city centre can cost more
Downtown often means traffic, tolls, low-emission zones and nowhere to park. Draw the centre as its own zone with a higher price, or leave it out. Overlapping zones and show only the cheapest do the rest.

Cheap along the highway
Your van runs the I-90 every day. Draw a narrow corridor along it with a low price, and a wider zone around it that costs more. Customers near your route pay less, because they are cheaper to reach.
Shipping problems we solve
Which delivery problem do you have?
Real questions store owners bring to us, and the setting that answers each one.
“We get orders from places we can’t reach.”
Draw the exact area you deliver to. Addresses outside it can’t choose delivery at checkout.
“A river splits our town in two.”
Draw the zone along the water, the bridge or the mountain ridge. Postcodes don’t follow geography; your drawing does.
“Downtown deliveries eat our margin.”
Draw the city centre as its own zone with a higher price for traffic, tolls and low-emission zones.
Real-world shapes → Premium
“Our route runs along the highway.”
Draw a cheap corridor along the road you already drive, and a pricier zone further out.
Real-world shapes → Premium
“Free nearby, but a fee further out.”
Give a fixed price inside an included radius and charge per kilometre or mile beyond it.
Tutorial 3 → Premium
“Free delivery only for bigger orders.”
Add a minimum order amount to the free method and keep a paid one for smaller orders.
Tutorial 1 → Premium
“The city centre should cost less than the suburbs.”
Draw overlapping zones with their own prices and show only the cheapest match.
Tutorial 2 → Premium
“Hot food has to arrive while it’s hot.”
Limit a method by real driving time or distance, by car or by bike.
Driving limits → Premium
“We deliver from more than one shop.”
Add shipping origins and choose where each method starts. Distances are measured from there.
Tutorial 4 → Premium
“Our customers don’t have a street address.”
Let them drop a pin on the checkout map or enter a Google Plus Code.
“Customers keep asking: do you deliver to me?”
Put a map of your delivery zones on any page with the [szbd] shortcode.
“Frozen goods can only go to nearby addresses.”
Restrict a method to certain product categories, so a cart with those products only ships to the zone you choose.
Multiple shipping origins
Ship from every location you have.
A store, a warehouse, a second kitchen, a pickup point across town. Add each one as a shipping origin, and every price, radius and driving limit is measured from the right place. It turns your shipping settings into a small logistics engine.

The nearest location wins
Give each location the same method and turn on show only the cheapest. Every address is priced from all of them, and the closest one takes the order.
Rules per location
Different zones, prices, minimum orders, product categories and driving-time limits for each origin. The city store does hot food, the warehouse does the rest.
Every distance from the right place
Radius zones, per-km prices and driving distance and time limits are all measured from the origin of the method. Add as many locations as you have.
Checkout map
Let the customer drop the pin.
An address isn’t always enough: a back door, a holiday cottage, a building site, a street Google doesn’t know yet. Show a map at checkout and the customer moves the marker to the exact delivery point. The zone check and the price follow the pin.


No street address? Use a Plus Code.
A Plus Code is a short code for any spot on earth, like 8RQJ+PF Newton. Customers can type it at checkout and the map jumps to the exact point. Handy for cabins, beaches, markets and new buildings.
The free version shows the map and the Plus Code field when Google can’t find the address. Premium can show them on every order.
The point is saved with the order, together with a link that opens it in Google Maps for the driver.

- Show the map always Premium, or only when Google can’t find the address.
- Make the pin mandatory, or let customers enter a Google Plus Code.
- Choose road map, satellite or hybrid.
- Match your brand: create a map style in the Google Cloud console and paste its Map ID.

Setup
See it set up. Step by step.
Four real setups from start to checkout. Each takes a few minutes in WooCommerce and uses Premium settings. Click any screenshot to enlarge it.
Tutorial 1 Premium
Free delivery above $150
Let’s say you aim to offer free deliveries for orders above $150 and charge $10 for orders below $150. Besides, only allow deliveries to a certain area, in this example called “Boston”. This can be achieved by adding two shipping methods.
Draw the area
Create a drawn shipping area at WooCommerce → Shipping Zones by Drawing. Give it the title “Boston”. Click on the map to add points; the zone can follow the river and the coast exactly.

Add a free delivery method
In your WooCommerce shipping zone, add a “Shipping Zones by Drawing” method with a flat rate of $0 and a minimum order amount of $150. Choose the “Boston” delivery zone.

Add a $10 delivery method
Then add a second method with a flat rate of $10 and choose the “Boston” delivery zone.
Your WooCommerce shipping zone now has both methods.


Show only the cheapest
Under WooCommerce → Settings → Shipping Zones by Drawing, tick Show only lowest cost shipping method. Otherwise both methods are shown when the order is above $150.

Done. This is what customers see
We tried it on a real block checkout with an address in Back Bay, inside “Boston”.



Tutorial 2 Premium
Overlapping rates: free, $5 and $10
Offer free delivery in the inner city, a $5 delivery cost in a middle zone, and $10 in an outer region.

Draw the outer zone
Create a drawn shipping area called “Boston high”. Add a “Shipping Zones by Drawing” method with a flat rate of $10 and choose the “Boston high” zone.


Draw the middle zone
Draw a second zone, “Boston middle”, and add a second method with a $5 flat rate, restricted to “Boston middle”.


Draw the free zone
Finally, draw a third zone, “Boston free”, and add a third method with a $0 flat rate, restricted to “Boston free”.


Show only the cheapest
Your WooCommerce shipping zone now has three methods. Tick Show only lowest cost shipping method, otherwise an address downtown sees all three.

All done!
We tried three addresses on a real block checkout. Each one gets the price of its zone.



Tutorial 3 Premium
Free within 1 km, then $1 per km
The classic local delivery deal: free for your neighbours, a fair price for everyone further out. Here it is done with one shipping method and three numbers. No zones to draw.

Add one shipping method
In your WooCommerce shipping zone, add a “Shipping Zones by Drawing” method. Set Distance Unit to Metric (km) and Shipping Rate to By fixed rate + straight-line distance charge beyond included radius.
Enter the three numbers
Fixed Rate 0 is the price inside the free circle. Included Radius 1 is the size of the circle. Distance Unit Rate 1 is what each kilometre beyond it costs.
Under Delivery Zone, choose By Radius and a Maximum radius of 10. Addresses more than 10 km away get no delivery at all. You can pick a drawn zone here instead.

How the price is worked out
Price = Fixed Rate + (distance − Included Radius) × Distance Unit Rate. The distance is measured in a straight line from your store and charged to the cent, not rounded to whole kilometres.
| Delivery address | Distance | Charged distance | Shipping |
|---|---|---|---|
| North End | 0.8 km | 0 km | Free |
| Edge of the circle | 1.0 km | 0 km | Free |
| Back Bay | 2.5 km | 1.5 km | $1.50 |
| Brookline | 5.49 km | 4.49 km | $4.49 |
| Too far | 12 km | Not available |
Done. This is what customers see
We tried it on a real block checkout. An address in the North End, 0.8 km from the store, gets free delivery. An address in Brookline, 5.5 km away, pays $4.49.


Variations. Want $5 inside the circle? Set Fixed Rate to 5. Prefer the real road distance? Choose By fixed rate + transportation distance, which adds the full driving distance × the rate to the fixed rate. Selling in miles? Switch the unit and every number is in miles.
Tutorial 4 Premium
Two locations, one checkout
You have a store downtown and a warehouse in Newton. Each address should be delivered from the location that is closest, at the same simple price: $3 within 2 km, then $1 per km, up to 8 km. Two shipping methods, one per location, and the plugin picks the cheapest.

Add the second location
Under WooCommerce → Settings → Shipping Zones by Drawing → Additional Shipping Origins, click New Shipping Origin. Name it “Newton warehouse” and click on the map where it is. Your store location from the settings is the Main Location.


One shipping method per location
Add two “Shipping Zones by Drawing” methods with the same price: Fixed Rate 3, Included Radius 2, Distance Unit Rate 1, Delivery Zone By Radius with a Maximum radius of 8. Set Shipping Origin to Main Location on one and Newton warehouse on the other.


Show only the cheapest
Tick Show only lowest cost shipping method. Every address is now priced from both locations, and the customer sees one option: the one from the location that is cheaper to deliver from.
Done. Each order goes to the right place
We tried it on a real block checkout. Back Bay is 1.4 km from downtown and pays $3.00. Chestnut Hill is 2.2 km from Newton but 9 km from downtown, so it is delivered from Newton for $3.21. The method name tells you which location delivers the order.


Go further. Give each location its own drawn zone, its own prices, or its own driving-time limit. Restrict a method to product categories, so only one location ships frozen goods. Add as many locations as you have.
You need a Google Maps API key for the maps. The documentation shows how to create it, and every setting.
Made for local delivery
If you drive it yourself, it fits.
Restaurants & takeaway
Deliver hot food only as far as it stays hot, with a fee that grows with the distance.
Grocery & farm shops
Free delivery above an order amount in town, a fair fee for the countryside.
Florists & bakeries
Same-day routes you can actually drive, drawn around your shop.
More than one store
Ship each order from the location that makes sense, with zones per origin.
Reviews
Store owners say it best.
“Our client had very specific needs for an exact delivery area. Zip codes alone would not do it, but Shipping Zones by Drawing would.”
Excellent plugin, solves a big problem · WordPress.org
“I’ve tried different plugins and this works just incredible. The bundle with the address checker makes it a killer combination.”
Fantastic · WordPress.org
“The plugin works great. Highly recommended if you want to organize shipping and delivery areas at different prices.”
Great plugin, incredibly professional support · WordPress.org
“Had an issue, they provided one to one support and resolved it within minutes of reporting the issue.”
Excellent customer support · WordPress.org
Pricing
Start free. Go Premium when you’re ready.
Free
$0
On WordPress.org
- Up to five drawn zones
- Flat rates and radius zones
- Upgrade any time
Premium
Premium
$39 / year
1 site licence
- Unlimited zones
- Every premium feature
- Support and updates for one year
- Billed annually
Save $13
Premium + Check My Address
$55 / year
Both plugins, 1 site
- Shipping Zones by Drawing Premium
- Check My Address
- Support and updates for one year
- Billed annually
Licences for 5 and 20 sites are on arosoft.se.
Free or Premium?
| Free | Premium | |
|---|---|---|
| Drawn delivery zones | Up to 5 | Unlimited |
| Radius zone around your store | ✓ | ✓ |
| Import zones from KML | ✓ | ✓ |
| Flat rates and shipping class costs | ✓ | ✓ |
| Restrict by product category | ✓ | ✓ |
| Map pin and Plus Code when Google can’t find the address | ✓ | ✓ |
[szbd] delivery map on any page | ✓ | ✓ |
| Classic and block checkout | ✓ | ✓ |
| Price by driving distance | – | ✓ |
| Free radius + price per km or mile beyond | – | ✓ |
| Limit by driving distance or time, car or bike | – | ✓ |
| Minimum order amount and coupon free shipping | – | ✓ |
| Multiple shipping origins | – | ✓ |
| Show only the cheapest method | – | ✓ |
| Map pin and Plus Code always available at checkout | – | ✓ |
| Marker on the address and on returning customers’ saved spot | – | ✓ |
Premium is a complete plugin of its own. Deactivate the free version, install Premium, and your zones and settings stay.
FAQ
Good to know.
Does it work with the WooCommerce block checkout?
Yes. It works with both the classic and the block checkout.
Do I need a Google Maps API key?
Yes. The maps and address lookups use Google Maps, so you need a Google account with billing. The documentation shows step by step how to create the keys.
Can I try it for free?
Yes. The free version on WordPress.org lets you draw up to five zones. Premium removes the limit and adds every premium feature.
What happens after the first year?
The plugin keeps working, for as long as you like. Updates and support stop until you renew for another year.
I deliver from more than one place. Does that work?
Yes. Add several shipping origins and choose which one each delivery method starts from. Distances and prices are calculated from there.
Where do I find the documentation?
All settings, the API key setup and the changelog are at docs.arosoft.se.
Draw your first zone today.
Start with the free version, or go Premium from $39 a year.
Version 3.2.0 · August 12, 2026 · What's new