ExcelTool.io

YAML to Excel Converter

Paste YAML records or upload a .yaml file and download the data as an Excel workbook.

How to Convert YAML to Excel

  1. Paste YAML or upload a file - .yaml, .yml and .txt are accepted, one at a time or as a batch that returns a ZIP.
  2. Read the summary - it names how many tables were detected and how many rows they hold, or explains why the document cannot be turned into rows.
  3. Download XLSX - one sheet per list of records, with a header row of column names.

Which YAML Becomes Which Sheet

Top-level shapeResult
A sequence of mappingsOne sheet named YAML, one row per item
A mapping whose properties hold sequences of mappingsOne sheet per such property, named after the key
A sequence of scalars, or a mapping of scalarsRejected - there are no records to make rows from
Several documents separated by ---Rejected - the loader reads a single document

In the second shape, properties that are not lists of mappings are skipped rather than failing the whole file, so a config file with a version string at the top and two lists underneath converts into two sheets and quietly ignores the version.

How Fields Become Columns

  • Columns are the union of keys across every record in that list, in the order they are first seen. A record missing a key gets an empty cell.
  • Nested mappings flatten with dots: owner.email, address.city. The nesting depth is unlimited.
  • Lists become JSON text in a single cell, so nothing is silently dropped and the value can be parsed again later.
  • Scalars keep their type - numbers are numeric cells, true and false are boolean cells, null and empty values are empty cells.
  • Unquoted timestamps are the exception: they are parsed as dates and then produce no column at all. Quote them in the source if you need them.
  • Sheet names come from the property key, cleaned of characters Excel forbids and trimmed to 31 characters, with a numeric suffix if two keys collide.

What to Do with a Config File That Is Not a List

Plenty of real YAML is a tree rather than a table: a deployment manifest, a CI pipeline, an application config. There is no honest way to turn a tree into rows without inventing a structure, so the converter refuses instead of guessing. Two practical routes:

  • Convert the part that is a list. If the file has a section that holds repeated records - services, jobs, users, environments - copy that section into the box with its key at the top level, and it converts into a sheet named after that key.
  • Reshape the tree into records. A mapping keyed by name, such as users: {ada: {role: admin}}, becomes a list by rewriting it as a sequence with the name as a field: users: [{name: ada, role: admin}].

The summary line is the fastest feedback loop here: it names how many tables were detected and how many rows they contain as you type, and shows the loader's own error - including the line and column of a syntax problem - when the document cannot be parsed at all.

When to Use a Different Tool

For the reverse direction, Excel to YAML turns a worksheet back into a sequence of records. If your data is JSON rather than YAML, JSON to Excel handles arrays and nested objects, and JSONL to Excel handles one-object-per-line files from logs and data pipelines. A YAML file that is really a configuration tree rather than a list of records has no faithful spreadsheet form - flatten the part you need into a list first.

Frequently Asked Questions

Related Tools