ToolFeather
Developer / SEORuns in your browser

YAML to CSV Converter

Flatten YAML into a spreadsheet: each list item becomes a row, nested keys become dotted columns like address.city, and lists of values are joined into one cell.

Quick presets

YAML to CSV Converter

YAML
CSV

Table preview –

Runs in your browser — nothing you enter is uploaded or stored.

ToolFeather · YAML → CSV
Scratchpad auto-saved
Stored in this browser (localStorage)
Step-by-step~40s read

How it works — in four simple steps

No signup and nothing to install — it all runs in your browser.

1

Add your YAML

Paste it into the left box, press Open file, or drag a .yaml file onto it. Sample loads a realistic example.

2

Set the options

Adjust the options above the boxes — the output updates instantly as you change them.

3

Check the result

Read the status line: it reports rows, keys and any value that couldn't be represented in CSV.

4

Copy or download

Copy the CSV or download it as a .csv file. Nothing was uploaded at any point.

Pro tip

Several lists in one file? Use YAML to JSON, then JSON to Excel to get one sheet per list.

Features

Nested data flattened

Nested objects become dotted columns (address.city), and arrays of plain values are joined so every row fits the grid.

Any output delimiter

Comma for most tools, semicolon for European Excel, tab or pipe when your data is full of commas.

Opens cleanly in Excel

Add a UTF-8 byte-order mark so Excel on Windows shows accents, ₹, € and emoji correctly instead of mojibake.

Quoting control

Quote only the fields that need it (RFC 4180 minimal) or every field for strict importers.

Private by design

Parsing and conversion run in your browser with JavaScript — your data is never uploaded, logged or stored.

About the YAML to CSV Converter

YAML is great for humans writing configuration and data, but when you need to review, sort or share that data, a spreadsheet is easier. This converter finds the list in your YAML — the document itself if it's a list, or the first list inside a top-level map — and turns each entry into a row.

Nested maps are flattened into dotted column names, so address: {city: Pune} becomes an address.city column. Lists of plain values (tags: [a, b]) are joined with semicolons in one cell, and lists of maps are kept as JSON text so no data is dropped. The column set is the union of all entries, so keys that only appear on some entries still get a column, and the table preview shows exactly what you'll download.

The CSV follows RFC 4180 quoting. For Excel, choose semicolons if your regional settings use a decimal comma, and tick UTF-8 BOM so non-ASCII characters display properly when you double-click the file.

Examples

A host inventory in YAML: a list of servers with nested specs and a tag list.

YAML input
hosts:
  - name: web-1
    ip: 10.0.0.11
    spec: { cpu: 4, ram_gb: 8 }
    tags: [web, public]
  - name: web-2
    ip: 10.0.0.12
    spec: { cpu: 4, ram_gb: 8 }
    tags: [web]
  - name: db-1
    ip: 10.0.1.5
    spec: { cpu: 8, ram_gb: 32 }
    tags: [db, private]
    backup: daily
CSV output
name,ip,spec.cpu,spec.ram_gb,tags,backup
web-1,10.0.0.11,4,8,web; public,
web-2,10.0.0.12,4,8,web,
db-1,10.0.1.5,8,32,db; private,daily

This output was produced by the converter on this page with the default options — load it with the “Inventory” preset above and change any option to see the effect.

How YAML maps to CSV

In YAMLBecomes in CSV
List itemone row
name: Adacolumn name
Nested address: {city: Pune}column address.city
tags: [a, b]cell a; b
List of maps inside an itemJSON text in one cell
Missing key on an itemempty cell
~ / nullempty cell

Things that trip people up

YAML vs CSV at a glance

PropertyYAMLCSV
SpecificationYAML 1.2.2 (2021)RFC 4180 (2005)
File extension.yaml / .yml.csv
Media typeapplication/yaml (RFC 9512)text/csv
Data typesstring, int, float, bool, null, map, sequence (+ dates in many parsers)text only — every cell is a string
CommentsYes #No
NestingUnlimited (indentation)None (flat rows)

Frequently asked questions

5 answers
Which part of my YAML becomes the CSV rows?
If the document is a list, each entry is a row. If it's a map, the first list found inside it is used, and a map without any list becomes a single row.
How are nested YAML keys handled?
They become dotted column headers, such as address.city. Untick Flatten nested keys to keep nested maps as JSON in one cell.
Can I open the CSV in Excel?
Yes. Tick UTF-8 BOM for correct accents, and choose semicolons if your Excel uses commas as decimal separators.
Can I convert an Ansible inventory or Kubernetes YAML?
Yes, as long as it contains a list — for example a list of hosts or containers. Each list entry becomes a row with its nested settings as dotted columns.
Is my data uploaded anywhere?
No. The YAML is parsed and converted by JavaScript in your browser tab; nothing is sent to a server, so it is safe for internal exports, customer lists and configuration files with secrets.