Markdown To CSV

Login

Email
Password

Don't have an account yet?

Go to Sign up

Input Data
Sample {{ showCoderInput ? 'Choose File' : 'Enter Data' }}

                                
Valid Data Invalid Data — Cannot parse as table
Online Table Editor
Row Col Row Col
Transpose Clear Delete Empty Deduplicate
ABC abc Abc
Replace
First Row as Header
{{ displayRows.length }} rows x {{ displayHeaders.length }} columns{{ firstRowAsHeader ? ' (1 header)' : '' }} {{ selectedRows.length > 0 ? selectedRows.length + ' selected' : '' }}
Output Data ({{ outputFormatDisplayName }})
{{ copied ? 'Copied!' : 'Copy to Clipboard' }} Download File
Properties
Convert Markdown Table to CSV online — paste, edit, and download.

Value Delimiter:
Row Delimiter:
Row Prefix:
Row Suffix:
Double Quote Wrap
UTF-8 BOM
Convert Restart
Insert Row Below
Insert Row Above
Insert Column Right
Insert Column Left
Delete Row {{ contextMenu.row + 1 }}
Delete Column {{ contextMenu.col + 1 }}
Clear Cell
Clear Row
Case sensitive Use regex Cancel Replace All

What Is the Markdown To CSV Converter?

The Markdown To CSV Converter on A.Tools transforms Markdown pipe-delimited tables into CSV (Comma-Separated Values) format. Six settings let you control value and row delimiters, add row wrappers, enable quote wrapping, and include a UTF-8 BOM for Excel compatibility. All processing runs in your browser. No data leaves your device.

CSV is the most widely supported data exchange format. Every spreadsheet application, database system, statistical tool, and programming language can read and write CSV files — making it the universal standard for moving tabular data between systems.

How to Convert Markdown Tables to CSV?

Step 1: Provide Your Markdown Data

Click Enter Data to paste a Markdown table into the input area, or click Choose File to drag and drop a .md file. Press Sample to load example data.

Step 2: Edit in the Online Table Editor

Once parsed, an interactive spreadsheet appears. Use the toolbar to:

  • Add or delete rows and columns

  • Transpose the table (swap rows and columns)

  • Remove duplicate rows

  • Delete empty rows and columns

  • Change text case (UPPERCASE, lowercase, Capitalize)

  • Find and replace values — supports case-sensitive search and regex

  • Toggle First Row as Header to define field names

Right-click any cell for context-menu operations.

Step 3: Configure Settings

In the Properties panel:

SettingDefaultDescription
Value DelimiterCommaCharacter separating values within a row
Row DelimiterLFCharacter separating rows
Row Prefix(empty)Text prepended to each row
Row Suffix(empty)Text appended to each row
Double Quote WrapOffWrap values containing delimiters or quotes in double quotes
UTF-8 BOMOffPrepend UTF-8 Byte Order Mark for Excel compatibility

Step 4: Export

Click Convert to generate CSV output. Use Copy to Clipboard or Download File to save as a .csv file.

Key Features

  • Two input modes: Paste Markdown directly or upload a .md file via drag-and-drop

  • Full table editor: Edit, transpose, deduplicate, find-and-replace before converting

  • 8 value delimiter options: Comma, semicolon, tab, pipe, space, colon, and more

  • 8 row delimiter options: LF, CRLF, CR, and platform-specific variants

  • Row prefix and suffix: Wrap each row with custom text for SQL or code integration

  • Double quote wrapping: Properly escape values containing delimiters per RFC 4180

  • UTF-8 BOM: Add byte order mark so Excel correctly detects UTF-8 encoding

  • Client-side processing: Files never leave the browser — zero data upload

  • Undo/Redo: Full edit history with revert support

  • Context menu: Right-click for quick row/column/cell operations

  • Header toggle: Treat the first row as field names or regular data

  • Validation indicator: Real-time feedback on input validity

What the Output Looks Like

Given this Markdown input:

| name  | age | city        |
|-------|-----|-------------|
| Alice | 30  | New York    |
| Bob   | 25  | Los Angeles |

Default output (comma delimiter, LF)

name,age,city
Alice,30,New York
Bob,25,Los Angeles

With semicolon delimiter (European locale)

name;age;city
Alice;30;New York
Bob;25;Los Angeles

With tab delimiter (TSV format)

name    age    city
Alice    30    New York
Bob    25    Los Angeles

With Double Quote Wrap enabled

Values containing the delimiter, quotes, or newlines are automatically wrapped:

"name","age","city"
"Alice","30","New York"
"Bob","25","Los Angeles, CA"

The value Los Angeles, CA contains a comma, so it is wrapped in double quotes to prevent splitting.

With Row Prefix and Suffix

Set Row Prefix to ( and Row Suffix to ):

(name,age,city)
(Alice,30,New York)
(Bob,25,Los Angeles)

Set Row Prefix to ' and Row Suffix to ' for SQL value lists:

'name','age','city'
'Alice','30','New York'
'Bob','25','Los Angeles'

With UTF-8 BOM enabled

The file starts with the UTF-8 byte order mark (EF BB BF), ensuring Microsoft Excel opens the file with correct UTF-8 encoding:

name,age,city
Alice,30,New York
Bob,25,Los Angeles

Understanding CSV Format

What is CSV?

CSV (Comma-Separated Values) is a plain-text format for tabular data defined in RFC 4180. Each row is a line of text, and values within a row are separated by a delimiter character — most commonly a comma.

CSV syntax rules (RFC 4180)

RuleExample
Values separated by delimiterAlice,30,New York
Each record on a new lineAlice,...\nBob,...
Optional header row as first linename,age,city
Double quotes escape delimiters"Los Angeles, CA"
Double quotes escape quotes"He said ""hello"""
Leading/trailing spaces are significantAliceAlice
Last record may or may not end with newlineBoth are valid

CSV vs TSV vs DSV

FormatDelimiterExtensionUse Case
CSVComma ,.csvStandard data exchange
TSVTab \t.tsv / .txtUnix pipelines, clipboard data
DSVAny characterVariesCustom delimiter formats
Pipe-separatedPipe |.psvConfiguration files, logs
Semicolon CSVSemicolon ;.csvEuropean locales

Why delimiter choice matters

The delimiter depends on your data and locale:

LocaleDecimal SeparatorCSV Delimiter
English (US, UK). (period)Comma ,
German, French, Spanish, (comma)Semicolon ;
Dutch, Finnish, (comma)Semicolon ;

If your data contains numbers like 3,14 (European decimal), use semicolon as the value delimiter to avoid splitting the number across columns.

UTF-8 BOM and Excel

Microsoft Excel often misinterprets UTF-8 CSV files as ANSI/Windows-1252, causing accented characters and non-Latin text to display incorrectly. The UTF-8 BOM (Byte Order Mark) is a 3-byte sequence (EF BB BF) at the start of the file that tells Excel to use UTF-8 encoding.

Enable UTF-8 BOM when:

  • Your data contains accented characters (é, ü, ñ, ø)

  • Your data contains non-Latin scripts (Chinese, Japanese, Arabic, Cyrillic)

  • The CSV will be opened in Microsoft Excel

  • You are unsure about the recipient's Excel settings

Double quote wrapping

Per RFC 4180, values must be wrapped in double quotes when they contain:

  • The value delimiter (e.g., Los Angeles, CA)

  • A double quote character (e.g., He said "hello")

  • A newline character (e.g., multi-line text)

  • Leading or trailing spaces

When Double Quote Wrap is enabled, all values are wrapped in quotes for safety. When disabled, only values that require quoting per RFC 4180 are quoted — or none at all, depending on the implementation.

Settings Explained

Value Delimiter

The character that separates values within a row. Options:

DelimiterCharacterBest For
Comma,Standard CSV (English locales)
Semicolon;European locales, data with commas
Tab\tTSV format, clipboard data, Unix pipelines
Pipe|Log files, configuration data
Space Fixed-width approximation
Colon:Time data, key-value pairs
CustomAny characterNiche formats

Row Delimiter

The character sequence that separates rows. Options:

DelimiterSequencePlatform
LF\nUnix, Linux, macOS (default)
CRLF\r\nWindows, HTTP protocols
CR\rClassic Mac OS (rare)
CustomAny sequenceSpecialized formats

Use LF for web and Unix tools. Use CRLF for Windows-native applications and some older systems.

Row Prefix

Text added before each row. Common uses:

PrefixPurpose
(empty)Standard CSV
(Wrap rows in parentheses
'SQL-style string quoting
INSERT INTO t VALUES (Generate SQL INSERT statements
[JSON array row format

Row Suffix

Text added after each row. Common uses:

SuffixPurpose
(empty)Standard CSV
)Close wrapped rows
'Close SQL-style quoting
);Close SQL INSERT statements
],Close JSON array rows

Double Quote Wrap

Wraps all values in double quotes ("value"). This ensures safe handling of any value that contains the delimiter, quotes, or special characters. When disabled, values are output as-is.

Enable when:

  • Values may contain the delimiter character

  • You want maximum safety and portability

  • The target application expects quoted values

UTF-8 BOM

Prepends the UTF-8 Byte Order Mark (EF BB BF) to the output file. This invisible 3-byte header tells Microsoft Excel to interpret the file as UTF-8, preventing encoding issues with international characters.

Enable when the CSV will be opened in Excel. Disable when the file is consumed by programming tools (Python, Node.js, databases), which may interpret the BOM as data.

Use Cases: When to Convert Markdown to CSV

ScenarioRecommended Settings
Standard data exchangeComma delimiter, LF, Double Quote Wrap on
European locale dataSemicolon delimiter, CRLF, Double Quote Wrap on
Excel import with accented charactersComma, CRLF, UTF-8 BOM on, Double Quote Wrap on
Unix pipeline processingTab delimiter (TSV), LF
SQL INSERT generationComma, Row Prefix: (, Row Suffix: ),
Database import (MySQL, PostgreSQL)Comma, LF, Double Quote Wrap on
Python pandas importComma, LF, UTF-8 BOM off
Log file conversionPipe delimiter, LF
Configuration data exportSemicolon or colon delimiter

Python pandas Import

import pandas as pd
df = pd.read_csv("data.csv")
print(df.head())

Excel-Friendly CSV with UTF-8 BOM

Enable UTF-8 BOM and CRLF row delimiter for seamless Excel opening:

name,age,city
Alice,30,São Paulo
Bob,25,München
Carol,28,Tokyo

SQL INSERT Generation

Set Row Prefix to INSERT INTO users VALUES ( and Row Suffix to );:

INSERT INTO users VALUES ('Alice','30','New York');
INSERT INTO users VALUES ('Bob','25','Los Angeles');

R Data Import

data <- read.csv("data.csv", header = TRUE, stringsAsFactors = FALSE)
print(data)

Node.js CSV Parsing

const fs = require("fs");
const csv = fs.readFileSync("data.csv", "utf-8");
const rows = csv.trim().split("\n");
const headers = rows[0].split(",");
const data = rows.slice(1).map((row) => {
 const values = row.split(",");
 return Object.fromEntries(headers.map((h, i) => [h.trim(), values[i].trim()])
 );
});
console.log(data);

Frequently Asked Questions (FAQ)

  • Does this tool upload my files to a server?

    No. All file parsing and conversion runs in your browser using JavaScript. Your data stays on your device. A.Tools never receives, stores, or transmits your file contents.

  • What Markdown table formats are supported?

    The tool supports standard pipe-delimited Markdown tables following the CommonMark specification, including tables with or without leading/trailing pipes and alignment indicators.

  • Should I use comma or semicolon as the delimiter?

    Use comma for English locales. Use semicolon for European locales (German, French, Spanish, Italian) where the comma is the decimal separator. If numbers in your data use commas for decimals, semicolon prevents incorrect column splitting.

  • What does UTF-8 BOM do?

    It adds a 3-byte header (EF BB BF) to the start of the file that tells Microsoft Excel to use UTF-8 encoding. Without it, Excel may misinterpret accented characters and non-Latin text. Enable it when the CSV will be opened in Excel.

  • When should I enable Double Quote Wrap?

    Enable it when values might contain the delimiter character, double quotes, or newlines. This is the safest option and ensures RFC 4180 compliance. Disable it only when you are certain all values are simple, delimiter-free strings.

  • What are Row Prefix and Row Suffix for?

    They add custom text before and after each row. Use them to generate SQL statements (prefix: INSERT INTO t VALUES (, suffix: );), wrap rows in parentheses or brackets, or add any custom formatting your target system requires.

  • What is TSV format?

    TSV (Tab-Separated Values) uses a tab character instead of a comma. Select Tab as the Value Delimiter to produce TSV output. TSV is common in Unix pipelines, browser clipboard data, and bioinformatics.

  • Can I edit the table before converting?

    Yes. After parsing, the full table editor lets you modify cells, add or remove rows and columns, transpose, deduplicate, change text case, and find-and-replace values.

Featured Tools

Featured tools that you might find useful.

Popular Tools

List of popular tools that users love and frequently use.

New Tools

The latest tools added to our collection, designed for you.

Topics

The tools grouped by topics to quickly find what you need.
Free online JSON to CSV converter. Paste or upload JSON data and get formatted CSV instantly — no upload, 100% private. Supports custom delimiters, UTF-8 BOM, and JSON code editor.

JSON To CSV

Free online JSON to CSV converter. Paste or upload JSON data and get formatted CSV instantly — no upload, 100% private. Supports custom delimiters, UTF-8 BOM, and JSON code editor.
Free online Excel to JSON converter. Transform XLSX, XLS, XLSM files into JSON arrays, objects, or keyed formats instantly in your browser — no upload, 100% private.

Excel To JSON

Free online Excel to JSON converter. Transform XLSX, XLS, XLSM files into JSON arrays, objects, or keyed formats instantly in your browser — no upload, 100% private.
Free Excel to CSV converter. Convert XLSX, XLS, XLSM to CSV instantly in your browser. No upload, 100% private. Edit, transpose, deduplicate before exporting.

Excel To CSV

Free Excel to CSV converter. Convert XLSX, XLS, XLSM to CSV instantly in your browser. No upload, 100% private. Edit, transpose, deduplicate before exporting.
Free online Excel to SQL converter. Generate CREATE TABLE and INSERT statements from spreadsheets for MySQL, PostgreSQL, SQLite, and SQL Server. Supports batch insert, primary keys, and type inference.

Excel To SQL

Free online Excel to SQL converter. Generate CREATE TABLE and INSERT statements from spreadsheets for MySQL, PostgreSQL, SQLite, and SQL Server. Supports batch insert, primary keys, and type inference.