Amazon Error 90122: How to Remove HTML from Your Product Data
Error 90122 means Amazon detected HTML tags in one of your product data fields — usually the description, sometimes bullet points or even the title. Amazon's detail pages don't accept HTML in listing data, and rows that contain it get rejected.
The confusing part: you probably never typed a single tag. The HTML almost always rides in invisibly with copied text.
Where the hidden HTML comes from
| Source | What it smuggles in |
|---|---|
| Copy-paste from your website / Shopify / eBay listing | <div>, <span>, <strong>, inline style= attributes |
| Word or Google Docs drafts | Proprietary markup that converts to tags on paste |
| Old listings migrated from another platform | <br> and <p> from the platform's rich-text editor |
| AI-generated copy | Literal <br> or \n line-break artifacts |
| Feed/PIM tools with rich-text fields | Formatting silently serialized as HTML on export |
Step-by-step fix
1. Find every affected field
The processing report names the SKU, but not always every dirty field. In your flat file, run a search (Ctrl+F in Excel) for < — the opening angle bracket. Check the columns that hold free text:
product_description— the usual offenderbullet_point1throughbullet_point5item_namegeneric_keywords(rare, but paste accidents happen)
2. Strip the tags — the plain-text round trip
For a handful of SKUs, the most reliable manual method:
- Copy the field's text into a plain-text editor — Notepad on Windows, TextEdit in plain-text mode on Mac. This flattens all formatting.
- Delete any visible tags that remain (
<br>,<b>,<li>…) — the editor only removed formatting, not literal tag text. - Paste the clean text back into the cell. Don't route it through Word or a web editor on the way.
For hundreds of SKUs, do it in-sheet: Excel's Find & Replace with wildcards (find <*>, replace with nothing) removes well-formed tags in one pass. Spot-check afterwards — nested or broken tags can leave fragments like a stray >.
3. Replace formatting with plain-text structure
Sellers usually had the HTML there for a reason — paragraph breaks, emphasis, bullet lists. Rebuild the same readability without tags:
- Line breaks: in Excel, use Alt+Enter inside the cell instead of
<br>. - Bullets in the description: plain dashes or the
•character. - Emphasis: capitalize a short phrase sparingly — there is no bold in plain text.
- Real bullet lists belong in
bullet_point1–5, not simulated inside the description.
4. Re-upload with PartialUpdate
Set update_delete to PartialUpdate so you only overwrite the text fields you cleaned, then read the new processing report and confirm the 90122 rows are gone.
<br> still slips through in descriptions. Maybe — but enforcement has tightened year over year, and a feed that relies on tolerated tags breaks on Amazon's schedule, not yours. If you want rich formatting, the supported path is A+ Content (Seller Central → Advertising → A+ Content Manager, requires Brand Registry), which replaces the plain description on the detail page.Preventing the next 90122
- Draft listing copy in plain text from the start; treat Word/Docs as a no-go for final copy.
- Add a pre-upload habit: Ctrl+F for
<across the sheet. Two seconds, catches nearly everything. - If a feed tool builds your files, turn on its HTML-stripping option and inspect its raw export once — rich-text fields are the usual leak.
Or skip the spreadsheet archaeology
Upload your flat file to FlatFileFix — it locates every field with embedded HTML across all your SKUs, strips the tags while preserving the text, and gives you a clean corrected file. Diagnosis is free.
Fix my flat file →