Why a CSV “opens wrong”
CSV is a family of dialects, not one format. The same bytes can be split with commas or semicolons, decoded as UTF-8 or Windows-1252, and read with or without a header. Most tools guess silently and show you a table. ParseCSV shows the evidence instead: which delimiter fits, how confident that is, and exactly which bytes made each record.
The example above is a European spreadsheet export: it starts with a UTF-8 byte-order mark, uses semicolons and decimal commas, contains a quoted line break and has one record with a missing field. Every one of those facts is visible in the raw view, the ledger and the dialect panel.
What you get
- A streaming state-machine parser that reports byte offsets (not character offsets), physical line spans and logical record numbers for every finding.
- Delimiter, quote, header and encoding suggestions with scored alternatives. When two interpretations fit equally well, the confidence drops and you choose.
- Strict and recovery modes. Recovery rules are listed and chosen explicitly; nothing is silently “fixed”.
- An error ledger whose counts always reconcile: every record is OK, warning, repaired, rejected, header, preamble, comment or blank, and every byte is accounted for.
- Manual record repair with preview, provenance, undo and a full reparse.
- Export to CSV, TSV, JSON or NDJSON, verified by parsing the output again; settings and code for Papa Parse, Python csv and pandas.
How to read the raw view
| Mark | Meaning |
|---|---|
| Amber character | A delimiter the parser used to split fields |
| Teal quote | An opening or closing quote; underlined pairs are escaped quotes |
| ¶ CRLF / LF / CR | The end of a logical record and the terminator that ended it |
| Violet ↵ | A line break inside a quoted field: a new physical line, the same record |
| Hatched red � | Bytes that are invalid in the selected encoding, never replaced silently |
Questions
Is my file uploaded anywhere?
No. The file is read by your browser and parsed in a Web Worker on your device. There is no server-side processing, account or analytics on file contents.
How big a file can I open?
Files up to 128 MB are held in memory and can be repaired. Larger files are inspected by streaming slices from disk: counts, ledger and views work, but manual repair is disabled. Files under 32 MB get a full parse automatically; larger ones show a sample first and a “Parse full file” button.
Why does it say “sample only”?
For large files the first 256 KB is parsed immediately so you can check the dialect. Counts from a sample describe only that sample; ParseCSV never shows an all-clear badge until the full input has been parsed.
Does ParseCSV change my data?
Values are kept as text: leading zeros, 20-digit IDs and formula-like strings are left exactly as they are. Changes happen only through explicit repair patches or export options, which are counted and reported.