CSV File Inspector
Reports what a CSV file actually contains, and where the rows that break it are.
Loading the tool…
How to use this tool
- Load the file with the picker below the box, or paste the content in. The file is read in your browser and is not uploaded.
- Leave the delimiter and header options on Detect it unless the report gets either one wrong.
- Select Inspect the file.
- Read the ragged rows line first — it gives the line number of the first row that does not match the header.
- Use the per-column rows at the bottom to size a target table: the type and the widest value are what a CREATE TABLE needs.
What csv file inspector does
A CSV that fails to load rarely fails for an interesting reason. It is a semicolon file being read as a comma file, a quoted field containing a newline, one row with an extra column because a value had a comma in it, or a byte order mark on the first header that turned "order_id" into something no column mapping will match. All four look identical from the outside: the load errors, and the message names a row number in a file with a million of them.
This page answers the question the error does not. It works out the delimiter by consistency rather than by counting, decides whether there is a header, then walks every row and reports the ones that do not have the expected number of fields — with their line numbers. It finishes with a line per column giving the inferred type, how many values are filled, how many are blank and the widest value, which is usually enough to size a target table. Nothing is uploaded: the file picker reads the file in your browser.