CSV to Markdown Converter
READMEs, pull request descriptions and documentation sites render Markdown tables beautifully, if you can be bothered to hand-write the pipes and dashes. This converter reads a CSV, takes the first row as the header, and emits a GitHub Flavored Markdown table with the correct separator row. Every cell comes surrounded by | delimiters, ready to paste into a README or pull request description.
How the table is built
-
1
Paste the CSV
Defaults to a three-column sample; swap it for your own data.
-
2
Choose the delimiter
Comma by default. Choose tab, semicolon or pipe from the list to match your data.
-
3
Row 1 is the header
The first row is emitted as the Markdown header, followed by the required `| --- | --- |` separator line.
-
4
Rows padded to width
If a data row has fewer cells than the header, the converter pads with empty strings to keep the table rectangular.
Rendering, alignment and where it will and will not work
GitHub Flavored Markdown (GFM) tables are widely supported but not universal. Knowing where they render is the difference between a crisp README and a wall of pipes.
Supported in
- GitHub, GitLab, Bitbucket pull requests and wikis
- Most static site generators (Docusaurus, VitePress, MkDocs Material)
- VS Code Markdown preview
- Notion (via paste-as-markdown)
Not supported in
- CommonMark without the GFM extension
- Reddit (uses its own subset)
- Some legacy wiki engines (DokuWiki, MoinMoin)
Column alignment
GFM tables support left, center and right alignment via colons in the separator row. This converter emits plain --- separators; if you need alignment, post-process:
| Syntax | Effect |
|---|---|
:--- |
Left-align |
:---: |
Center-align |
---: |
Right-align |
Find-and-replace the separator line with | :--- | :---: | ---: | matching the columns you want to tilt.
Quoting characters in Markdown cells
- Pipe characters (
|) inside a cell must be escaped as\\|to avoid splitting the cell. The converter does not escape them automatically, so pre-clean if your data contains pipes. - Newlines inside a cell break GFM rendering. Replace them with
<br>before conversion if you want soft line breaks inside a cell. - Asterisks, underscores and backticks pass through; they get interpreted as Markdown emphasis or code. Escape with a leading backslash if you want them literal.
Frequently Asked Questions
Not by default, the separator row is plain ---. Replace it with :---, :---: or ---: after conversion to pin the column left, center or right.
Escape them with a backslash before conversion, turning | into \|. Otherwise the Markdown renderer treats them as column separators and breaks the table.
GFM tables render on GitHub, GitLab, most static site generators and VS Code. They do not render on plain CommonMark, Reddit or some legacy wikis without a plugin.
Yes, the CSV is sent to our server so the converter can build the table. It is not stored and it is not added to the page link.
Related Tools
ASCII Table Reference
Full ASCII table from 0 to 127 with decimal, hex, octal, binary, standard names and HTML numeric-reference notation, including NUL, LF and DEL.
HEX Color Picker
Pick or enter a HEX colour and get RGB, HSL, approximate CMYK, relative luminance and contrast ratios against white and black.
Color Palette Generator
Generate monochromatic, analogous, complementary, triadic or tetradic color palettes from a base HEX color and export copy-ready CSS variables.
HTML Character Reference
Searchable list of HTML entities, their named and numeric codes, and a one-click copy for special characters and symbols.
JSON Formatter
Paste JSON to pretty-print with 2 or 4 spaces, minify it to compact output, or run a quick syntax check before copying the result.
Phone Validator
Validate phone numbers by country, detect the region and type, and normalize valid numbers to E.164, international, national and RFC 3966 formats.