INI to YAML Converter
Convert INI config files to YAML.
or drop a file here
YAML Output
From INI to YAML
INI files store settings as key = value pairs grouped under [section] headers, while YAML is a more expressive, whitespace-sensitive format widely used for modern configuration (Docker Compose, Kubernetes, GitHub Actions). This tool first parses your INI into a structured object — turning each section into a nested map and coercing values to numbers, booleans, or null where appropriate — then serializes that object as YAML with 2-space indentation. Comment lines starting with ; or # are ignored. Everything runs locally in your browser — nothing is uploaded.
Built and maintained by Meet Shah · Last updated
What this tool is used for
- Migrating a legacy INI config into a YAML-based tool or pipeline.
- Turning flat sections into a nested structure that is easier to read.
- Producing a YAML fixture from an existing configuration file.
- Comparing two INI files by converting both to YAML and diffing the structure.
- Modernising configuration during a platform change.
Frequently Asked Questions
- Why convert INI to YAML rather than JSON?
- Because YAML keeps comments as a first-class concept, and configuration files are usually full of them. A JSON conversion discards every comment silently; YAML lets the explanatory text survive the migration.
- Are comments actually preserved?
- Only by round-trip parsers that track them, such as ruamel.yaml. Most converters build a plain data structure and re-emit it, which drops comments — so verify rather than assume if the comments matter.
- What new hazards does YAML introduce?
- Type coercion of exactly the kind INI values invite. An INI value of NO becomes boolean false under YAML 1.1 (the Norway problem), 1.10 becomes the float 1.1, and a value starting with a zero may be read as octal.
- How do sections map?
- Each [section] becomes a top-level mapping key with its entries nested beneath. Dotted section names like [a.b] are ambiguous — they can be one key containing a dot, or two levels of nesting, and converters differ.
- Will indentation cause problems?
- It can, because YAML's structure is whitespace-defined and INI's is not. Values containing newlines must become block scalars, and tabs — legal in an INI value — are forbidden entirely in YAML indentation.
- Should INI values be type-guessed during conversion?
- Cautiously. Converting `1.10` to a number turns a version string into 1.1, and `no` into a boolean changes a country code. Leaving everything as strings is lossless; guessing is convenient and occasionally wrong in ways that are hard to see.
Common errors and gotchas
- Losing the string-only nature of INI values, so YAML infers a number or a boolean where a string was meant.
- Dropping comments, which the INI file may use as its only documentation.
- Assuming one INI dialect for comments, duplicate keys and nesting conventions.
- Producing a value YAML reinterprets, such as `yes`, `off` or a version like `1.10`.
- Treating a dotted key as nesting when the original meant it literally.
Related Converters tools
JSON to YAML
Convert JSON into clean, readable YAML instantly.
YAML to JSON
Convert YAML configuration into valid JSON.
JSON to XML
Convert JSON structures into nested XML markup.
HWB to HEX Converter
Convert an HWB color to HEX.
JSON to SQL
Turn a JSON array of objects into SQL INSERT statements.
CSV to XML
Convert CSV rows into structured XML records.
XML to CSV
Flatten repeated XML records into CSV rows.
INI to JSON
Parse INI config sections and keys into JSON.