Convert DuckDB to XLSX

Upload a .duckdb or .ddb file and get back a XLSX file. Types are preserved rather than flattened to text. Free, no registration, up to 10MB.

Click to upload or drag and drop

CSV, Excel, SQLite, SQL, DBF (max 10 MB)

How your data is typed in XLSX

Generated from the converter's own XLSX type mapping — this is what it actually emits, not an example.

Your dataXLSX type
Whole numbernumber
Decimal (money)number
Floating pointnumber
True / falseboolean
Datedate
Date and timedate
Short texttext
Long texttext
Binary datahex text

Working from a .duckdb file

DuckDB keeps an entire analytical database in one file, with real types behind it - decimals that are decimals, and integers wide enough to be worth checking before you move them somewhere narrower.

  • Only the main schema is read. Tables created in another schema, or in a second database attached at query time, are not part of the conversion.
  • Views in main are read as though they were tables, so a view's rows are materialised into the target rather than skipped.
  • HUGEINT is the one type with nowhere to go: no target here has a 128-bit integer, so those columns are carried across as text rather than silently truncated.
  • A DuckDB process that was killed leaves a .duckdb.wal sidecar holding everything it had not checkpointed yet. Upload the database on its own and it opens with no error and no tables at all - send the .wal file alongside it, or checkpoint before you copy the database out.

Sheet names and cell types

The workbook is generated rather than exported out of Excel, so every choice in it is one the converter made. The two that show up the moment you open the file are what the sheet is called and what type each cell turned out to be.

  • The sheet takes the table's name cut to 31 characters, which is Excel's own limit for a tab, while the workbook file keeps the name in full - so a long table name is complete in the file name and shortened on the tab inside it.
  • Dates and timestamps become genuine date cells, formatted yyyy-mm-dd and yyyy-mm-dd h:mm:ss, rather than strings that merely look like dates. Sorting and date arithmetic work on them with no conversion step first.
  • A text column of digits stays text: a value like 01234 is written into a string cell, and Excel shows it as it was stored instead of dropping the zeros the way it does when the same data is opened from a CSV.

Reading DuckDB

  • Types, primary keys and NOT NULL constraints are read from the database.
  • The file is opened read-only, so your upload is never modified or upgraded in place.

Writing XLSX

  • One file per table. Booleans stay booleans and numbers stay numbers.
  • Excel has no fixed-point type, so decimals become numbers — use a database target if exactness matters.

What you get

A ZIP containing <table>.xlsx. If anything about your data needed a judgement call, a _warnings.txt explains it.

Questions

Is converting DuckDB to XLSX free?
Yes. Files up to 10MB convert free with no account. There is a limit of five conversions per day per IP address.
Will my DuckDB data keep its types in XLSX?
Yes — that is the point. Whole numbers, decimals, dates and booleans are mapped to real XLSX types rather than everything becoming text. The mapping table above shows exactly what you get.
Do you store my file?
No. The file is written to a temporary directory, converted, and the directory is deleted as soon as your download has been sent.

This conversion, under other names

Convert DuckDB to something else

Convert something else to XLSX