Gzip CSV Reader
Open .csv.gz files and browse the rows in a paginated table. Auto-detects the delimiter and runs entirely in your browser.
The reader decompresses gzip in the browser, auto-detects the delimiter, and paginates 50 rows at a time. Nothing is uploaded.
Open a gzipped CSV without unpacking it to disk. The reader inflates the gzip stream locally, samples the first lines to pick the most likely delimiter (comma, tab, semicolon, or pipe), parses the rows with quoted-field support, and renders them in a 50-row paginated table. Useful for previewing large data feeds before deciding whether to load them into a real analysis tool.
Gzipped CSV is a common shape for data outside a database: BigQuery exports, Athena unload, Redshift COPY staging, AWS billing reports, and most academic dataset mirrors all ship .csv.gz files. Opening one to check the columns usually means downloading, decompressing with gunzip, and loading the plain CSV into a spreadsheet, which is slow when you only want to see what is inside.
This reader skips that round trip. The file is read into a byte array, the gzip header is validated against the 0x1f 0x8b magic (RFC 1952), and pako runs DEFLATE inflation (RFC 1951) on the payload. The resulting UTF-8 text is sampled to pick the most likely delimiter: the candidate that yields the most consistent column count across the first ten lines wins. Apache projects (Parquet docs and the CSV reader in Spark) follow the same heuristic. The parser handles double-quoted fields, embedded delimiters, and escaped quotes (""), which matches RFC 4180 conventions.
The rendered table paginates 50 rows at a time so a million-row feed stays responsive. A header strip shows the row count, column count, detected delimiter, and the compressed-versus-decompressed sizes, which is a quick way to gauge whether the file is worth loading into a heavier tool.
- 1
Pick the .csv.gz file
Click Choose file. The file is read locally as bytes; the gzip header is verified before any decompression starts.
- 2
Inflate and parse
Pako inflates the DEFLATE payload. The first 4 KB are sampled to pick the delimiter, then a quote-aware parser splits each row.
- 3
Browse the rows
Rows render 50 at a time. Use First, Previous, Next, and Last to navigate. The header bar shows row count, columns, and sizes.
Preview a vendor data feed
Glance at a .csv.gz from an upstream API before writing the ingestion script that will normalize the columns.
Confirm a backup is intact
Open a nightly backup of a CSV table to verify the row count and column headers without spinning up a database.
Inspect cloud billing exports
AWS and GCP deliver billing detail as gzipped CSVs. Open one here to find the column you need before writing a parser.
Pick a delimiter for a downstream parser
When a file uses semicolons or tabs, the reader tells you exactly which delimiter it detected so you can configure the next tool.
Is my file uploaded anywhere?
No. Decompression, parsing, and pagination all run in your browser. The file never crosses the network and is discarded as soon as you close the tab. There is no telemetry on the file contents.
How is the delimiter detected?
The first 4 KB of decoded text is split by each candidate delimiter (comma, tab, semicolon, pipe) and the parser counts columns per line. The candidate that yields the most consistent count across the first ten non-empty lines wins. You can usually trust the result, but the detected delimiter is shown in the stats bar so you can sanity-check it.
Does it handle quoted fields with commas inside?
Yes. The parser respects double-quoted fields and treats embedded delimiters and escaped quotes (two consecutive double quotes inside a quoted field) the way RFC 4180 specifies. That covers most CSVs exported by Excel, Pandas, and SQL clients.
What if the file is huge?
Files that decompress to a few hundred megabytes work but get slow. The whole decoded buffer is held in memory and the row array is built once, so very large files (multiple GB) may run the tab out of memory. For those, run gunzip locally and use a streaming parser.
Can I edit the rows here?
The reader is read-only by design. Editing in a 50-row pager is awkward and risks losing rows you cannot see. Decompress with the CSV Decompressor tool if you need an editable copy, then open it in a spreadsheet.