Why is Google Merchant Center showing missing shipping info for some countries but not others?
Products can get disapproved or lose shipping data in Google Merchant Center for specific countries when Shopify Markets, shipping zones, and Merchant Center settings fall out of sync.
What's going on
You've got products live and approved in Google Merchant Center for most countries, but for a handful of them — maybe a market you just added, maybe one you've sold into for months — Google is flagging missing or invalid shipping information, or the listings simply aren't showing shipping costs at all. Everything looks fine on your actual storefront checkout for that country, which makes the Merchant Center error confusing: the rates clearly exist somewhere, they're just not making it into the feed.
This is a recurring complaint among merchants using Shopify's native Google & YouTube sales channel, and it tends to surface right after adding a new country to Shopify Markets, switching shipping rate providers, or turning on carrier-calculated or app-based shipping for certain destinations. The result is inconsistent: some countries sync perfectly, others quietly fall through the cracks, and Merchant Center's own diagnostics don't always make the root cause obvious.
Why it happens
Shopify's Google & YouTube channel app generates its product feed — including shipping data — from your active Shopify Markets and your configured shipping zones and rates. It isn't reading your checkout's live calculated price for every possible destination; it's reading the static shipping rules you've set up in Settings > Shipping and delivery, mapped against the countries you've explicitly activated as markets. If a country isn't an active market, or has no explicit rate in a shipping zone, there's simply no data for the app to pass along to Merchant Center for that destination.
This gets worse wherever your real-world shipping cost is dynamic rather than a stored rule — carrier-calculated rates, third-party rate-shopping apps, or Shopify Functions that compute a price at checkout time. Those numbers typically aren't visible to the static feed sync at all, so even though customers see a correct shipping cost in checkout, Google never receives a value for it and treats the listing as missing shipping information for that country.
Google Merchant Center also maintains its own separate shipping settings and target-country list, which can drift out of alignment with Shopify's side over time — especially as markets are added, removed, or renamed, or as the Google & YouTube app's own country selection isn't revisited after initial setup.
5 ways to fix it
Start with Shopify Markets, not Merchant Center
Open Settings > Markets and confirm every country you want to advertise to is set up as an active market with a defined currency and, ideally, its own domain/subfolder or pricing. The Google & YouTube channel app builds its product feed and shipping data off your active markets — a country that isn't a market in Shopify effectively doesn't exist to the Google sync, no matter what you've configured inside Merchant Center itself.
Confirm you actually have shipping rates for that zone
In Settings > Shipping and delivery, check whether the country in question is covered by a shipping zone with real rates (flat, weight-based, or calculated). If a country falls into a catch-all "Rest of World" zone with no rate, or isn't in any zone at all, Shopify has nothing to hand off to Google for that destination, which shows up as missing or disapproved shipping data in Merchant Center.
Check for shipping logic Shopify can't see
If you use a third-party shipping rate app, carrier-calculated rates, or Shopify Functions to generate rates at checkout, those numbers are often computed live and aren't stored as static rules the Google & YouTube app can read. For any country where your real shipping cost depends on this kind of app, the sync will typically have nothing to report — this is a common cause of the gap even when your storefront checkout shows correct rates.
Set shipping manually in Merchant Center as a fallback
Google Merchant Center lets you define shipping settings directly (Growth > Shipping and returns) per target country/service, independent of any Shopify sync. For countries where automatic sync is unreliable or incomplete — especially with app-based or carrier rates — manually configuring a shipping service in Merchant Center for those countries is the most direct fix and takes precedence for feed purposes.
Re-check your Google & YouTube app's target countries and re-sync
In the Google & YouTube app settings, review which countries/markets are selected for the sales channel and make sure they match both your Shopify Markets and your Merchant Center target countries. Mismatches here (e.g. a market added after the app was first configured) are a frequent reason certain countries silently stop getting shipping data — removing and re-adding the market, or manually triggering a re-sync, often resolves it.
Bottom line
Most of the time this is a configuration mismatch between three places that all need to agree — Shopify Markets, your shipping zones, and Merchant Center's target countries — rather than a bug in any one of them. Work through them in that order before assuming Google is at fault. If your shipping is genuinely calculated dynamically (carrier rates, rate-shopping apps), expect to maintain shipping settings manually in Merchant Center for those countries regardless of what you fix on the Shopify side — this is a case where a general shipping/rates app doesn't directly solve a Google feed sync gap, so a manual Merchant Center fix is the realistic answer.
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.