Skip to content
Guide Charles ReedUpdated 11 min

Shipping Config Mistakes That Disapprove Shopping Ads (2026)

5 shipping configuration mistakes that disapprove Google Shopping products. The fixes, the platform-specific gotchas, and how Google detects each one.

Shipping Config Mistakes That Disapprove Shopping Ads (2026)
On this page7 sections
+
  1. 01Why shipping matters more than you think
  2. 02Mistake 1: GMC shipping doesn't match checkout
  3. 03Mistake 2: No shipping for a target country
  4. 04Mistake 3: Free shipping threshold mismatch
  5. 05Mistake 4: Delivery time too vague or missing
  6. 06Mistake 5: Return shipping not declared
  7. 07Platform-specific gotchas

Shipping configuration in Google Merchant Center is the set of rules that tell Google how much to charge for delivery, where you ship to, how long delivery takes, and what your return policy is. Mismatches between these rules and your actual checkout are one of the most common disapproval causes, and Google now actively simulates checkout to detect them. This article covers the 5 mistakes we see most often in audits and how each one trips up Google's automated checks.

Why shipping matters more than you think

Shipping costs are part of the shopper's total price. When the feed says $9.99 shipping but checkout charges $12.99, the shopper feels deceived. Google enforces this aggressively because shipping deception is one of the highest-complaint categories. Beyond direct disapprovals, shipping configuration affects:

  • Shopping ad ranking. Stores with accurate, declared shipping outrank stores with vague or missing shipping data, all else equal.
  • PMax landing-page eligibility. Performance Max specifically checks for shipping clarity on the product page itself, not just in feed config.
  • Return-policy badge eligibility. Stores with declared free or extended returns get a return badge on Shopping listings, which boosts CTR.

Mistake 1: GMC shipping doesn't match checkout

What happens: Merchant Center is configured for $5.99 flat-rate shipping. Your Shopify checkout applies a calculated rate based on weight, which comes out to $7.89 for the test product. Google's checkout simulator notices, and products disapprove for "shipping cost mismatch."

Why it happens: stores set up flat-rate shipping in GMC during initial onboarding but later switch to weight-based or carrier-calculated shipping in Shopify without updating GMC.

Fix: match the shipping logic. Either configure weight/dimension-based rules in GMC to mirror your platform, or enable automatic shipping sync from Shopify/Woo so GMC always reflects the current rates.

Mistake 2: No shipping configured for a target country

What happens: products appear in the feed targeting the UK, but no UK shipping service exists in Merchant Center. Every UK product disapproves with "No shipping rate available."

Why it happens: stores expand to new countries by adding the country in feed config but forget to set up shipping rules.

Fix: for every target country, add at least one shipping service (Settings → Shipping and returns → Add shipping service). Even free shipping needs an explicit zero-rate service.

Mistake 3: Free shipping threshold mismatch

What happens: your site banner says "Free shipping over $50". Merchant Center has free shipping configured at $75. Shopper buys a $52 item, sees a shipping charge at checkout, complains to Google. Disapproval fires.

Why it happens: threshold changes get updated on the site (theme banner, policy page) but not in Merchant Center. Threshold A/B tests amplify this risk.

Fix: when threshold changes, update Merchant Center within the same release. Avoid running A/B tests on shipping thresholds unless Merchant Center can match.

Mistake 4: Delivery time too vague or missing

What happens: Merchant Center says "Standard shipping" with no delivery time. Your shipping service emits a date estimate at checkout. PMax penalizes the missing delivery time and downranks the products in PMax-eligible inventory.

Why it happens: stores configure flat-rate shipping without populating min_transit_time and max_transit_time [2].

Fix: populate transit time on every shipping service. Realistic ranges: standard 3-7 days, express 1-3 days, same-day 0-1 days. Add transit time in business days or calendar days consistent with what you tell shoppers.

Mistake 5: Return shipping not declared

What happens: your returns page says "30-day returns" but does not specify who pays for return shipping. Google's PMax checks fail because return shipping is not declared either as structured data or as visible product-page text.

Why it happens: stores treat returns as a single policy page rather than per-product information. Google needs the data on the product page or in feed structured data.

Fix: declare return shipping responsibility (merchant pays / customer pays / free returns) on every product page. Either add to the structured Product schema's hasMerchantReturnPolicy field [3], or include visible text on the page.

Platform-specific gotchas

Shopify

The Google & YouTube channel auto-syncs Shopify shipping zones to Merchant Center. Failure modes: complex carrier-calculated rates do not sync cleanly; per-product weight overrides confuse the simulator; multi-currency stores often have shipping configured per market in Shopify but only one set of rules synced to Merchant Center.

WooCommerce

Google Listings & Ads plugin syncs flat-rate zones reliably but stumbles on tiered shipping (e.g., $5 up to 2kg, $10 over 2kg). For tiered shipping, configure the tiers in Merchant Center directly rather than relying on sync.

Custom builds

Use the shipping feed attribute for per-product overrides. For complex rules (dimensional weight, hazmat surcharges, location-based pickup), set up account-level shipping in Merchant Center and only override at product level for genuine exceptions.

Check shipping configuration across your catalog

Free FeedShield audit. Verifies shipping rate parity, threshold consistency, return policy declaration, and transit time clarity.

Run free audit

Bottom line

Shipping disapprovals are mechanical: Google compares what the feed says, what your policy page says, and what your checkout charges. Any disagreement is a flag. Fix the agreement once, monitor it after every shipping-rate change, and disapprovals from this category stop appearing.

Frequently asked questions

Does Google verify shipping rates against my actual checkout?+
Yes. Google runs automated checkout simulations on a sample of products, especially for new GMC accounts and after any significant feed change. The simulation adds a product to cart, proceeds to checkout, and reads the displayed shipping cost. If it does not match the rate configured in Merchant Center, products get disapproved for shipping mismatch.
How exact does the shipping cost match need to be?+
Within a few cents tolerance for the same shipping method. Different methods (standard vs express) need separate entries in Merchant Center if you want to use both. Same-day delivery and pickup-in-store are configured separately and not part of the standard rate-match check.
What if I offer free shipping over a threshold?+
Set the threshold in both Merchant Center (Settings → Shipping and returns → Free shipping conditions) and in your site shipping policy. The threshold values must match. If site says 'free over $50' and Merchant Center says 'free over $75', that is a hard disapproval.
Do I need to declare expected delivery times?+
For Performance Max campaigns, yes. For standard Shopping, recommended but not strictly required. Delivery time visibility improves CTR and is increasingly weighted by Google's PMax landing-page checks.
How is return shipping different from return policy?+
Return policy = the rules (window length, accepted reasons, refund vs exchange). Return shipping = who pays for the package back (you, customer, or split). Both need to be declared. Google looks for return-window declaration on every product page, separately from the policy page.
Can I configure shipping per product or only per account?+
Both. Account-level shipping (Settings → Shipping and returns) handles defaults. Product-level overrides use the <code>shipping</code> attribute in the feed (with sub-attributes country, region, service, price). Use product-level for oversized/heavy items or shipping-restricted SKUs.

Sources & further reading

References cited inline as [1], [2], etc.

  1. [1]Shipping setup in Merchant CenterGoogle Merchant Center Help (2025-12-12)
  2. [2]Shipping attributeGoogle Merchant Center Help (2026-01-20)
  3. [3]Return policy requirementsGoogle Merchant Center Help (2026-01-20)
  4. [4]Landing page experience (PMax)Google Merchant Center Help (2026-03-01)
Written by
Charles Reed
Compliance research lead

Charles leads compliance research at FeedShield. He tracks Google Merchant Center policy updates, turns them into audit rules inside the FeedShield ComplianceIQ engine, and writes the step-by-step recovery guides used by agencies and merchants appealing suspensions. His coverage focuses on the practical fixes that move accounts from disapproved to reinstated.

Related reading

Check your store's GMC compliance

Automated audit with 250+ compliance checks across 27 categories. Free, no credit card.