Turn your Markdown tables into clean CSV files. Runs in your browser, no uploads, no sign-ups -- just paste and go.
CSV output will appear here
Start typing Markdown tables on the left
You know those tables in your README files and project docs? They look nice on GitHub, but they're stuck in Markdown. This Markdown to CSV Converter pulls those tables out and gives you a proper CSV file you can actually work with -- open it in a spreadsheet, load it into a database, feed it to a Python script. It handles the fiddly parts like escaping commas inside cells and dealing with special characters. If you need the reverse, our CSV to Markdown converter goes the other way, and the Markdown to Excel converter gives you formatted .xlsx files.
CSV is the lowest common denominator of data formats, and I mean that as a compliment. Excel opens it. Google Sheets opens it. You can run pandas.read_csv() in Python, read.csv() in R, or LOAD DATA INFILE in MySQL. It works with jq, awk, and grep from the command line. Unlike proprietary formats, CSV is just text -- you can open it in Notepad or vim if you want. That's why it's still the go-to format for moving data between systems, even after all these years.
Go with CSV when the data is headed somewhere programmatic -- a database import, a CI pipeline, a script that processes rows. CSV files are small, fast to parse, and don't need special libraries to read. Go with Excel when a person needs to look at the data with nice formatting, use formulas, or work across multiple sheets. If you're writing a data pipeline, CSV is your friend. If you're sending a report to your manager, use our Markdown to Excel converter instead.
Got a config table or reference data in your project docs? Convert it to CSV and load it straight into your database. MySQL's LOAD DATA INFILE, PostgreSQL's COPY command, and SQLite's .import all take CSV directly. Way faster than writing INSERT statements by hand or copying rows one at a time.
Found a useful data table in a research paper or technical doc? Convert it to CSV and you're one line away from working with it: df = pd.read_csv('data.csv') in pandas or data <- read.csv('data.csv') in R. Beats manually recreating the table in a spreadsheet, especially for larger datasets.
Sometimes you just need the table in a spreadsheet to sort, filter, or chart something. CSV opens instantly in Excel, Google Sheets, and LibreOffice -- no compatibility headaches. It's lighter than .xlsx and you don't need to worry about version mismatches between Office versions.
If you keep test matrices, environment configs, or deployment parameters in Markdown, converting to CSV makes them easy to consume in shell scripts and CI jobs. Tools like awk, cut, and csvkit can slice and dice CSV files without any special dependencies. Great for when you need to extract a value from a table in a build step.
No waiting around. Paste your Markdown and the CSV shows up immediately. Edit the input and the output updates on the spot.
Nothing gets sent to a server. The JavaScript runs right in your browser, so your data never leaves your machine. Check the network tab if you don't believe me.
Got a doc with several tables? They all get picked up. Each table is separated in the output so you can tell them apart.
See exactly what the CSV will look like before you download it. Helps you catch any formatting issues before the data hits your database.
No accounts, no credit cards, no usage caps. Use it as much as you want. That's it.
Download the .csv file or copy the raw text to your clipboard. Either way, it's one click.
It's a four-step process, and honestly step four is just "use the file." Here's the breakdown:
Paste a Markdown table into the left panel. You can also drag a .md file onto it or click 'Upload' to browse for one. The tool reads standard Markdown table syntax -- the kind you'd write on GitHub, in Notion, or in Obsidian.
The right panel shows your CSV output updating in real time. Take a look to make sure your columns lined up and nothing looks off. If a cell had commas or quotes, you'll see them properly escaped.
Click 'Download' to save the file, or 'Copy' to put the raw CSV on your clipboard. The downloaded file includes a UTF-8 BOM so Excel won't scramble any non-English characters.
Open the CSV in a spreadsheet, import it into a database with LOAD DATA or COPY, read it with pandas or R's read.csv(), or parse it in a shell script with csvkit. CSV goes pretty much everywhere.
Need formatted spreadsheets with auto-sized columns? This one creates .xlsx files from your Markdown tables.
Going the other direction -- turn CSV data back into Markdown tables for your docs and READMEs.
Convert Markdown into clean HTML you can drop into a web page or email template.
Get your Markdown tables as structured JSON -- handy for APIs and JavaScript apps.
Turn Markdown into .docx files when you need to send something more formal.
Pull tables out of Excel files and convert them to Markdown syntax for documentation.