Overview
This case study covers a Google Merchant Center issue I encountered on my client's Shopify Hydrogen site, where product URLs in Google's feed didn't quite match the URLs being served by the live storefront.
The result wasn't great; we had product disapprovals and Merchant Center warnings that needed resolving ASAP before products could be surfaced correctly in Google Shopping.
The Problem
Google Merchant Center was flagging product URL mismatches across the catalogue.
-
For example:
- • Feed URL: my-store.myshopify.com/products/product-name
- • Live URL: mystore.com/products/product-name
- • Result: Merchant Center mismatch errors
Because the domains didn't match, products were being disapproved and reporting in Merchant Center became unreliable.
Root Cause
The issue stemmed from how Shopify handles domains when using a headless Hydrogen storefront. Shopify doesn't actually allow the same domain to be used simultaneously by both the Hydrogen storefront and the Online Store channel that's used internally by Shopify for things like feeds and integrations.
This meant Shopify was generating product URLs using one domain whilst customers were browsing products on another.
The Solution
The fix wasn't purchasing another domain or creating a custom feed. Instead, I created a dedicated subdomain for Shopify's Online Store and allowed Hydrogen to continue using the primary domain.
This ensured both systems remained under the same root domain whilst avoiding Shopify's domain conflict restrictions.
Implementation
1) Create a subdomain via your provider
- I created a dedicated subdomain: checkout.my-store.com
2) Update DNS
- Within the DNS provider, I added a CNAME record pointing the new subdomain to Shopify: checkout → shops.myshopify.com
3) Connect the domain in Shopify
Once connected inside Shopify Admin, the new subdomain was assigned as the primary domain for the Online Store channel.
4) Leave Hydrogen on the primary domain
The Hydrogen storefront continued serving customers via the main domain whilst Shopify's internal systems used the subdomain.
SEO Considerations
One concern was ensuring there wasn't any SEO impact from introducing a secondary domain. But as the new domain was a subdomain of the primary website and checkout pages aren't intended to rank in search engines, there was no negative SEO impact.
Product URLs generated by Shopify now sat under the same root domain, which resolved the Merchant Center mismatch warnings.
Feed Synchronisation
After the domain changes were made, Merchant Center didn't update instantly.
- • Shopify continued syncing via the Content API
- • No manual feed upload was required
- • Updates took several hours to appear
- • Full propagation takes up to 48 hours to complete
Once the feed refreshed, product URLs switched to the new domain structure and thankfully the mismatch errors disappeared!
Results
- ✓ Merchant Center mismatch errors resolved
- ✓ Product disapprovals removed
- ✓ Hydrogen storefront remained on the primary domain
- ✓ No SEO impact to the customer facing site
- ✓ Future feed management simplified
Key Takeaways
- • Don't use the same domain for both Hydrogen and the Online Store
- • Use a subdomain for Shopify's Online Store channel
- • Keep Hydrogen on the primary domain
- • Allow time for Merchant Center feeds to resynchronise
- • Verify URLs after the sync completes
