Short answer: Your Shopify discount code works on your store, but Google's AI agents read a different system: the Google Merchant Center Promotions feed. If your promotion isn't there, it's invisible to Universal Cart, Direct Offers, and AI Mode shopping — even if it's fully active on your storefront.
This is a common problem, and it costs merchants real revenue. Here's why it happens and how to fix it.
For the broader picture of why this matters for your business — AI traffic trends, conversion lifts, and what Google's agentic commerce launch means for Shopify merchants — see Google Agentic Commerce: What Shopify Merchants Need to Do Now.
Two Separate Systems
Shopify and Google don't share promotional data. This isn't a bug. It's by design.
Shopify's discount system is storefront-only. When you create a discount code in Shopify admin, the system validates the code at checkout, displays it on your theme, tracks usage and revenue, and manages activation and expiry. This works perfectly for customers who land on your store and use the code at checkout.
Google Merchant Center's Promotions feed is a separate system entirely. It has its own submission process, its own formatting requirements, its own policy review, and its own expiry management — none of which is connected to Shopify. If a promotion isn't in the Promotions feed, Google's AI can't see it, even if it's active on your Shopify store.
The two systems don't communicate. Google's agents read your product feed (which lists your base prices and product details) and your Promotions feed (which lists discounts you've manually added). If a promotion isn't in the Promotions feed, Google's AI can't see it.
Why This Matters: The Three AI Shopping Surfaces
93% of AI Mode queries produce zero outbound clicks to any external site — meaning shoppers research and increasingly complete purchases entirely within the AI interface. If your promotion isn't in the Promotions feed, Google's agents can't surface it, and you're priced uncompetitively against merchants who have synced theirs.
Universal Cart shows your products and any active promotions when a shopper is price-hunting across Google's ecosystem. If your promotion is in the Promotions feed, Universal Cart will surface it. If not, shoppers see your base price, not your sale price.
Direct Offers appears in Google's AI Mode at the moment a shopper is about to buy. It shows discounts to drive conversion. Only promotions in the Promotions feed qualify. A promotion running on your Shopify store doesn't appear here.
Universal Commerce Protocol (UCP) lets AI agents read your catalog, apply discounts, and help shoppers complete checkout without leaving the AI interface. The discount application depends on the Promotions feed. If a promotion isn't there, the agent can't use it.
How to Get Your Shopify Discount Into the GMC Promotions Feed (Manual Path)
Step 1: Create or Identify Your Shopify Discount
Go to Shopify admin > Discounts. You'll need the discount type, value, applicable products, discount code (if any), start and end dates, and usage limits.
Step 2: Go to Google Merchant Center and Navigate to Promotions
Open Google Merchant Center, select the relevant country (Promotions feeds are country-specific), and go to the Promotions section in the left navigation. If this is your first time, you may need to set up a promotions data source first.
Step 3: Re-Enter All the Promotion Details
This is the step that breaks down for most merchants. You have to manually re-enter everything you just set up in Shopify: a unique ID for the promotion, the title shoppers will see, which products it applies to, the discount type and value, the coupon code (if any), the start and end times in a specific date format, and whether it applies online, in-store, or both.
Every field has to match Google's exact formatting requirements. Dates need timezone offsets. Product targeting uses Google's feed IDs, not Shopify handles. If anything is off, the submission gets rejected and you start over. The full spec is in Google's documentation if you want the details. The point is simpler: it's everything you already entered in Shopify, entered again, in a different format, in a different system. That duplication is the core problem.
Step 4: Submit and Wait for Google's Review
Once you've entered all the details, submit the promotion. Google validates it against their promotions policies: the discount needs to be genuine, the expiry clear, and the products eligible. Common rejection reasons are formatting errors, missing end dates, and discount values that don't match what's on the product page.
Google recommends submitting at least 24 hours before your promotion's effective start time. The review typically completes within 12 hours of that start time, but can take up to 24 hours. Policy review happens during weekday business hours, so a Friday evening submission may not begin until Monday — worth building into your launch timeline.
During this time, the promotion sits in "Under review" status. Shoppers in Universal Cart or Direct Offers don't see it yet.
Step 5: Fix Disapprovals and Resubmit if Needed
If Google disapproves the submission, you'll get an error message. Fix the issue and resubmit — this adds time to the cycle. Common causes: misformatted dates, product IDs that don't match your feed, and promotion text that's ambiguous or misleading.
Step 6: When the Shopify Discount Changes, Update GMC Too
Your Shopify discount has an end date. The GMC Promotion will expire based on the end date you set when you created it — but if you later extend, shorten, or cancel your Shopify discount, the GMC entry doesn't update automatically. You need to log into Merchant Center and update it separately.
If you forget, the promotion stays visible in Universal Cart and Direct Offers even though the discount code no longer works on your store. That creates a customer support problem and erodes trust.
Why Manual Sync Is Unsustainable
For a merchant running a single promotion every few months, this process is painful but survivable. For a merchant running 2-4 promotions per month, it becomes a scaling problem.
Re-entering everything by hand takes time — and copy-paste errors happen. A mismatch between what shoppers see in AI Mode and what actually applies at checkout creates confusion. Spontaneous deals are risky because of the 24-48 hour window between submission and approval. And every change in Shopify requires a parallel update in GMC.
Most merchants abandon the manual sync after one or two cycles. The operational overhead isn't worth the visibility in Google AI shopping.
The Sustainable Fix: Automated Promotion Sync
The solution is a tool that syncs your Shopify promotions to the GMC Promotions feed automatically, without re-entry. It should read your Shopify discount when you create it, format and submit it to GMC, monitor for disapprovals, sync expiry dates automatically, and surface any rejections clearly so you can fix them quickly.
With this setup, you create a discount in Shopify once and it's simultaneously visible to Universal Cart, Direct Offers, and AI Mode. No re-entry. No missed expirations. No separate system to maintain.
We're building exactly this into PromoOS — our Shopify promotion management app. Automated GMC sync is on our near-term roadmap. If that's the kind of tool you're looking for, take a look.
Checking If Your Promotion Is in GMC
Go to Google Merchant Center > Promotions > All Promotions. Each promotion will show one of four status labels:
- Under review: submitted but not yet checked — not visible to AI shoppers yet
- Visible: approved and currently active — shoppers can see it in Universal Cart and Direct Offers
- Ended: manually stopped or past its end date
- Disapproved: rejected by Google's policy review — requires fixing and resubmission before it goes live
If a promotion shows "Under review" or "Disapproved," it's not visible to AI shoppers yet. "Visible" means it is.
Key Takeaways
Shopify discounts are storefront-only and don't sync to Google Merchant Center automatically. Google AI shopping surfaces — Universal Cart, Direct Offers, AI Mode — read the GMC Promotions feed, not your Shopify discounts. Manual re-entry works for one or two promotions, but doesn't scale for merchants running regular campaigns. Automated sync is the only sustainable path.
If your promotions aren't in the GMC Promotions feed, you're invisible to AI agents and missing revenue. The fix is straightforward, but it has to be automated to scale.
