YAML is the reference configuration format for modern DevOps tools: Kubernetes, Docker Compose, GitHub Actions, Ansible and many others. Converting JSON to YAML allows you to go from a verbose format to a readable and clean format.

YAML is a superset of JSON (all valid JSON is valid YAML), but YAML uses indentation instead of braces and brackets, and removes quotes around simple strings. The conversion is deterministic: JSON objects become YAML indented blocks, JSON arrays become dash-prefixed lists, primitive values are preserved.

📊 Reference table

JSON Equivalent YAML
{"name": "Alice"} name: Alice
{"port": 8080} port: 8080
{"debug": true} debug: true
["a", "b", "c"] - a - b - c
{"db": {"host": "localhost"}} db: host: localhost

💡 Practical examples

Example 1: transform a Docker Compose config You have a JSON describing your Docker services. Convert it to YAML to get a valid docker-compose.yml file ready to use.
Example 2: generate a Kubernetes manifest Kubernetes manifests (Deployment, Service, ConfigMap) are in YAML. Build your structure in JSON, convert and copy into your .yaml file.
Example 3: simplify reading an API response A JSON API response with many levels of nesting is often more readable once converted to YAML for human review.