← All Merchant Center errors

Fix “Text too long [id]” in Google Merchant Center

Updated 20 September 2026 · 3 min read

Short answer. Merchant Center rejects a product with “Text too long [id]” when the id attribute exceeds 50 characters. Use a short, stable identifier such as the platform’s variant id or the SKU, not a URL or a title, and once set keep it the same across every upload, because Google ties the product’s history to it.

Shown in Merchant Center asText too long [id]
Attributeid
EffectProduct disapproved
Where to find itProducts → Needs attention, then filter by this issue
Free checkNot something a feed file shows; see below for what the check can tell you instead

What Merchant Center means by “Text too long [id]

The id specification allows 1 to 50 characters, unique per product, case sensitive, without whitespace, and unchanged over time. An id over the limit is reported by the Content API’s product issues list as text_value_too_long, “Text too long [id]”, and the row cannot be processed.

Because Google keeps a product’s history under its id, the fix has a cost the first time: shortened ids are new products. The point of the fix is therefore to choose an id you will never have to change again.

Why it happens

How to fix it

In Shopify

Use the variant id, which Shopify’s channel and our integration use by default: a short number that never changes for the life of the variant. If a feed app offers “handle” or “title” as the id, do not take it.

In WooCommerce

Our free plugin uses the variation’s (or product’s) post id, which is short and permanent. Another export that builds ids from slugs or SKUs with prefixes should be pointed at the post id instead.

In a CSV or XML feed

Replace the id column with a stable identifier under 50 characters, one per variant: a database id or a clean SKU. Do it once, accept that Google sees the products as new, and then keep the ids forever. Keep item_group_id consistent with the change so variants stay grouped.

How long until Merchant Center clears it

Rows with valid ids are processed on the next fetch and appear as new products, going through the usual initial review; allow 24–72 hours.

What FeedRobin does about it

The free feed check reads whatever id the file carries and reports duplicates; it does not currently flag ids over 50 characters, and the page says so rather than implying otherwise. For connected stores the id is the platform’s variant id, which is short by construction.

Questions merchants ask

What should the id be?

Something unique per variant, under 50 characters, that never changes: the platform’s variant id is ideal, a stable SKU is fine. Google also says the id is case sensitive and should not include whitespace.

If I shorten the ids, do I lose anything?

The products are treated as new: approval history and performance data start over. Do it once, then never again, which is the argument for a database id over anything a person might rename.

Can two feeds in one account use overlapping ids?

Within one target country the same id is the same product, and the later feed overwrites the earlier. Keep ids unique across everything you submit for a country.

Sources

Related errors

Reused value [id]Fix “Reused value [id]” in Google Merchant Center
Product disapproved
Missing value [item_group_id]Fix “Missing value [item_group_id]” in Merchant Center: variants shown separately
Product disapproved

Read next

WooCommerce Google Shopping feed: the complete setup guideWooCommerce doesn't generate a Google Shopping feed out of the box. How to create one, the Woo-specific traps — variable products, VAT prices, stale feeds — and how to keep it synced.
7 min
Google Shopping feed for Magento and PrestaShop: the setup guideMagento and PrestaShop don't export a Google Shopping feed. How to get a feed URL, map variants, barcodes and tax-inclusive prices, and keep it fresh.
9 min
Not sure what's wrong with your feed?Paste your feed URL and FeedRobin checks every product for missing barcodes, images, descriptions and more — free, no account needed.
Check my feed — it's free What it checks →