How to Fix “Invalid value [custom_label]” in Google Merchant Center
Custom labels are free-form, but Google enforces a 100-character limit and a single value per label. Concatenated or high-cardinality values make the labels useless for bidding.
Scan your feed for this error for free
Paste your product feed URL (XML, CSV or JSON). The audit checks Invalid value [custom_label_0-4] along with 25+ other pre-channel rules.
Why this happens
Technical root cause
Labels are usually generated by string concatenation in the export template, so they inherit every tag on the product and explode into hundreds of unique values.
Google Merchant Center reports it as Invalid value [custom_label_0-4] and applies: Broken campaign segmentation and unusable bidding buckets.
Native CMS friction
Shopify
Tag lists are exported joined by commas into a single label, exceeding the limit and creating one bucket per product.
VTEX
Product specifications are multi-valued, so a specification-to-label mapping produces arrays where Google expects one value.
WooCommerce
Plugin templates concatenate meta fields with no length guard or deduplication.
Fixing it manually
- 1
Decide what each of the five labels means — margin band, seasonality, bestseller flag, stock depth, price tier.
- 2
Replace concatenated tag dumps with a single value per label.
- 3
Keep every value under 100 characters and keep the number of distinct values low enough to bid on.
- 4
Document the label scheme so campaign structure and feed stay in sync.
- 5
Re-upload and rebuild the campaign segments on the clean values.
The IRONFEED automated solution
One rule, applied to every product on every export. No spreadsheets, no re-uploads.
IF price > 100 THEN SET custom_label_0 = 'high_margin'
ELSE IF price > 40 THEN SET custom_label_0 = 'mid_margin'
ELSE SET custom_label_0 = 'entry'Run automatic linter checks before Google Merchant Center crawls your feed. IRONFEED validates every export against the channel spec, so this error is caught in Feed Review instead of in your channel dashboard.
Attribute requirements
| Attribute | Google Merchant Center requirement | Accepted format | IRONFEED transformation |
|---|---|---|---|
custom_label_0-4 | Optional, five slots | One value per label, up to 100 characters | Rule-based bucketing from price, margin, stock and seasonality |
Frequently asked questions
Related Feed Issues & Fixes
Other critical errors affecting catalog performance on Google, Meta, TikTok, and Mercado Libre.
Missing value [color] / [size] / [age_group] / [gender]
Variant options are free-text in every storefront. One catalog has Colour, another Color, a third stores the shade inside the title, and none of them carry age_group or gender at all.
View Fix & RuleMissing value [google_product_category]
Your internal category tree is built for navigation, not for Google's 5,000-node taxonomy. Nothing in a storefront maps one to the other automatically.
View Fix & RuleCombinación de variantes no válida para la categoría
Store catalogs allow arbitrary option names such as material, flavour or pack size. Mercado Libre rejects axes its category does not define, and it also rejects two variants that resolve to the same combination.
View Fix & RuleLooking for a different error?