How it works Features Pricing Guides User Guide Add to BigCommerce
BigCommerce × Google Shopping

How to sync BigCommerce product variants to Google Shopping

Variants are where most BigCommerce feeds go wrong. Here's how to send each option as its own offer, grouped correctly with item_group_id.

Level: IntermediateTime: ~9 min readUpdated: 2026

A BigCommerce product with three colors and four sizes isn't one Google Shopping item, it's up to twelve. Sending variants correctly means a shopper searching "black, medium" sees exactly that, with the right price and stock.

Why variants matter on Google Shopping

Google shows individual variants. If you send only the parent product, shoppers may see an out-of-stock color or the wrong price, and you miss long-tail searches that include a specific color or size. Sending each variant as its own offer captures that intent and keeps availability accurate.

item_group_id, explained simply

Every variant offer carries the same item_group_id (the parent product's id). This tells Google "these offers are the same product in different options". Each offer still has its own unique id, price, availability and identifiers. Google uses the group to consolidate reviews and present variants cleanly.

Rule of thumb: shared item_group_id, unique id per variant. Mixing these up is the most common variant feed error.

Per-variant attributes

  • id — unique per variant (often the variant SKU or offer id).
  • price & availability — the variant's own price and stock, not the parent's.
  • color, size, pattern, material — the distinguishing options.
  • gtin — the variant's barcode where it exists.
  • gender & age_group — required for apparel.
  • image_link — ideally the image for that specific color.

Common variant pitfalls

  • Sending only the parent product, so individual options never appear.
  • Reusing the parent price for every variant when variants are priced differently.
  • Duplicate ids across variants, which causes Google to drop offers.
  • Missing color/size on apparel, which limits or disapproves the items.

The Google Shopping Feed app handles all of this from your BigCommerce variant structure automatically: it emits one offer per variant with the correct item_group_id, per-variant price, identifiers and availability, and keeps them in sync. To get started, see connecting to Merchant Center and the full feed setup guide.

Frequently asked questions

Should each variant be a separate Google Shopping product?
Yes, each buyable variant should be its own offer with a unique id, price, GTIN and availability, linked by a shared item_group_id.
What is item_group_id used for?
It groups all variants of one product so Google can show the exact option searched for while knowing they're the same parent product.
Do variants need their own GTIN?
Where they exist, yes. If a variant has none, provide brand and MPN and set identifier_exists accordingly.

Ready to automate this? The Google Shopping Feed app connects your BigCommerce store to Google Merchant Center and keeps every product, variant and price in sync automatically. Add it to BigCommerce →