How to open a large CSV file
Most tools try to load the whole file into memory at once, which is why a 1 GB CSV freezes Excel, Notepad and TextEdit alike. The fix is to stream the file — read it in chunks and never hold more than a fraction of it at a time. That is what this page does: drop a file and you get the row count, column names, detected delimiter and the first 20 rows, without loading the whole thing.
What works, and when
- Preview and count — this tool, or
head -50 big.csvandwc -l big.csvin a terminal. Instant, regardless of size. - Editing a few rows — a streaming-capable editor. VS Code handles a few hundred megabytes; Sublime Text and BBEdit go further. Notepad and TextEdit do not stream and will hang.
- Querying and aggregating — DuckDB is the best answer available:
duckdb -c "select count(*) from 'big.csv'"runs over files far larger than memory. It needs an install and some SQL. - Actually looking at all of it in a grid — you cannot, past about a million rows. Filter or split it down to something a spreadsheet can hold.
Check the encoding and delimiter before anything else
Two problems account for most "the file opened but it is garbage" reports. First, the delimiter may not be a comma — European exports frequently use semicolons, because the comma is the decimal separator. Second, the encoding may be UTF-16 or Windows-1252 rather than UTF-8, which turns accented characters into mojibake. Scanning a file here reports the detected delimiter, so you can confirm before importing it somewhere that will guess wrong silently.
A note on cloud converters
Uploading a large file to a free converter is slow, capped, and puts your data on a server you know nothing about. If the export contains customer records, that is a disclosure with legal weight in most of Europe. Local processing sidesteps the question entirely.
Related: CSV too large for Excel · Extract specific columns
Common questions
How do I count the rows in a huge CSV? Drop it here and read the row count, or run wc -l big.csv in a terminal. Both stream the file rather than loading it.
Why does my CSV open as one long column? The delimiter is not what your spreadsheet expected — usually a semicolon rather than a comma. Check the detected delimiter and set it explicitly on import.
Can I open a 5 GB CSV? You can scan, split and filter one here. You cannot view all of it in a spreadsheet; no spreadsheet holds that many rows.