← All Commerce Manager errors

Fix “Invalid HTML” and “Disallowed HTML tags” in Meta Commerce Manager

Updated 20 September 2026 · 4 min read

Short answer. Commerce Manager reports “Invalid HTML”, “HTML attributes unsupported” or “Disallowed HTML tags” when a feed carries HTML outside rich_text_description or uses tags and attributes Meta does not support. Only p, b, i, ul and li are allowed, attributes such as style are removed, and rich text shows only in Shops, not ads; keep description as plain text and put formatted text, if you want it, in rich_text_description.

Shown in Commerce Manager asInvalid HTML, HTML attributes unsupported, Disallowed HTML tags
Attributerich_text_description
EffectWarning
Where to find itCatalog → Products → a product’s Status and issues; feed-level errors under Catalog → Data sources → Download issue report
Free checkNot something a feed file shows; see below for what the check can tell you instead

What Commerce Manager means by “Invalid HTML, HTML attributes unsupported, Disallowed HTML tags

Meta’s data feed troubleshooting page reserves HTML for one field: rich text is supported only in rich_text_description, only with the tags p, b, i, ul and li, and only in Shops on Facebook and Instagram, not in ads. Attributes such as style are removed, other tags are uploaded but do not render. The product data specification requires the plain description as a fallback even when rich text is provided.

Why it happens

How to fix it

In Shopify

Shopify descriptions are HTML; the channel strips them for description. A feed app should do the same, and can send the formatted version as rich_text_description limited to the five tags.

In WooCommerce

Our free plugin writes plain text in g:description, tags stripped, and does not send rich text. If you want bullets in the shop, a feed tool has to produce rich_text_description with only the allowed tags.

In a CSV or XML feed

Strip HTML from description. If you add rich_text_description, keep to p, b, i, ul, li without attributes, and keep the plain description alongside it.

How long until Commerce Manager clears it

On the next upload with plain descriptions and, if used, compliant rich text.

What FeedRobin does about it

The free feed check strips HTML when it reads descriptions, so it reports on the text, not the tags. The feeds we render send plain text in every channel’s description field, cleaned per channel.

Questions merchants ask

My descriptions come from the store with HTML in them. Is that rejected?

The description field is plain text; HTML in it is a formatting problem rather than a working description. Strip the tags for description, and if you want bullets in the shop, send the formatted version separately in rich_text_description.

Which tags work in rich_text_description?

p, b, i, ul and li, per Meta’s page. Anything else is uploaded but does not render, and attributes such as style are removed.

Will the rich text show in my ads?

No. Meta says rich text descriptions are supported in Shops on Facebook and Instagram only, not in ads, which is why the plain description remains required as the fallback.

Sources

Related errors

Field can't be all uppercase lettersFix “Field can't be all uppercase letters” and “Description same as title” in Commerce Manager
Product disapproved
A required field is missingFix “A required field is missing” in Meta Commerce Manager
Product disapproved

Read next

Facebook & Instagram catalog: why products get rejected (and what Meta only pretends to require)The wrong-format import trap, availability words Meta doesn't know, images ads can't use, price mismatches, ungrouped variants and unstable IDs — plus the fields Meta lists as required but never enforces.
7 min
Shopify Google Shopping feed: what syncs on its own, and what disapprovesShopify syncs to Merchant Center by itself — then the barcodes, the variants, the Markets prices and a thirty-day refresh window get in the way. What to fix, and how to check a store without installing anything.
7 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 →