Free Shopify store auditSpeed, SEO and conversion leaks — no cost, no obligation.
Claim it
Thriftizer Solutions LLPShopify Select Partner
Book a Growth Audit
Shopify Sep 13, 2026 10 min read

Shopify Shipping in Australia: Zones, Australia Post and Regional Rates

Shopify's zones stop at the state line, which is a problem when a parcel to regional WA costs more than the margin on the order. How to build rate tables, thresholds and carrier routing that hold up.

Shopify Shipping in Australia: Zones, Australia Post and Regional Rates

Shopify's native shipping zones in Australia stop at the state line. You can create a zone for WA, a zone for NT, a zone for everything east of the Nullarbor, and set weight or price tiers inside each one. What you cannot do out of the box is charge a Perth metro customer one rate and a Kununurra customer another, because both sit in the same state and Shopify has no concept of a postcode band in its rate table. Everything else in this post follows from that single limitation, and from the fact that a 3kg parcel to a regional WA address can cost more than the gross margin on the order that triggered it.

So the job isn't picking a carrier. It's building a rate table that stops you losing money on the tail of your order distribution without pricing yourself out of the 80% of orders that go to Sydney, Melbourne and Brisbane.

What Shopify's shipping zones actually do here

In your admin under Settings > Shipping and delivery, a shipping profile holds one or more zones, and each zone holds rates. For Australia, Shopify lets you split the country by state and territory, so eight possible zones. Inside each zone you can add rates based on weight, or based on order price, or flat. You can also attach a separate profile to specific products, which is the correct answer for a single oversized SKU that would otherwise wreck your weight bands.

Two things people miss. First, price-based rates evaluate on the subtotal after discounts, so a 20% code drops a $110 cart under a $99 free-shipping threshold and the customer is suddenly charged freight they didn't expect. Test that in your own store before Click Frenzy, not during. Second, the shipping charge you present is GST-inclusive when the underlying supply is taxable, which means the $12 you show at checkout is $10.91 in your pocket. Merchants build rate tables off carrier quotes that are quoted ex-GST and then wonder why the recovery is 9% short.

A zone structure that survives contact with WA

The setup we use as a starting point for Australian stores, before any app is involved:

  • Zone A: NSW, VIC, ACT, QLD, SA. The bulk of your volume, and the cheapest lanes from an east coast 3PL.
  • Zone B: TAS. Cheaper than WA, dearer than mainland east, and it has its own quarantine rules if you sell food or plants.
  • Zone C: WA.
  • Zone D: NT.

Four zones, three rate tiers each by weight, twelve rates total. That takes an hour and it catches most of the damage, because WA and NT are where the cost curve bends hardest. What it doesn't catch is the difference between Perth metro and the Pilbara, or between Cairns and Weipa, and if a meaningful slice of your orders lands in those postcodes you will feel it.

One more decision inside this: whether Zone C and D get a longer stated delivery window. They should. Setting the expectation at checkout costs you nothing and removes a WISMO ticket per parcel.

Shopify shipping rates by postcode: what it actually takes

Three routes, in ascending order of cost.

Rate-table apps. Apps like Parcelify, Advanced Shipping Rules or Bespoke Shipping let you upload a CSV of postcode ranges with a price per range, per weight band. This is the honest workhorse option. You maintain the file, you control the numbers, and you aren't at the mercy of a carrier API timing out at checkout. Cost is a monthly subscription in the tens of dollars. Note that these apps hook into Shopify's third-party calculated rates, which Shopify includes on Advanced and Plus and offers on lower plans if you move to annual billing. Check the current terms in your admin, because Shopify has changed that arrangement more than once.

Shipping platforms. Starshipit and Shippit both push live or rules-based rates into Shopify checkout and handle labels, manifests and tracking notifications on the other side. If you're shipping more than a few hundred parcels a month across multiple carriers, the fulfilment side alone justifies it and the postcode logic comes free.

Shopify Functions, on Plus. Delivery customisations let you hide, rename or reorder rates at checkout based on cart contents and address. Useful for suppressing a courier option on a PO Box, or hiding express to a postcode the carrier doesn't service next-day. It won't invent a rate that doesn't exist, so you still need the underlying table. We build these when a merchant's rules are genuinely bespoke and no app models them cleanly; if you want that scoped, our Shopify app development team does it as a private app rather than a theme hack.

The arithmetic nobody runs before switching on free shipping

Here's the shape of it. Placeholder numbers, plug in your own.

Average order value $89 including GST. Ex-GST that's $89 ÷ 1.1 = $80.91. Take out cost of goods at $34, pick and pack at $2.50, packaging and satchel at $1.20, and card processing at roughly 1.75% + 30c on a Basic plan, so $1.86. Contribution before freight: $80.91 − $34 − $2.50 − $1.20 − $1.86 = $41.35.

Now the freight, ex-GST, on the same 1kg parcel from a Melbourne warehouse:

  • Sydney metro at $10: contribution $31.35.
  • Perth metro at $18: contribution $23.35.
  • Regional WA at $27: contribution $14.35.

Bump that to a 3kg parcel to a remote WA postcode at $42 and you're at −$0.65. You have just paid for the privilege. And if the customer used Afterpay, whose merchant fee is a multiple of card processing, you were underwater two lines earlier.

Pull your last 500 orders into a sheet, tag each by state and weight band, and look at what percentage of them fall below a contribution floor you'd accept. In our experience that tail is smaller than merchants fear and more expensive than they assume. Five per cent of orders wiping out a fifth of the month's gross margin is a normal finding.

Setting a free shipping threshold by zone, not nationally

The standard advice is to put the threshold somewhere between 1.3x and 1.5x your AOV. On $89, that's $115 to $135, call it $120. Fine for the east coast. Wrong for WA.

Continuing the same example: if a customer lifts a basket from $89 to $120 to qualify, you've added $31 inc-GST, $28.18 ex. If incremental product cost is 38% of that, $10.71, you've gained $17.47 in contribution and given away $10 of Sydney freight. Net +$7.47. Do the same in regional WA and you've given away $27 against the same $17.47. Net −$9.53.

So run two thresholds: $99 or $120 for Zone A, and $150 or more for WA and NT. Shopify handles this natively, because free shipping is just a price-based rate of $0 inside a zone. It costs you nothing but the ten minutes. What it does cost you is the ability to say "free shipping Australia wide" in your banner, and you shouldn't be saying that anyway if your checkout contradicts it. The ACCC takes a dim view of headline offers that evaporate at step three, and the same applies to repeating your carrier's carbon-neutral marketing as though it were your own substantiated claim.

Australia Post integration, and what changes on a contract

Most stores start on MyPost Business, which prices by parcel size and zone and gives you rate tiers as your volume climbs. The Shopify connection at that stage is usually label generation rather than live checkout rates, which is fine because your rates are stable enough to hard-code into zones.

The change worth planning for is the move to a StarTrack or eParcel contract, where you get negotiated pricing, account-level zone definitions and an API that returns quotes for a specific consignment. Two consequences. Your negotiated rates no longer match the public price table, so any app pulling published rates will quote you wrong. And you get access to StarTrack road and express for the heavier and regional consignments where Australia Post's parcel product gets expensive. The volume needed to open that conversation moves around, so ask rather than guess.

Practical note on address handling: Australia Post delivers to PO Boxes and parcel lockers, and a large number of regional customers use them precisely because home delivery is unreliable. Courier networks don't. If you're mixing carriers, you need logic that routes locker and PO Box addresses to Australia Post automatically, or you will get exceptions and re-ships.

Sendle vs Australia Post: which one, when

Sendle is a courier reseller with flat-ish pricing by size and zone, no account minimums, no fuel surcharge line item, and door-to-door pickup. For a store shipping 1kg to 5kg parcels between capital cities, it's usually cheaper and simpler, and the pricing is predictable enough to build a flat rate table around.

Australia Post wins on three things: coverage of remote and rural postcodes where the underlying courier networks thin out or surcharge, PO Boxes and lockers, and the customer's own expectation that a parcel arrives with a red and white label. It also has more granular product options once you're on a contract.

The answer for most Australian merchants is both, not either. Sendle or a courier for metro-to-metro, Australia Post for anything outside a courier footprint and anything addressed to a box. That routing decision belongs in your fulfilment platform, not in a human's head at 4pm on a Friday in November.

Live carrier rates at checkout: worth it, or theatre?

Live rates are genuinely useful when your parcels vary wildly in dimensions or weight, when you ship internationally, or when you're on a negotiated contract and want the exact number rather than an average. If you sell furniture, pet food, ceramics or anything where a two-item cart is a different shipping product to a one-item cart, calculated rates pay for themselves.

They're theatre when your catalogue is homogeneous. A store selling apparel where every order fits a 500g satchel does not need an API call at checkout. It needs three weight bands and a spreadsheet reviewed each quarter. Live rates also add latency to the shipping step and fail occasionally, and Shopify's fallback behaviour when a carrier doesn't respond is something you have to configure deliberately rather than discover during a sale.

The best shipping app for an Australian Shopify store depends on where the pain is

There isn't one winner, but there's a clean way to choose. If the problem is pricing — you're losing money on regional orders — you want a postcode rate-table app and nothing more. If the problem is fulfilment — label volume, multiple carriers, tracking emails, returns — you want Starshipit, Shippit or a comparable platform, and the rate logic rides along. If the problem is cross-border, you're into a different category again, and you should be reading up on the A$1,000 low-value imported goods rules before you read app reviews.

Install one. Not three. Every shipping app that injects a script or sits in the checkout path adds weight, and we've audited plenty of Australian stores carrying two rate apps where one had been disabled but never uninstalled.

Peak season here runs backwards

Click Frenzy in November, then Black Friday, then a Christmas that lands in the middle of summer and a January where half the country is at the beach. Three things to set before that window:

  • Published cut-off dates by zone, on the product page and in the cart, with WA and NT given several days more than the east coast. Australia Post publishes its own peak deadlines each year; take theirs and subtract your own dispatch lead time rather than repeating them verbatim.
  • An express option that's actually express. During peak, standard road freight to regional WA can drift well past the estimate, and a customer who paid $12 for standard in mid-December will be angrier than one who paid $25 for express and got it.
  • A review of your free shipping threshold before the discounting starts, because a 30% off code plus free shipping over $99 is two margin concessions stacked on one order.

EOFY in June is the other one, and it behaves differently. Higher AOV, more business buyers, more delivery addresses that are offices rather than homes. Worth a separate rate profile if you sell B2B.

Where to start this week

Export your last 500 orders with state, weight and shipping paid. Add a column for what the freight actually cost you. Sort ascending by the difference. If the bottom decile is deep red and it's mostly WA, NT and regional QLD, you have a zone problem you can fix in an afternoon with four zones and a revised threshold. If it's scattered across postcodes inside states, you need a rate-table app and a proper postcode file.

We do this as part of a store review for Australian merchants, alongside the checkout and speed side of things. If you want a second pair of eyes on the numbers, the Australia team is here, or start with a free audit and we'll tell you which of the two problems you have.

Next post

Ready to scale your D2C brand profitably?

Let's build a growth engine that drives more traffic, more conversions and more profit.

Book a Growth Audit
📅 Free Audit💬 WhatsApp