Shipping rates not showing at checkout › Some products only

Shopify checkout diagnostics

Shipping not available — but only for some products

Most of your store ships fine. One product, or one combination of products, does not: the buyer adds it, and checkout has nothing to offer. When the problem follows a product rather than an address, the cause is almost always in how that product is attached to your shipping settings.

Your cart has been updated and the items you added can't be shipped to your address. Remove the items to complete your order.

That is the message one merchant reported in the Shopify Community: each item went through on its own, and the error only appeared when the items were combined. Others see the plain “Shipping not available”. Either way, the address is fine. The product is the question.

Why shipping depends on the product

In Shopify, rates do not belong to the store. They belong to a shipping profile. Every store has a General profile, and every new product is added to it automatically. You can create custom profiles for products that need different rates, and a product or a single variant can be in only one profile at a time. Moving it to a new profile removes it from the old one.

Each profile has its own fulfilment locations, its own zones and its own rates. So a product in a custom profile only gets that profile's rates. If that profile has no zone covering the buyer's address, the product has no rate there — even though the General profile covers that address perfectly.

When a cart holds products from several profiles, Shopify works out a rate for each and combines them into one rate at checkout. Shopify's troubleshooting checklist asks you to confirm that products are in the right profiles and that rates exist for the zone containing the customer's address.

Find the product that breaks the cart

  1. Use one real address in the country that fails.
  2. Test each product of the failing cart alone. The one with no delivery option is your suspect.
  3. If every product works alone, test them in pairs. A failure that only appears in a mix points to combined rates: two profiles, or two locations.
  4. Open the suspect product in Settings → Shipping and delivery and find which profile it is in — check the variant too, not just the product.

The causes, one by one

A custom profile with no zone for this destination

The classic case: you created a profile for heavy or fragile items and gave it a zone for your own country only. Those products, and any cart containing them, cannot ship anywhere else. Add the missing zones and rates to that profile, or move the product back to General.

An app put the product in its own profile

Some fulfilment apps, such as print-on-demand apps, are added to your store as locations and can change your shipping settings. Apps can also create their own profiles, and Shopify warns that apps may overwrite rates you edit by hand. If the failing products are the ones an app imported, look at that app's profile first.

The stock is at a location with no rates

Rates are set per location group inside a profile. A location that is not in any group is listed under Not fulfilling from, and no rates apply to it. A location must also be active, have a valid address, and have its inventory available to fulfil online orders. For dropshipping apps, Shopify notes that a product can show as out of stock when the app's location has no rates.

This product's weight is wrong, or too heavy for the carrier

A product with no weight is treated as weightless, and weights are rounded up to whole grams. With flat weight tiers, a wrong weight gives a wrong price rather than no rate: when no tier matches, Shopify uses the next highest weight-based rate. With carrier-calculated rates, a product too heavy for the carrier's limits leaves the cart with nothing.

The carrier rejects this product's parcel

Carrier-calculated rates depend on weight, dimensions and the carrier's limits. An oversized product may get nothing while small ones get a price. More on carrier-calculated rates.

The opposite symptom: no shipping charged at all

Shopify gives no shipping rates to products that are not marked as physical. If one product checks out with no shipping step, see whether “This is a physical product” was unticked during an edit.

On market-driven shipping

On stores using shipping options by market, shipping profiles are replaced. Rates inside a market's shipping option carry product conditions instead: all products, or specific collections. The upgrade turns your custom profiles into unpublished collections named with a [Shipping] prefix. A product left out of the collection a rate depends on will not get that rate.

What our store check covers, honestly

The free store check tests one product at a time: one unit, an anonymous buyer, one address per country. That makes it a quick way to run step 2 above — paste the URL of the suspect product and see, country by country, whether it gets a delivery option on its own. It also separates “Not for sale here” from “No delivery option”, which are different problems.

It does not test mixed carts, and it cannot see your admin, so it will not tell you which profile a product is in. Monitoring watches the products you choose — your newest or app-imported ones are good candidates — and emails you when one stops getting shipping in a country.


Related

Sources: Shopify Help Center, “Shipping profiles”, “Setting up and managing shipping profiles”, “Managing fulfillment locations in shipping profiles”, “Calculating shipping rates from different shipping profiles”, “Troubleshooting and testing shipping rates”, “Understanding shipping options by market” and “Upgrading to shipping options by market”, checked 12 October 2026. Merchant report from the Shopify Community.