ApexAutomation
Apex Automation

Apex Automation free tools

Amazon Flat File Validator

Every problem, with the cell it is in, before you upload

Seller Central takes your file, thinks about it for twenty minutes, and hands back a processing report that says error 8105 on record 47. This page tells you now, and tells you which cell. The rules it checks against come out of the template you downloaded, so they cannot be a year out of date like every fixed list on the internet.

  • Free to use
  • No account needed
  • Nothing uploaded
  • 23 marketplaces

No file to hand?

Already uploaded and holding a processing report?

Your inventory file

Drop it here, or

It stays on your machine. There is nowhere for it to be sent.

Leave this alone and it is read out of the file. Set it and the decimal mark, the title rule and the expected product id all change with it.

What you can drop here

  • .xlsm, the file Amazon hands youThe category template, macros and all. Nothing is run, and all seven sheets are read, which is where the real rules live.
  • .xlsxThe same template once Excel has saved it without macros, or any workbook with your rows in it.
  • .txt, tab separatedWhat the upload itself wants, and what most people end up with after a save as. Read with or without a byte order mark.
  • .csv and .tsvComma, semicolon, pipe or tab. The separator is worked out from the file rather than from its name.
  • A file with no header rowIt is read and the page says plainly that the first row does not look like column names, instead of silently checking your data against the wrong rules.
  • Any column naming generationLegacy item_sku, hyphenated seller-sku, the human labels, and the new title_differentiation[marketplace_id=...] paths. They are translated to the same thing.
  • Any sizeNo row cap. Amazon's own upload stops at about 10 MB, and this page tells you when your file is near it.
  • An Amazon processing reportPaste the tab separated report from a failed upload and every error code becomes a sentence, with a file of just the failed rows to send again.

What will not work, and what happens then. A .xls from before 2007, a PDF, an image, an OpenDocument sheet, a zip or a RAR: none of these can be read here, and each one is named for what it is with the one thing to do about it. Nothing crashes and nothing is silently ignored. A password protected workbook cannot be opened by anything in a browser, including this page.

Why every other list of required fields is wrong

Search for the required fields in an Amazon flat file and you will be given the same six every time: SKU, product name, brand, description, price, quantity. It is a reasonable guess and it is not the answer, because the answer is different for every product type and Amazon changes it without telling anybody.

The real list is already in your hands. Inside the template you downloaded there is a sheet called Data Definitions, and it says, for that category, on that day, which fields are required and which values are accepted. Next to it is a sheet called Valid Values with the exact spelling of every option.

So this page reads those two sheets instead of carrying a list of its own.

That one decision is why a validator stops going stale. When Amazon adds a required attribute, your next download has it, and the check changes with it. Nothing here has to be updated, and there is no API key, no Seller Central connection and no sync.

What is claimed, and what is not. A clean result here means your file matches the rules its own template states and the formatting rules Amazon publishes. It does not mean the upload will succeed, because Amazon also checks things no file can know: whether the brand is registered to you, whether the category is gated, whether the product id is already attached to somebody else's listing. Those come back as codes this page can explain, but not prevent.

The damage Excel does on the way

A good share of rejected files were correct when they left the supplier. The spreadsheet broke them, quietly, in the twenty seconds it took to open them.

Every one of these is detected here, and the ones that can be repaired without guessing are repaired, with a count of exactly what changed. The one that cannot, scientific notation, is reported and left alone, because inventing digits would be worse than the error.

The empty cell that deletes your listing

This is the most expensive thing in the whole format and the least well known. In a file set to Update, an empty cell does not mean leave this alone. It means delete what is there.

So a seller changes a price on four hundred rows, uploads the file with only the columns they cared about filled in, and strips the bullet points, the search terms and half the images off four hundred live listings. PartialUpdate is the mode that leaves gaps alone. Every guide mentions this in a sentence. None of them counts it.

This page counts it. Before you upload, it tells you how many rows are set to Update with gaps in them, how many live fields those gaps would clear, and which columns are losing the most.

The title rule that changed in July 2026

On 10 June 2026 Amazon announced that from 27 July titles outside the media categories would have to be 75 characters or fewer, including spaces. That is down from 200. Item Highlights adds another 125, for 200 searchable characters in total, but only if the title is already 75 or under. Go over and you get error 100476 and no highlights at all.

Older templates do not have the Item Highlights column, which is why sellers keep asking where it is. This page reports the length of every title in your file, says whether the column is present, and does not report a title error at all on the marketplaces Amazon left out of the rule: Turkey, Saudi Arabia, the United Arab Emirates and Egypt.

What has actually been tested

Every figure here is a test run that has to pass before anything reaches this page. If one fails, nothing ships. A number on a page that nothing checks goes stale, so a test reads this page, pulls out every figure in it, and compares each one with the code behind it.

190automated checks, all passing
12suites, each runnable on its own
3,000broken files thrown at it, every one answered
29deliberate faults, every one caught
23marketplaces, each with its own rules
0bytes uploaded
A real reader bug, found by building a real template The spreadsheet reader used here had a flaw that no small test file would have shown: Excel writes an empty cell as a self-closing tag, and the pattern that read cells let that tag swallow everything after it until the next filled cell. On a real template, whole columns disappeared without a word. It was found by building a template with gaps in the middle of its rows, which is what every real file looks like.
Every check is proved on a file that really is broken that way The test fixture is a full seven sheet template with twelve deliberate faults in it: a missing required field, a value one capital letter away from a valid one, a duplicate SKU, a UPC that lost its leading zero, an id turned into scientific notation, a title over 75, a price with a currency symbol, a child whose parent is not in the file, a parent carrying a product id, an Update row with gaps, an http image URL, and a curly quote beside a non-breaking space.
Nothing crashes, whatever is dropped on it Thousands of deliberately broken files: truncated zips, headerless rows, control characters, files that claim to be one thing and are another. Every one has to come back with either a report or a named reason. A PDF is told it is a PDF. An .xls is told how to convert it.

What it will not do

Questions people ask first

Is my product data uploaded anywhere?

No. The file is opened and checked by code already sitting in this browser tab, including the spreadsheet reader, which is written out rather than pulled in from a library, so there is no third party script to audit either. There is no upload endpoint, no Seller Central connection and no account. You can watch the Network tab while you use it, or disconnect after the page has loaded and carry on working, which is checked by a test on every run.

Why are the required fields different from the list I read on a blog?

Because a blog has to pick one list and Amazon has a different one for every product type, which it changes without notice. The real requirements are in the Data Definitions sheet inside the template you downloaded. This page reads that sheet, so the check is exactly as current as your download. If you drop a plain text file that does not carry the rules sheets, a built-in list is used instead and the page tells you that is what happened.

What is the difference between Update and PartialUpdate?

Under Update an empty cell means delete the value on Amazon. Under PartialUpdate an empty cell means leave it alone. That single difference strips bullet points, search terms and images off live listings every day, because people upload a change file containing only the columns they cared about. This page counts how many live fields an Update would clear before you send it, and names the columns losing the most.

Why did my UPC stop working after I opened the file?

Excel read it as a number. A number does not begin with a zero, so 012345678905 became 12345678905, and a UPC with eleven digits is not a UPC. If the id was longer, Excel may have switched to scientific notation instead, turning it into 7.05632E+11, and those digits are genuinely gone rather than hidden. This page flags both, restores the leading zeros, and refuses to invent the digits in the scientific notation case.

Does it understand my marketplace?

Twenty three of them, and the differences matter more than people expect. Germany, France, Italy, Spain, Poland, Sweden and Brazil write prices with a comma as the decimal mark, so a price of 19.99 is wrong there. Japan uses JAN codes. Turkey, Saudi Arabia, the United Arab Emirates and Egypt are outside the 75 character title rule, so no title error is reported for them. The marketplace is read out of the file when the file says, and you can pick it by hand when it does not.

Can it explain the processing report I already have?

Yes. Paste the tab separated report from the failed upload and every error code becomes a sentence with the thing to do about it, grouped so you can see which code is causing most of the damage. If the original file is still loaded, it will also build a file containing only the rows that failed, because Amazon keeps the rows that worked and resending everything is how people create duplicates.

What if my file has no header row, or is a mess?

It is still read. The page works out where the column names are from the settings row Amazon writes into the first cell, and when there is no settings row it works it out from the shape of the file and says so. If the row it took as the header does not look like column names at all, it says that too, in as many words, rather than quietly checking your data against the wrong rules. A file it genuinely cannot read, like a PDF or an old .xls, is named for what it is with the one thing to do about it.

Can I see what is changing before I upload a change file?

Yes, and it is worth doing. Load the file you uploaded last time as well and the page lists every SKU that is new, every one that has gone, and every field whose value is changing, with the fields being emptied marked separately. Those are the deletions, and they are the ones that cost money.

Tell us what would make this better

A file this page passes that Amazon then rejects is the most useful thing anyone can send us. A few rows with the real values swapped out is enough. toolssupport@apexautomationteam.com

  • An error code Amazon gave you that this page does not explain yet
  • A template whose sheets are laid out differently from the ones we have seen
  • A marketplace rule that is wrong here
  • A version of this wired into your own platform or workflow
  • Something else altogether, built to your spec

Email our team See what we build

Never send us a file with real customer data in it. Product rows are fine.