SmartQueryTools

Convert Excel to YAML Online

Convert Excel files to YAML directly in your browser. Download clean, human-readable YAML — no upload required.

About converting Excel to YAML

Spreadsheets are a comfortable place to edit lists: team members, feature flags, test fixtures, redirect rules, glossary terms. When that list has to live in a repository as YAML, for example a Jekyll or Hugo data file, an Ansible vars file or seed data for a test suite, converting the sheet saves hand-typing and indentation mistakes.

The output is a YAML sequence. Each row of the first sheet becomes one mapping, introduced by a dash, with keys from the header row. Strings that another YAML reader could misread are quoted. That includes values like NO, yes, on, 2026-03-02 and 01234. Older YAML 1.1 parsers such as PyYAML would otherwise turn NO into false and 01234 into a number.

Values are taken from the displayed text of each cell, except dates, which arrive in ISO form. Formulas give their cached result, and number formats like currency produce quoted strings. The output is always flat, one level of keys per record. If your target file needs nesting, such as a list of tags under each item, build it in a text editor afterwards, or keep a comma-separated tags column and split it in code.

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 (Excel)

Excel workbook, first sheet (Sheet1)

order_idcustomerorder_dateamountshipped
1001Acme Ltd2026-03-02249.5true
1002Brightside Co2026-03-021200false
1003Acme Ltd2026-03-0589.99true
1004Northwind2026-03-07NULLfalse

Output (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

What changes when you convert Excel to YAML

  • The whole sheet becomes a top-level YAML list, with one mapping per row.
  • Date values are quoted, as order_date: '2026-03-02', so YAML readers keep them as strings.
  • Numbers and booleans are unquoted, for example amount: 249.5 and shipped: true.
  • Empty cells are written as null, as for order 1004's amount.
  • Long text is kept on one line rather than folded.

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

Why are some values in single quotes in the YAML?

They would change meaning if left bare. Quoting keeps dates, codes with leading zeros and words like NO or yes as strings in every YAML parser, including YAML 1.1 parsers that treat NO as false.

Can I produce a YAML mapping keyed by one column instead of a list?

No, the converter always writes a list of records. For a keyed mapping, convert to JSON, reshape it in code, or edit the YAML by hand if the list is short.

Are Excel comments or notes carried into YAML comments?

No. Cell comments, notes and formatting are not read. Only cell values from the first sheet are converted.

Related Tools