Shopify supports flat, free, tiered and calculated shipping rates. Distinguish built-in rates from third-party apps. Third-party calculated shipping is included with Advanced and Plus; Grow can add it for a monthly fee or with annual billing. Installing an app does not bypass eligibility.
The four options Shopify gives you
Every Canadian SMB selling on Shopify has to decide how to charge the customer for delivery at checkout. Shopify offers four approaches, and you can mix them by shipping zone (for example, one rate for Quebec, another for the rest of Canada).
- Flat rate: you charge a fixed amount (e.g. $12) regardless of weight or destination.
- Free shipping above a threshold: free once the order passes a set amount (e.g. $75), paid below it.
- Weight- or price-based tiers: the rate climbs by band (0–1 kg = $9, 1–5 kg = $15, and so on).
- Carrier-calculated rates: Shopify queries Canada Post, UPS, FedEx or Purolator live and shows the customer the real rate.
The first three are rules you define yourself. The fourth is dynamic: the customer sees the true shipping cost, calculated from their postal code and the actual cart weight.
The catch with native real-time rates
Third-party checkout rates depend on Shopify plan eligibility and the carrier or app connection. Verify activation before promising checkout rates; native label purchasing is a separate feature.
Shopify Shipping in Canada offers Canada Post, DHL Express Canada, Purolator and UPS, subject to service restrictions. Label purchasing and calculated checkout rates are distinct features. Third-party carrier accounts and apps may require an eligible Shopify plan. Check Shopify’s documentation for your configuration.
Calculated rates depend on recorded weights, packaging and configured options. Surcharges, carrier adjustments or taxes can still change the final cost. Test a representative order and configure fallback rates.
| Strategy | How it works | Best for | Downside |
|---|---|---|---|
| Flat rate | One fixed amount regardless of weight or distance | Uniform catalogue, light parcels of similar size | Loses money on heavy or far parcels; overcharges small orders |
| Free shipping (threshold) | Free above a set amount, paid below it | Lifting average order value | You absorb the real cost; risky on heavy orders under the threshold |
| Weight/price tiers | Rate climbs by a band you define | Variable-weight products (e.g. hardware) | Manual tiers drift out of sync with real carrier rates fast |
| Real-time (carrier) | Shopify queries the carrier live by postal code and weight | Maximum accuracy, protected margin | Limited/costly natively; often needs Advanced plan or a third-party app |
How a multi-carrier app plugs in
A compatible app can supply checkout rates when the store and configuration are eligible. Verify displayed services, zones and behavior when no rate is returned.
For MesColis, confirm order importing, available services and checkout rates separately on your store. Connecting Shopify alone does not prove every operation is active.
Concrete setup steps
To turn on accurate rates at your Canadian store's checkout:
- In your Shopify admin, go to Settings, then Shipping and delivery.
- Check your shipping profiles and zones (create a Canada zone, and a separate Quebec zone if needed).
- For flat or tiered rates: add a manual rate and set the amount or the weight/price bands.
- For native real-time rates: confirm you're on the Advanced plan (or eligible annual billing), then enable carrier-calculated rates.
- For multiple carriers: install a rate app from the Shopify App Store, connect your carriers, and link it to your shipping zones.
- Run a test order at different postal codes (e.g. downtown vs. a remote region) to confirm the displayed rates are accurate.
Weigh and measure your products properly in Shopify: real-time rates depend on the recorded weight and dimensions. A missing weight throws off the whole calculation.
The verdict: start simple, go real-time as volume grows
If you're starting out with a light, uniform catalogue, a flat rate or a free-shipping threshold is perfectly fine: it's simple and it converts. But the moment your parcels vary in weight or you ship across Canada, flat rate starts losing money on heavy and distant orders. At that point, real-time rates are the only way to protect your margin while staying fair to the customer.
Honest take: no single carrier is cheapest for everything. Canada Post shines on small, light parcels and rural reach (6,000+ post offices), while UPS or Purolator often win on urgent or heavy shipments. A multi-carrier app like MesColis lets you compare and pick per parcel right inside Shopify checkout. You keep the accuracy without locking yourself into one network.
