CSV to Parquet Converter
CSV is easy to produce and slow to query. Upload a CSV and get an Apache Parquet file with a column type for every field, compressed and ready for the analytics tool you load it into.
Data Converter
or drop CSV, TSV, TXT … files here ·
Max 95 MB per file· Up to 20 files· Deleted after 30 minutes
Files are processed on our servers and deleted after 30 minutes.
Character that separates columns in CSV and text files, for both reading and writing. Auto detects it from the input and writes commas.
UTF-8 works for every language. Choose UTF-8 with BOM if Excel on Windows shows garbled accents or Asian characters when opening the CSV.
Excel, ODS and Numbers input: convert the first sheet only, or every sheet (one CSV per sheet in a ZIP, or one JSON key per sheet).
Name of the sheet tab in the new spreadsheet, up to 31 characters.
Array of objects uses column names as keys for every row; array of arrays is more compact and keeps the header as the first array.
Name of the outer element that wraps all rows; each row becomes a <row> inside it.
Used in CREATE TABLE and INSERT statements. Letters, digits and underscores only.
Quoting and column types differ slightly between databases; pick the one you will import into.
Rewrite date cells in one format. ISO (2026-10-18) is safest for databases and code; keep leaves them as they appear in the source.
How to use this tool
- 1
Upload the CSV files
Add one export or up to 20 files with the same layout, each up to 95 MB. Delimiter on Auto detect handles commas, semicolons, tabs and pipes.
- 2
Keep the header and date settings
First row is header turns the header line into column names. Dates is on ISO so date columns are written in one consistent form.
- 3
Convert to Parquet
Press Convert to Parquet and load the .parquet file into pandas, DuckDB, Spark or your warehouse.
Why data teams convert CSV to Parquet
Parquet was created in 2013 by engineers at Twitter and Cloudera, drawing on the columnar layout Google described in its 2010 Dremel paper, and it became a top-level Apache project in 2015. The idea is simple: instead of storing a table row by row as CSV does, it stores all values of one column together. A query that needs three columns out of forty reads only those three, and similar values sitting next to each other compress far better.
That is why analysts convert exports before loading them, data engineers ask suppliers for Parquet instead of CSV, and services like Amazon Athena and BigQuery, which can charge by the amount of data scanned, become cheaper to query. A CSV also has no idea whether 0042 is a number or a code; Parquet records a type for every column, so the next tool does not have to guess.
Parquet vs CSV vs XLSX for large tables
| Parquet | CSV | XLSX | |
|---|---|---|---|
| Column types stored in the file | yes | no | Per cell |
| Reads only the columns a query needs | yes | no | no |
| Compressed | yes | no | yes |
| Readable in a text editor | no | yes | no |
| Opens in Excel with a double-click | no | yes | yes |
| Rows per file | No fixed limit | No fixed limit | 1,048,576 per sheet |
What changes when CSV becomes Parquet
What you gain
- Faster queries that read only the needed columns
- Smaller files to store and move
- A schema the next tool reads instead of guessing
- Dates written once in ISO form
What to keep in mind
- Not editable in a spreadsheet or text editor
- A typo in a numeric column can turn the whole column into text
- Keep the CSV if people still need to open it
CSV and Parquet format facts
CSV
Comma-separated values
CSV is a plain-text format for tables in which each line is a row and commas separate the columns. It has been used since the early days of computing and is described in RFC 4180, though many variants use semicolons or tabs and different text encodings. Nearly every spreadsheet, database and analytics tool can import and export it, which makes it the default format for moving data between systems. CSV stores only values, with no formulas, formatting, multiple sheets or data types.
- Compression
- –
- Transparency
- –
- Animation
- –
- Introduced
- –
PARQUET
Apache Parquet
Parquet is an open-source columnar storage format created by Twitter and Cloudera in 2013 and maintained by the Apache Software Foundation. It stores data by column with strong compression and typed schemas, so analytics tools can read only the columns they need. It is standard in data lakes and tools such as Spark, pandas, DuckDB, BigQuery and Snowflake. Parquet files are binary and cannot be opened in a text editor or a regular spreadsheet app.
- Compression
- Lossless
- Transparency
- –
- Animation
- –
- Introduced
- 2013 · Apache Software Foundation (from Twitter and Cloudera)
CSV becomes Parquet when a file stops being something people open and becomes something queries scan: a daily export landing in a data lake, a dataset shared with analysts, or logs that are filtered by a few columns at a time.
Clean the CSV before converting rather than after: fix the header names, remove summary lines at the bottom and make sure each column holds one kind of value. If the source is a database backup rather than a CSV, start with SQL to CSV. Every other target, from JSON to SQL, is on the data converter page.
CSV to Parquet questions
How much smaller will the Parquet file be than my CSV?
It depends on the data. Columns with many repeated values, such as country codes, statuses or dates, compress very well, while columns of unique IDs or free text shrink less. A Parquet file is usually a fraction of the CSV's size, but there is no fixed ratio worth promising.
Which tools read the converted .parquet file?
pandas with read_parquet, Polars, DuckDB with a plain SELECT on the file name, Apache Spark, and cloud warehouses such as BigQuery, Snowflake, Amazon Athena and Redshift Spectrum. Most of them can also query a folder of Parquet files with the same columns as one table.
How are column types decided?
From the values in each column: whole numbers, decimals, dates and true or false values get matching types, and a column with mixed content stays text. Check codes with leading zeros, such as ZIP codes like 02134, after converting, and keep them as text if they must keep the zero.
Can I convert several CSV files with the same layout?
Yes, up to 20 in one batch, and each becomes its own .parquet file. Put them in one folder and DuckDB or Spark can read them together with a wildcard such as sales_*.parquet.
How do I look inside a Parquet file without code?
Excel and Google Sheets cannot open .parquet with a double-click. Turn it back into rows with Parquet to CSV, or use DuckDB's command line if you are comfortable with one SQL query.