Characters have to be decoded before CSV rules apply
UTF-8 is the modern default, but business exports still arrive as Windows-1252, Latin-1, UTF-16 and other encodings. A byte order mark (BOM) can identify some variants, while other files require detection plus human confirmation.
Common, portable and not always self-identifying. Validate the bytes.
The leading marker helps some tools recognize encoding but may surprise others.
The same byte can represent different characters. Names and symbols reveal mistakes quickly.
A comma inside quotes is data, not a new column
CSV commonly uses commas, but semicolons, tabs and pipes are ordinary in exports. The quote and escape rules determine whether delimiters, quotes and newlines can live inside a field.
customer_id,name,note
001284,"Doe, Jane","line one
line two"
001285,"O""Brien","ready"A parser that counts physical lines or splits blindly on commas will misread this valid data.
Record boundaries and first-row meaning are part of the contract
LF, CRLF and older CR line endings can appear across platforms. A first row may contain field names, or simply be the first record. Both choices affect every later operation, so they should remain visible.
Confirm the parse before changing the data
Useful inference, visible all the way through
CSVProof detects a likely parser contract, shows the evidence and keeps every setting adjustable. Once approved, that contract travels with the recipe and run report.
Get early access