dataeng.tools

Convert Excel to Parquet — Free, Private, In-Browser

An .xlsx workbook is a zipped bundle of XML — sheets, formulas, styles, merged cells. Parquet is the opposite: columnar, compressed, strongly typed, built for DuckDB, Spark, Athena, and BigQuery external tables. This conversion is how you get a spreadsheet into an analytics path without emailing the workbook around. The in-browser converter reads the first sheet with SheetJS, infers a schema, and writes Parquet via DuckDB-WASM. Other tabs are ignored — move the sheet you want to the front, or split it out, before converting. The file never leaves your browser.

Formulas become their last cached value, the result Excel stored when the file was saved, not a live recalculation. If the workbook was saved stale, the Parquet carries those stale numbers. Dates come through as real date/timestamp types rather than Excel serials, which sidesteps the 1900/1904 epoch mess. Display formats — currency symbols, percentages, thousands separators — are dropped; you get the underlying value. Merged cells, fonts, and conditional formatting have no Parquet representation and disappear. Empty cells become NULL.

Type inference is the part to sanity-check. SheetJS preserves per-cell types where it can (numbers stay numbers, booleans stay booleans), then DuckDB unions the column. Mixed cells — a mostly-numeric column with a note in one row — widen, usually to VARCHAR. Leading-zero IDs typed as numbers in Excel already lost those zeros in the workbook; Parquet cannot put them back. Once written, the Parquet carries its schema so downstream engines stop re-guessing. Expect a smaller file than the zipped .xlsx. SheetJS plus DuckDB, all local — no upload.

Drop a file or click to browse

Drop a Excel file — processed locally, never uploaded

Frequently asked questions

My workbook has multiple sheets — what gets converted?
Only the first sheet. Move the tab you want to the front in Excel, or save each tab as its own file and convert them one at a time.
What happens to formulas?
They're replaced by their last computed value — the result Excel cached when the file was saved, not a fresh calculation. Re-save the workbook in Excel first if you need calculations refreshed.
Will types match what I see in Excel?
Clean numeric and boolean cells usually do. Mixed columns widen (often to text). Number formats are display-only and are not stored. Check the schema panel after loading before you trust the Parquet.
Is my file uploaded anywhere?
No. The Excel→Parquet conversion runs entirely in your browser via DuckDB-WASM. Your file never leaves your device.
How large a file can I convert?
It's bounded by your browser's available memory rather than any server limit — files in the hundreds of MB are routine. DuckDB runs single-threaded here, so very large files just take a little longer.
Do I need an account?
No — it's free and requires no sign-up.

Do more with your Excel file

Related conversions