IntoSQL: turn Excel, CSV and JSON into SQL that runs the first time
I've been a developer for a lot of years, and one task keeps coming back: someone hands you "the client's spreadsheet" and you need it in a database. A while ago I even wrote a library to import big spreadsheets with Laravel and Node because PHP couldn't handle large files.
If you google "csv to sql" you get a bunch of sites that look like 2012, full of ads, that choke on a 60 MB file and on top of that write wrong SQL: they drop leading zeros, use types your database doesn't have, and mangle accents. And the serious tools (DuckDB, pgloader, database clients) expect you to know SQL and fail silently on weird encodings or Excel dates.
So I built IntoSQL.
What does it do?
You give it a spreadsheet, a CSV, a JSON file or a database dump, and it gives you back SQL your database accepts on the first try, plus a report of every change it made. Nothing changes silently.
- In: XLSX, XLS, ODS, CSV/TSV, JSON, Parquet, Google Sheets, and MySQL, PostgreSQL and SQLite dumps.
- Out: PostgreSQL, MySQL, MariaDB, SQLite, SQL Server and Oracle.
A few examples: Excel to SQL, Excel to PostgreSQL, CSV to MySQL, JSON to SQL, or a full database migration from one engine to another.
What it figures out on its own
This is the part that took the most work and the one I'm proudest of:
- encoding and separator, even Windows-1252 or
;with decimal commas, - where the data actually is, even if the header is on row 4, there's a title above it or a totals row at the bottom,
- what each value means: leading zeros, "yes/no", "N/A", day-first dates.
And when something can't be converted, it tells you which row, which column, and how to fix it.
Local and free
The conversion runs in your browser with a Rust engine compiled to WebAssembly. Your file never gets uploaded anywhere. That's why it can be free, no account, no ads, no file size limit.
For developers too
Same engine everywhere:
- a desktop app for Mac, Windows and Linux that loads straight into your database,
- a CLI (
brew install alfonsobries/intosql/intosql), - an API, SDKs and an MCP server so AI agents can use it. It's all on the developers page.
Free is anything you do yourself, by hand, on your machine. Paid is what you repeat or automate (loading straight into a database, scheduled jobs, the API). Details on pricing.
Try it
If you've ever had to get a spreadsheet into a database, go to intosql.com, drop your file and let me know how it goes. And if you find a file that breaks it, send it my way, those are my favorite.