SmartQueryTools

Convert YAML to Markdown Table Online

Convert YAML files to a Markdown table directly in your browser. Copy the output and paste it into any Markdown document.

About converting YAML to Markdown

Converting YAML to a Markdown table is a quick way to document what a YAML file contains. Examples include a table of environment variables in a README, the list of services in a docker-compose-style catalogue, or supported options from a plugin registry. The table reads better in a pull request or wiki than a long block of YAML.

Each record in the top-level list becomes a table row, and the keys become column headers. Keys that appear in only some records still get a column, left empty where they are missing. The table is written in GitHub Flavored Markdown pipe syntax. It renders on GitHub, GitLab, Bitbucket, Obsidian, Notion and most documentation generators, including MkDocs and Docusaurus.

Markdown tables have no nesting. A YAML list inside a record is shown as a JSON array, and a nested mapping as a JSON object. Both get hard to read, so flatten them first or leave those keys out. Multi-line YAML strings keep their breaks as <br> inside the cell, and pipe characters in values are escaped. Only the first 1,000 records are included. A table that long is rarely readable in documentation anyway.

Worked example

A small orders export with an ID, a customer name, a date, an amount (one missing) and a true/false flag, converted with the default settings.

Input (YAML)

- order_id: 1001
  customer: Acme Ltd
  order_date: '2026-03-02'
  amount: 249.5
  shipped: true
- order_id: 1002
  customer: Brightside Co
  order_date: '2026-03-02'
  amount: 1200
  shipped: false
- order_id: 1003
  customer: Acme Ltd
  order_date: '2026-03-05'
  amount: 89.99
  shipped: true
- order_id: 1004
  customer: Northwind
  order_date: '2026-03-07'
  amount: null
  shipped: false

Output (Markdown)

| order_id | customer | order_date | amount | shipped |
| --- | --- | --- | --- | --- |
| 1001 | Acme Ltd | 2026-03-02 | 249.5 | true |
| 1002 | Brightside Co | 2026-03-02 | 1200 | false |
| 1003 | Acme Ltd | 2026-03-05 | 89.99 | true |
| 1004 | Northwind | 2026-03-07 |  | false |

What changes when you convert YAML to Markdown

  • The header row lists every key found, followed by a | --- | separator line.
  • Each YAML record becomes one row between pipes.
  • Missing keys and null values leave the cell empty, as for order 1004's amount.
  • Line breaks in block scalars become <br>, and | in a value becomes \|.
  • A YAML list such as [a, b] is shown as a,b in a single cell.

Your file is processed locally in your browser and is never uploaded. The free limit is 50 MB per file; larger files work if your device has the memory for them.

Frequently Asked Questions

Can I document a YAML config file this way?

Only if it is a list of similar entries. A config file whose top level is a mapping becomes a single, very wide row. For those, a hand-written key and description table is usually clearer.

How are YAML lists shown in the Markdown table?

Each list is written as compact JSON in one cell, so tags: [api, beta] appears as ["api","beta"]. Edit the cell text afterwards if you want plain words.

Are YAML comments turned into table notes?

No. Comments are removed when the YAML is parsed. If your comments document each option, copy them into a description column by hand.

What is Markdown format?

Markdown is a lightweight plain-text format that renders as formatted content. Markdown tables can be embedded directly in README files, wikis, documentation sites, and any tool that supports CommonMark or GitHub Flavoured Markdown.

Related Tools