Parquet viewer online
Upload a .parquet file to inspect its schema and browse rows with sortable, type-aware columns.
Preview reads the first set of row groups into memory — very large files may take a moment.
A Parquet file is a binary columnar table, so a text editor shows you nothing and opening one normally means starting Python, DuckDB or a Spark session just to answer what columns are in here. This page drops the file into an apache-arrow reader running inside the tab: the first four bytes are checked for the PAR1 magic marker, the table is decoded in page memory, and you get the field list with its Arrow type, a row grid paged 50 at a time, and a stats popover per column. Sorting is done on the decoded table, not on a query, so it works with no network round trip. The file itself never leaves the tab — there is no upload step and no account.
Key facts about Parquet viewer online
| Decoder | apache-arrow 21 (tableFromIPC), bundled into the page chunk — no WASM download, no server call |
|---|---|
| File check | Bytes 0–3 must read PAR1. A file that fails the magic-byte check is rejected by name and extension before any parsing |
| Parquet coverage | Partial. The in-page reader is Arrow-based, not a full Parquet implementation — a file it cannot decode stops with a parse error and shows nothing partial |
| Schema shown | Every field name plus its Arrow type string, tagged NUM, BOOL, DATE, BIN or TXT |
| Row grid | 50 rows per page, with page controls; the row count reported is the full decoded table, not the page |
| Sorting | Click a header to cycle ascending, descending, off. Numbers sort numerically, everything else by localeCompare, nulls last |
| Column stats | Row total, null count and distinct count for any column; min, max and mean added when every non-null value parses as a number |
| Export | CSV (quoted when a value contains a comma, quote or newline) or pretty-printed JSON, named after the source file |
| Export scope | The full table in the current sort order — not just the visible page, and not the original bytes |
| Memory | Every row is materialised into a JS object array, so practical size is bounded by tab memory rather than a fixed byte cap |
What happens to your file
The file is read with FileReader into an ArrayBuffer and decoded by apache-arrow inside this tab. There is no upload endpoint, no API call and no telemetry attached to the file: the bytes exist in page memory until you clear the file or close the tab. CSV and JSON exports are built as a Blob and handed to the browser download manager locally, so the exported table never crosses the network either. Nothing about the file — not its name, not its schema, not a row — is stored, logged or sent anywhere.
About this tool
- 1
Drop the .parquet file on the page
Drag it onto the dashed area or use the file picker. The extension is checked first, then the first four bytes must read PAR1 — a renamed CSV is caught here rather than half-parsed.
- 2
Read the schema panel
Open the schema disclosure to see every field with its Arrow type and the short badge. This is the fastest answer to which column is the timestamp and which is a decimal.
- 3
Page through the rows
The grid shows 50 rows at a time. The header line reports total rows and columns decoded, so you can tell a 600-row extract from a 600,000-row dump immediately.
- 4
Sort and inspect a column
Click a header to sort ascending, again for descending, a third time to clear. Open the stats popover on a column to see nulls, distinct values and — for numeric columns — min, max and mean.
- 5
Export what you need
Choose CSV or JSON and download. The export follows the current sort and contains every row, which is usually the point: you came to get the data into a spreadsheet or a test fixture.
| Accepted extension | .parquet only (checked before reading) |
|---|---|
| Magic bytes | PAR1 at offset 0 |
| Page size | 50 rows |
| Type badges | NUM (Int, Float, Decimal), DATE (Date, Time, Timestamp), BOOL, BIN (Binary, Bytes), TXT (everything else) |
| Export formats | CSV, JSON |
| Browser support | Any browser with FileReader and typed arrays — Chrome, Edge, Firefox, Safari, desktop or mobile |
| Offline | Once the page is loaded the decode needs no network |
| Cost / account | Free, unlimited files, no signup |
- Sort by the timestamp column and read the first and last page to get a data range without writing a query.
- The distinct count in the stats popover is the quickest categorical check: 3 distinct values in 50,000 rows means a flag column, not a free-text field.
- Min, max and mean only appear when every non-null value in the column parses as a number, so their absence tells you a numeric-looking column is stored as text.
- Export to JSON when you want a fixture for a test and to CSV when the destination is a spreadsheet — the JSON keeps value types, the CSV flattens everything to text.
- If the parse fails, re-export the table from your pipeline as CSV or Arrow IPC and open that instead; the in-page reader does not cover every Parquet writer.
- Nulls sort to the bottom in both directions, so a column that shows nulls first after a descending sort is not null — it is an empty string.
- PAR1 magic-byte validation
- Field list with Arrow types
- Type badges per column
- 50-row paged grid
- Three-state column sorting
- Null, distinct, min, max and mean per column
- CSV and JSON export of the full table
- Checking what a pipeline actually wrote before loading the extract into a warehouse.
- Answering which columns and types are in this file when the schema documentation is out of date.
- Pulling a small Parquet extract into CSV so a colleague without Python can open it in a spreadsheet.
- Spotting a column that is entirely null after a failed job, using the null count rather than scrolling rows.
- Turning a few rows into a JSON fixture for a unit test without wiring up a reader in the test suite.
- Reading a Parquet file on a laptop where installing pyarrow or DuckDB is not an option.
Related tools
View allPart of File viewers that open the file in your browser
Works well with this5
More file viewers10
More in Data & Dev12
Related categories1
Updated