Why did my shipping rates just vanish at checkout when nothing changed?
Shipping worked fine for months, then rates quietly disappeared at checkout with no error and no obvious cause — here's how to find what actually changed.
What's going on
A store's shipping had been working correctly for months, then customers started hitting checkout with no shipping options at all, or with only some destinations showing rates. Nothing in the shipping settings looked obviously wrong at a glance, and no error message pointed to a cause — the rates just weren't there anymore for orders that used to calculate fine.
This kind of regression is deceptive because Shopify's shipping setup has several layers that interact silently: shipping profiles (which products and locations a rate structure applies to), zones within each profile (which countries/regions get which rates), Shopify Markets (which can scope shipping differently per region), delivery customizations (Shopify Functions that can hide or alter rates based on conditions), and any third-party rate or carrier-calculation app. A change in any one layer — a product moved to a different profile, a location edited, a market's country list changed, an app losing API access — can make rates disappear for a subset of orders without throwing a visible error anywhere in the admin.
Because the failure is silent, the fastest path to a fix is comparing today's configuration against what was in place the last time shipping worked correctly, rather than guessing at a single setting.
Why it happens
Shipping rate coverage in Shopify is the product of several settings intersecting at once: which shipping profile a product belongs to, which locations that profile ships from, which zones are defined inside that profile, and whether any delivery customization or app is filtering the results at checkout. Any edit that touches one of these — adding a product, editing a location's address, changing a market's country list, an app update, or an expired carrier API credential — can remove rate coverage for a specific destination while leaving every other destination working normally, which is exactly the kind of change that's easy to miss and hard to spot after the fact.
Because Shopify doesn't warn merchants when a zone or profile stops fully covering their catalog or their customer base, these regressions usually surface only when a real customer hits an empty shipping step — often reported first as screenshots in support tickets or community forum posts rather than caught proactively.
5 ways to fix it
Diff your shipping profiles against the last known-good state
Go to Settings > Shipping and delivery and open every shipping profile, not just General. Each profile lists which products it covers, which locations ship from it, and which zones (with their own rates) apply. The most common cause of a sudden, otherwise-unexplained rate disappearance is that a product was added, edited, or re-tagged in a way that moved it into a custom shipping profile (or out of one), and that profile's zones don't fully cover the country/region the customer is checking out from. Walk through: which products changed recently, which profile they now sit in, and whether that profile has a zone with a rate for that destination. Also check whether a fulfillment location was added, archived, or had its address edited — zones are tied to origin locations, and deactivating or moving one can silently drop coverage for zones that pointed at it.
Check for a delivery customization or checkout rule quietly filtering rates
Under Settings > Shipping and delivery > Customizations (or via any Shopify Function-based delivery customization app), merchants can hide, rename, or reorder shipping options based on cart contents, destination, or other conditions. These run at checkout and won't show up as an error anywhere — they just make rates disappear for orders that match their condition. If one was added or edited around the time the problem started, disable it temporarily and re-test checkout to confirm whether it's the culprit.
Check Shopify Markets configuration if you sell internationally
If shipping rates are scoped to a market (Settings > Markets), changing a market's included countries, currency, or web presence can orphan rates that were previously tied to the old configuration. Confirm the market that covers the affected customer's country still points at a shipping profile with valid zones and rates.
Verify carrier-calculated shipping is still authenticated
If you use real-time carrier rates (Shopify Shipping's connected carrier accounts, or your own UPS/FedEx/USPS/Canada Post account), those rates depend on a live API connection. Expired credentials, an account suspension, or a carrier-side outage will make rates vanish from checkout with no visible error to the merchant. Re-authenticate the carrier account or check the carrier's own dashboard for account status, then test a checkout again.
Isolate any shipping rate app by disabling it temporarily
If a third-party app injects custom shipping rates (real-time quotes, rate blending, free-shipping thresholds), check the app's status and logs first. Apps can silently lose API access after a token expires, hit an external rate-limit, or change behavior after an update. Temporarily disabling the app and checking whether Shopify's native rates reappear is the fastest way to confirm whether the app or the native configuration is at fault.
Bottom line
Most "shipping just stopped working" reports trace back to a small, undocumented change — a product landing in the wrong shipping profile, a location or market edit that orphaned a zone, or a delivery customization/app losing its connection — rather than a Shopify-wide bug. Working systematically through profiles, zones, markets, and any connected apps (checking each against what was in place when shipping last worked) resolves the vast majority of cases without needing new software; only add a rate-management app if you've confirmed native profiles and zones genuinely can't express the shipping logic you need.
Browse the rest of the problem library, run a free storefront scan to catch issues like this automatically, or email us and we'll work out a custom solution for it.