Excel Table Converter: to SQL, JSON, Markdown and CSV
Paste cells from Excel or a CSV: the separator is detected and you get SQL INSERT, JSON, Markdown or HTML.
Converting an Excel table to SQL INSERT, JSON or Markdown
Paste cells copied from Excel, Google Sheets or a CSV file: the tool detects the separator from the first line (tab, semicolon, comma or pipe), then produces one SQL INSERT statement per row, a JSON array, or a Markdown, HTML, CSV or box-drawing table. It is meant for multi-column tables; for a plain list of emails or IDs, the list cleaner is a better fit.
Processing order
- Rows are split on the most frequent separator in the first line; leading and trailing spaces are trimmed in each cell; a quoted field keeps the separator it contains ("Dupont, Jean" stays one cell).
- "Remove duplicates" option: a row identical cell by cell to an earlier row is dropped.
- Filter: only rows with a cell containing the search text (case-insensitive) are kept; the header stays.
- Sort on one column, ascending or descending: numeric when both values are numbers (decimal commas included, 12,5 before 100), alphabetical otherwise.
- Conversion. Without a header row, columns are named Col_1, Col_2…
Example
Paste four tab-separated rows: Name, City, Salary; Martin, Paris, 38000; Dupont, Lyon, 42000; Martin, Paris, 38000. With duplicates removed, a descending sort on Salary and SQL output to the table staff, you get two statements, including INSERT INTO `staff` (`name`, `city`, `salary`) VALUES ('Dupont', 'Lyon', 42000);. Numbers stay unquoted, except those starting with a zero (the postcode 01000 stays text), apostrophes are doubled (L'Isle becomes L''Isle) and any character other than unaccented letters, digits and underscores becomes an underscore in column names: "Prénom" becomes pr_nom.
Limits found in the code
- SQL output uses MySQL and MariaDB backticks; adjust them for PostgreSQL or SQL Server.
The transpose button swaps rows and columns, and the result can be copied or downloaded (table_export.sql, .json, .md…).
Frequently Asked Questions
How do I turn an Excel table into SQL INSERT statements?
Copy the cells in Excel (header included), paste them, pick SQL output and enter the table name. The tool writes one INSERT statement per data row, with column names taken from the header, numbers unquoted and text in single quotes.
How do I convert a CSV file to JSON?
Paste the CSV content and choose JSON output: each row becomes an object whose keys are the column headers. Numeric values are converted to numbers, except those starting with a zero, such as the postcode 01000, which stay text so the zero is not lost.
Why is my table not split correctly?
The separator is chosen from the first line only; a quoted field containing that separator, on the other hand, stays whole. If your header contains commas but the data is semicolon-separated, the split will be wrong: paste straight from Excel instead, which separates cells with tabs.
How do I make a Markdown table from Excel?
Paste the cells and keep Markdown output, which is selected by default: the tool aligns columns by padding each cell with spaces and adds the separator line under the header. The result can be pasted as is into a README or a ticket.
Is this tool really free?
Yes, all tools on Kristools are 100% free and accessible without registration.
Is my data protected?
Yes. All processing is performed directly and securely inside your browser. No personal data is sent to our servers.