Data Converter
Move a table from one program to another without retyping it: spreadsheet to CSV, CSV to JSON, JSON to Excel, contacts to vCard, rows to SQL. You choose the delimiter, encoding and structure.
Data Converter
or drag CSV, TSV, TXT … files here ·
Up to 95 MB each· 20 files at once· Removed after 30 min
Your files are removed from our servers 30 minutes after processing.
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.
Files are deleted 30 minutes after processingPrivacy policy
Popular conversions
CSV → XLSX
CSV to XLSX
Turn comma or semicolon CSV exports into clean Excel workbooks.
HTML → XLSX
HTML to XLSX
Pull the tables out of a saved web page or HTML report into an Excel workbook.
JSON → HTML
JSON to HTML
Turn a JSON array of records into a readable HTML table for the browser.
VCF → CSV
VCF to CSV
Turn a vCard contacts export into a CSV with one contact per row.
XML → DOCX
XML to DOCX
Put the records of an XML file into a readable table in a Word document.
The data stays the same; only the container changes. Pick the format the next program reads, and set the delimiter and encoding it expects.
Formats you can read and write
- Input
- CSV
- TSV
- TXT
- XLSX
- XLS
- XLSM
- ODS
- NUMBERS
- JSON
- JSONL
- NDJSON
- XML
- YAML
- YML
- VCF
- VCARD
- SQL
- PARQUET
- HTML
- HTM
- MD
- JPG
- JPEG
- PNG
- GIF
- WEBP
- SVG
- Output
- XLSX
- XLS
- CSV
- TSV
- TXT
- JSON
- XML
- YAML
- SQL
- VCF
- PARQUET
- ODS
- HTML
- MD
- DOCX
- BASE64
Pick the output by where the data goes
Into a spreadsheet
XLSX for Excel, Google Sheets and Numbers, ODS for LibreOffice. XLS only for Excel 2003 and older.
Into another program
CSV or TSV for importing into accounting tools, CRMs, mailing lists and online shops.
Into code or configuration
JSON for web apps and APIs, YAML for configuration files, XML for feeds and older integrations.
Into a database
SQL with CREATE TABLE and INSERT statements for MySQL, PostgreSQL, SQLite or SQL Server, or Parquet for analytics.
Into an address book
VCF contact cards from a list of names, phones and emails, ready to import on a phone or in an email program.
Into a document or page
An HTML or Markdown table for a web page or wiki, or a DOCX file with the table in Word.
Most data files hold the same thing, a table of rows and columns, written down in different ways. A spreadsheet keeps it in cells with formatting and several sheets. CSV writes each row on one line with a separator between values. JSON and XML describe each row as a set of named fields. SQL turns the rows into statements a database runs. Because the content is the same, converting between them is usually lossless for the values themselves, as long as a few details are set right: the separator, the text encoding, whether the first row holds column names, and how dates are written.
Some things do not travel. Formulas, cell colors, charts, comments and frozen panes belong to spreadsheets and are left behind when the data goes to CSV, JSON or SQL; only the calculated values come across. Excel also has hard limits: Microsoft lists a maximum of 1,048,576 rows and 16,384 columns per worksheet in its specifications and limits. A CSV export from a database can be longer than that, so very large files are better kept as CSV or converted to Parquet, which is built for big tables.
First row is header decides what the first line means. When it is on, the values in that row become JSON keys, XML tag names, SQL column names and the field mapping for vCard. Turn it off when row 1 already holds data, and the columns get generic names instead. Trim spaces removes stray spaces at the start and end of values, a common reason why lookups and imports fail after a copy and paste.
Inputs are not limited to clean data files. HTML pages and Markdown documents with tables, and PDF files made from spreadsheets, are read table by table, which saves copying a report into Excel cell by cell. The PDF needs real text for this; a scanned page is only a picture of a table, and Image to Excel is the tool for reading those. For whole documents rather than tables, such as a Word report or a set of notes, use the Document Converter.
Dates is the setting people most often forget. Spreadsheets display dates in the format of the computer that made them, so the same cell may read 04/05 in one country and 05/04 in another. Leave it on Keep as is to copy dates exactly as they appear, choose ISO for anything a database or a script will read, pick day-month-year or month-day-year to match a local system, or write them as a Unix timestamp for code that counts seconds.
Encoding, delimiters and Excel
- What you see: Accented letters show as é or question marks.
- What to do: Those bytes are UTF-8 read as an older Windows code page. Pick UTF-8 with BOM under Text encoding and run the file again.
- What you see: Excel puts every row into a single column.
- What to do: Your Excel expects semicolons. Set Delimiter to Semicolon, or convert to XLSX instead of CSV.
- What you see: Leading zeros vanished from postal codes or IDs.
- What to do: Excel turned them into numbers when it opened the CSV. Convert straight to XLSX, where the values are stored as they were, or import the CSV with the column set to text.
- What you see: Days and months are swapped in the dates.
- What to do: Set Dates to ISO so every date is written as year-month-day, which no program reads the wrong way round.
- What you see: The importer rejects the file because of commas inside values.
- What to do: Switch on Quote every value so each field is wrapped in double quotes.
JSON, XML, SQL and Base64
Structured outputs have a few settings of their own. For JSON, JSON structure chooses between an array of objects, where every row repeats the column names as keys, and an array of arrays, which stores only the values and keeps the header as the first entry. Objects are easier to read and use in code; arrays make smaller files. Pretty print indents JSON, XML and YAML so people can read it, and switching it off writes the most compact file. For XML, XML root tag names the outer element, and each row becomes a row element inside it. For SQL, set the SQL table name and the SQL dialect, because quoting and column types differ slightly between MySQL, PostgreSQL, SQLite and SQL Server.
Base64 is different from the other targets: it does not convert a table, it encodes any file, such as an image, a font or a PDF, as plain text. That text can be pasted into JSON, an email or an HTML page where a binary file cannot go. The encoded version is about a third larger than the original, because every three bytes become four characters. Switch on Data URI prefix to add the media type in front, so the result can go straight into an HTML src attribute or a CSS url(). For a PNG, the start of the result looks like this:
Two targets have a narrower audience. vCard files hold one card per contact, with fields for names, phone numbers, emails and addresses; with headers such as Name, Phone and Email in the first row, each column lands in the matching field. Parquet is a columnar format used by data warehouses and analytics tools; it stores large tables compactly and keeps the column types, so it suits exports that are too big for Excel. Both are also accepted as input, which makes it easy to turn an exported address book or a Parquet file back into a spreadsheet you can read. The other document tools cover what comes after, such as turning a finished sheet into a PDF.
The prefix that Data URI prefix adds to an encoded PNG
data:image/png;base64,How to convert a data file
Add the data files
Drop up to 20 CSV, Excel, JSON, XML, YAML, vCard, SQL, Parquet or HTML files on the box above, or press Choose Files.
Choose the output
Pick a format under Convert to. Open Advanced settings for the delimiter, text encoding, header row, sheets, JSON shape and date format.
Convert and import
Press the convert button, download the result and open or import it in the program it is meant for.
Data converter questions
Why does my CSV open in Excel with everything in one column?
Excel expects the list separator used in your region. Where decimals are written with a comma, it looks for semicolons instead of commas. Convert again with Delimiter set to Semicolon, or use XLSX, which has no delimiter at all.
How do I keep accents and non-Latin text readable in Excel?
Set Text encoding to UTF-8 with BOM. The BOM is a short marker at the start of the file that tells Excel on Windows the file is UTF-8, so accents, Cyrillic and Asian characters display correctly.
What is the difference between an array of objects and an array of arrays?
An array of objects repeats the column names as keys in every row, which is easy to read and to use in code. An array of arrays stores only the values, with the header as the first row, which gives a smaller file.
Can I convert a whole Excel workbook at once?
Yes. Set Sheets to convert to All sheets. CSV output then gives one file per sheet in a ZIP, and JSON output gives one key per sheet.
Can I turn a contact list into a vCard file for my phone?
Yes. Convert a CSV or Excel list of contacts to VCF with First row is header on, so the column names map to name, phone and email fields. Most phones and email programs import VCF files directly.
Can it read a table from a picture?
Images are accepted here only for Base64 encoding. To read the values of a table in a photo or scan, use Image to Excel, which recognizes the text cell by cell.
Is my data kept after the conversion?
No. Uploaded files are deleted once the conversion finishes and results are removed after 30 minutes. You do not sign in, so nothing is linked to you.
From the blog
PDF & Documents · 11 min read
PDF to Word by Document Type: Contracts, CVs, Scans and Tables
Contracts, CVs, scans, table-heavy reports and forms each convert to Word differently. Pick your document type and get the route, the settings and the cases where converting is the wrong move.
PDF & Documents · 10 min read
Scan Documents to PDF Once: Keep an Archive Copy and an Upload Copy
One careful scan, two files: a searchable PDF/A archive copy you keep for years and a light upload copy for portals and email, made from it in a minute.