Convert Parquet to CSV
Any encoding,
any compression.
Free Apache Parquet to CSV converter. Upload any .parquet file — handles all standard encodings (PLAIN, RLE, DICTIONARY) and compression codecs (SNAPPY, GZIP, ZSTD). Powered by hyparquet. Your file never leaves your browser.
Parquet encodings and compressions supported
hyparquet handles all standard Parquet encodings and compression codecs.
Parquet to CSV in Python and CLI
Code examples for common workflows.
How Parquet to CSV conversion works
From columnar binary to flat CSV — what happens in your browser.
hyparquet parses the binary footer
hyparquet reads the PAR1 magic, parses the Thrift-encoded FileMetaData at the end of the file, and extracts the schema — column names, data types, encoding and compression for every column chunk and row group.
Columns decoded and decompressed
Each column chunk is decompressed (SNAPPY, GZIP or ZSTD) and decoded (PLAIN, RLE, DICTIONARY or BIT_PACKED). The decoded values are typed — integers as JS numbers, strings as JS strings, timestamps as JS Date objects.
Rows assembled and CSV exported
Column arrays are reassembled into row objects. CSVShift serialises them to RFC 4180 CSV with your chosen delimiter and null representation, with UTF-8 BOM for Excel and Google Sheets compatibility.
When do you need to convert Parquet to CSV?
Common situations where extracting Parquet data to CSV is necessary.
Opening Parquet in Excel
Excel cannot open .parquet files directly. Converting to CSV first is the standard path from a Parquet data export to an Excel spreadsheet for analysis, formatting or sharing with non-technical stakeholders.
Inspecting data lake files
Data engineers who need to quickly inspect a Parquet file from S3, GCS or ADLS — without starting a Spark cluster or running a Python script — can upload it here for instant CSV preview and download.
Format migration
Moving data between systems that support different formats — Parquet for the data lake, CSV for a legacy system, database import tool or BI connector that only accepts flat files.
Sharing with non-engineers
Analysts and business users who receive Parquet files from data pipelines but need the data in a spreadsheet. Converting to CSV produces a file that anyone can open without Python or a SQL client.
Related CSV tools
Other free converters on CSVShift you might need.
Parquet decoded
in your browser. No server.
CSVShift uses hyparquet — a pure JavaScript Parquet reader maintained by the open-source data community, used by tools like Observable, Evidence and Hugging Face Datasets. Your .parquet file is read as an ArrayBuffer and decoded locally. Nothing is uploaded or transmitted.
hyparquet handles the full complexity of the Parquet format: Thrift binary metadata, multiple encodings per column, row group iteration, and decompression of SNAPPY, GZIP and ZSTD pages — all in JavaScript without native code or WebAssembly.
Powered by hyparquet
All encodings supported
Null value control
Free, no conditions
How do I convert Parquet to CSV?
How do I convert Parquet to CSV in Python?
import pandas as pd; pd.read_parquet('f.parquet').to_csv('out.csv', index=False). Fastest for large files: duckdb.query("COPY (SELECT * FROM 'f.parquet') TO 'out.csv' (HEADER)"). With column selection: pd.read_parquet('f.parquet', columns=['a','b']).