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 as | Text too long [id] |
|---|---|
| Attribute | id |
| Effect | Product disapproved |
| Where to find it | Products → Needs attention, then filter by this issue |
| Free check | Not 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
- The URL used as id, which is unique and stable but far over 50 characters.
- The title used as id, or a concatenation of title and options.
- Composite ids built from several codes joined with separators.
- Hashes or UUIDs with prefixes that push past the limit.
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
- ID [id] — Google Merchant Center Help
- Product issues (Content API for Shopping): the issue codes and the titles Merchant Center shows — Google Merchant Center Help