Convert Parquet to CSV Online
Convert Parquet files to CSV format directly in your browser. No upload required — your data never leaves your device.
About converting Parquet to CSV
Parquet to CSV is the conversion people need when a file from a data lake has to leave the analytics stack. A Spark job, an Athena UNLOAD, a BigQuery export or a pandas to_parquet call gives you a compressed, typed, columnar file. Spreadsheets, many bulk loaders and most people outside the data team still want plain comma-separated text. The CSV opens in Excel, loads with PostgreSQL COPY and diffs cleanly in git.
Spark and Hive usually write a folder of part files, named like part-00000-....snappy.parquet, rather than one file. Each part holds a slice of the rows. Convert each part, or load them all into the SQL Query tool, combine them with UNION ALL and export the result. If the folder belongs to a Delta Lake or Iceberg table, be careful: a single part file can still contain rows that the table log has since deleted, and reading the file directly ignores that log.
Expect the CSV to be several times larger than the Parquet file. Compression and dictionary encoding are gone and every value is written out as text. The column types are gone too, so the next program to read the CSV has to guess them again. That is where leading zeros and long IDs usually get damaged.
Not sure which format you need? Read the CSV vs Parquet comparison.
Worked example
A small sample file, converted with the default settings.
Input (Parquet)
Parquet file (binary, columnar) — shown as a table with its schema
| order_id | customer | ordered_at | amount | shipped |
|---|---|---|---|---|
| 1001 | Acme Ltd | 2026-03-02 09:15:00 | 249.50 | true |
| 1002 | Brightside Co | 2026-03-02 14:40:00 | 1200.00 | false |
| 1003 | Acme Ltd | 2026-03-05 08:05:30 | 89.99 | true |
| 1004 | Northwind | 2026-03-07 17:22:00 | NULL | false |
Schema: order_id BIGINT, customer VARCHAR, ordered_at TIMESTAMP WITH TIME ZONE, amount DECIMAL(10,2), shipped BOOLEAN
Output (CSV)
order_id,customer,ordered_at,amount,shipped
1001,Acme Ltd,2026-03-02 09:15:00,249.50,true
1002,Brightside Co,2026-03-02 14:40:00,1200.00,false
1003,Acme Ltd,2026-03-05 08:05:30,89.99,true
1004,Northwind,2026-03-07 17:22:00,,falseWhat changes when you convert Parquet to CSV
- Column names become the header row. The file uses commas and LF line endings with no byte order mark, and a field is quoted only when it contains a comma, a double quote or a line break.
- DECIMAL values keep their exact digits, so amount 249.50 stays 249.50 instead of becoming 249.5. Integers of any size are written with every digit.
- Timestamps are written as 2026-03-02 09:15:00, with a space rather than a T. A TIMESTAMP WITH TIME ZONE column like ordered_at is converted to UTC and written with no offset. Precision below one millisecond is dropped.
- NULL becomes an empty field. Order 1004 has no amount, so its line has two commas in a row, which a reader cannot tell apart from an empty string.
- Nested columns are not flattened. A list, struct or map cell is written as compact JSON text inside quotes, such as {"city":"Leeds"}. Select the struct fields as separate columns in the SQL Query tool before exporting if you want them apart.
Your file is processed locally in your browser and is never uploaded. The free limit is 50 MB per file; larger files work if your device has the memory for them.
Frequently Asked Questions
My Spark job wrote a folder of Parquet part files. Can I convert the whole folder to one CSV?
This converter takes one file at a time. Either convert each part and append the results, dropping the repeated header lines, or open all parts in the SQL Query tool, join them with UNION ALL and export the query result as CSV.
Why are my timestamps shifted by a few hours in the CSV?
Timezone-aware Parquet timestamps are stored as UTC instants. The CSV shows that UTC time without a Z or offset, so a reader that assumes local time will be off by your UTC offset. Name the column something like ordered_at_utc, or tell the importing tool that the column is in UTC.
Why do accented names look garbled when I double-click the CSV in Excel?
The file is UTF-8 without a byte order mark. Excel on Windows can assume a legacy code page when opening such a file directly. Import it through Data, From Text/CSV and pick UTF-8, or use the Parquet to Excel converter instead.
What is CSV format?
CSV (Comma-Separated Values) is a plain-text tabular format supported by virtually every data tool, spreadsheet app, and programming language.
Related Tools
Convert CSV to Parquet Online
Convert CSV files to Parquet format directly in your browser. No upload required — your data never leaves your device.
CSV Viewer Online
View and inspect CSV files directly in your browser. Browse rows, check column names and data types — no upload required, your data stays on your device.
Parquet Viewer Online
View and inspect Parquet files directly in your browser. Browse rows, check column names and data types — no upload required, your data stays on your device.
Validate Parquet Files Online
Validate Parquet file structure in your browser. Check null counts, distinct values, and data types for every column — no upload required.
Deduplicate Parquet Files Online
Remove duplicate rows from Parquet files instantly in your browser. No upload, no server — 100% private.
Filter CSV Files Online
Filter rows in CSV files by column value, directly in your browser. Your data stays on your device.
Convert Parquet to Excel Online
Convert Parquet files to Excel format directly in your browser. No upload required — your data never leaves your device.
Convert Parquet to JSON Online
Convert Parquet files to JSON format directly in your browser. No upload required — your data never leaves your device.