Why two rows sharing an id makes products vanish from Shopping, and how to build stable unique IDs for variants.
The id attribute is the primary key of your feed. When two rows
share one, Google doesn't merge them — it keeps whichever it saw last and
silently drops the other. Products disappear from Shopping
without ever showing a red error, which is what makes this one so expensive.
Where duplicates come from:
id; the shared value goes in item_group_id.sku-4471,
SKU-4471 and SKU-4471 are treated as the same ID.id and find collisions — after trimming whitespace and
lowercasing, or you'll miss half of them.SKU-4471-RED-M.item_group_id to the shared parent SKU on every variant so
Google still groups them correctly.id resets
that product's performance history and it re-enters review.id,item_group_id,title,size,color,price SKU-4471-RED-M,SKU-4471,Canvas Jacket,M,Red,89.00 USD SKU-4471-RED-L,SKU-4471,Canvas Jacket,L,Red,89.00 USD SKU-4471-BLU-M,SKU-4471,Canvas Jacket,M,Blue,89.00 USD
Merchant Center re-crawls a scheduled feed on its normal cadence, so a fix can sit invisible for up to 24 hours. To force it: Products → Feeds → your feed → Fetch now, then re-check Diagnostics the following day. Items usually flip back to Active within one or two crawls once the attribute validates.
FeedCheck Rescue — $29, one-off. Send your feed file and I run the auto-fixer over it, then send back a corrected file plus a plain-English changelog of every single edit, so you can see exactly what changed before you upload it.
Get FeedCheck Rescue — $29 Or try the free auditor