The attributes every product feed must include, the conditional ones that trigger disapprovals, and how to spot blank cells at scale.
Every item needs this baseline, or it won't serve at all:
| Attribute | Notes |
|---|---|
id | Unique, stable, max 50 characters |
title | Max 150 chars; no ALL CAPS or promo text |
description | Max 5,000 chars; no HTML, no links |
link | HTTPS, resolves to the product page |
image_link | Crawlable, ≥100×100 |
availability | One of the four valid values |
price | NNN.NN CUR |
brand | Required unless genuinely unbranded |
condition | Required if not new |
Then the conditional ones that catch people out: apparel needs
age_group, gender, color and
size. Variants need item_group_id. Anything without a
barcode needs identifier_exists = no together with
brand and mpn.
identifier_exists = no anywhere you legitimately have no
GTIN, rather than leaving the field blank.image link and Image_Link are not
image_link, and a mistyped header reads as the whole column being
missing.A wrong header is the sneakiest version of this error: the data is right there, but every row reports the attribute as missing.
id,title,description,link,image_link,availability,price,brand,condition,identifier_exists,mpn SKU-4472,Hand-thrown Stoneware Mug 350ml,Wheel-thrown stoneware mug with a matte glaze.,https://example.com/p/4472,https://cdn.example.com/img/4472.jpg,in_stock,24.00 USD,Fieldstone,new,no,FS-MUG-01
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