Custom shipping rates Shopify: visual flow, fixed/weight/quantity pricing, 40+ conditions. Carrier rates need Advanced; hide/rename on more plans.
2026-11-02

Custom shipping rates in Shopify: your labels, your math

“Standard shipping” and one zone per country holds until the first pallet, the first remote postcode, the first B2B tag. Then you want a checkout line named Courier up to 10 kg, €6.95 to 2 kg and a per-kilo step after that — not another row in Shopify’s default table. Custom shipping rates Shopify means your service names plus a calculated amount (fixed, tier, per unit) instead of stock zones alone.

OO - Shipping Rates & Rules is Free. Listing (2 Nov 2026): 0 reviews, launched 28 Oct 2026. Do not invent stars. Visual rates flow, or describe the logic and let AI draft it. Price rates fixed, in tiers or per unit, with thresholds, minimums, and handling fees. 40+ conditions. Combined rates. Hide, rename, reorder. Activity logs.

Shopify Help Shipping rates: flat, free, or carrier-calculated. Profiles, zones, markets stay underneath. This app adds a carrier service named OO - Shipping Rate & Rules.

Yesterday: how to set shipping rates — install order. This article is what sits on the rate card: the custom name, the math, and which Shopify plan you need.

Two promises, two plan bars

Do not skip this:

  • Carrier-calculated custom rates (checkout asks the app for a price): typically Advanced Shopify or higher, a development / Partner development store, Plus, or a shop where the carrier is already active.

  • Delivery customization (hide, rename, reorder methods that already appear): works on more plans; Advanced is not required for that canvas.

Lower plans see a banner and a delivery-first checklist. Do not promise postcode pricing on Basic as if the carrier always starts there.

How to install: listing → Add app → scopes (shipping, delivery customizations, products, markets) → dashboard checklist. Then: app zone, visual flow, attach the carrier to every Shopify zone/market, optional delivery rules, test checkout, logs (7 days).

Native flats in admin stay until you hide them or until checkout actually queries the app carrier. Forget to attach the carrier and you get empty rates or only Shopify’s. That is not a failed custom rate. That is a zone without the carrier.

What “custom” means here

Shipping rates: create an app zone, build the canvas (`Start when…`, conditions, rate cards, reconnect, save), set pricing.

Names. The checkout line is your label, not necessarily “Standard shipping”. Hide/rename/reorder of *existing* methods is the other canvas (delivery customization). The rates flow draws *new* calculated lines. Do not brief a colleague as if those two canvases were one button.

Math. Docs pricing bases: fixed; cart total; cart weight; cart quantity; cart volume; cart dimensional weight (L/W/H metafields + divisor, commonly 5000 for cm/kg). Percentage or threshold discounts on amount, weight, or quantity. Minimums and handling fees as on the listing.

Conditions (40+). Destination (country/province/postcode), origin, time (date/day/time in shop-local), checkout locale, cart metrics, products (name/SKU/vendor/tags/collections/variants/metafields/price/weight/dimensions). Tags, collections, and metafields load through the Admin API at rate time.

Combined rates. Merge several zone rates into one checkout line, with a discount or markup.

AI. Build with AI / Edit with AI produces a draft. You review before save. Nothing goes live on its own.

Activity logs keep 7 days of carrier requests — which zone/rate, why not. That is the debug instead of “checkout says shipping is unavailable”.

What shops try until custom never shows

Renamed Shopify flats. A friendly label is not a formula. No weight tiers, no postcode, no dimensional weight.

Weight tables in the Shopify zone. Better. Still no product tag, no “combine two components”, no visual reconnect.

Scripts or a Plus-only checkout app just to hide a method. Unnecessary for delivery customization on more plans, and not the same as custom *calculated* rates. Those need Advanced/dev/Plus (or an already-active carrier).

None of that is: app zone, canvas, your service name, a pricing base, conditions, carrier on every market, a test, a log.

Walkthrough: “Courier up to 10 kg”

“Box & Dune” wants:

  • Inland: €6.95 up to 2 kg, then per kg, cap 10 kg — label Courier up to 10 kg.

  • Remote postcodes: a different rate, or Courier hidden.

  • Over €75: a threshold on the same rate, not a second Shopify zone named “free inland”.

Path:

  1. Confirm the plan. Calculated carrier rates: Advanced or a development store. Only renaming existing carrier lines: delivery canvas, available on more plans.

  2. Install OO - Shipping Rates & Rules. Finish the checklist.

  3. App zone for the country. Visual flow: `Start when…` that destination. Condition: postcode not in the remote list. Rate card: name Courier up to 10 kg, pricing on cart weight, tiers + minimum, optional threshold on cart total.

  4. Second branch or second rate for remote postcodes, *or* a delivery rule that hides Courier there. Two canvases; one card does not do both unless you built it that way.

  5. Attach carrier OO - Shipping Rate & Rules to the Shopify zone/market.

  6. Test checkout: 1.2 kg inland at €6.95; 4 kg higher; remote on the other path; €80 cart with the threshold. Read 7-day logs for why a rate appeared or did not.

  7. AI may draft the first flow. Review every condition. Save after checkout matches.

Dimensional weight only works if L/W/H metafields and the divisor live in Settings. Without those fields, “per volume” is an empty claim. See Product dimensions & settings.

Use combined rates when “box + extra handling” should be one line with a markup. That is not the hide button.

Wrap-up

Custom shipping rates Shopify are your labels and your math on a carrier service, plus conditions native zones lack. Advanced (or dev/Plus) for those calculated rates. Hide/rename on more plans. Free on the listing, 0 reviews.

Build the flow in OO - Shipping Rates & Rules, attach the carrier in every zone, and use the logs to see why checkout shows Courier — or correctly leaves it out.

online origins logo full

The Shopify Select partner for ambitious e-commerce businesses that want to grow!

linkedin online origins iconinstagram online origins icon

Reviews

5/5

Check on Google

Mail: info@onlineorigins.nl

Tel: 073 234 0612

KVK: 89825624

BTW: NL865123639B01

Bruistensingel 500,
5232 AH 's-Hertogenbosch
Cookies

© 2026 Online Origins