Glossary · Programming

YAML

YAML is a human-readable data format that uses indentation to express structure and is widely used for configuration files in CI/CD, Docker and Kubernetes.

Updated October 6, 2026

YAML (YAML Ain't Markup Language) is a human-friendly data serialization format that expresses nested data through indentation rather than braces or tags. It can represent the same structures as JSON: maps, lists and scalar values.

Why it matters

YAML is the standard for configuration in tools such as GitHub Actions, Docker Compose, Kubernetes and Ansible. It reads like an outline and supports comments, which JSON does not. The downside is that whitespace is meaningful, so small formatting slips change the meaning or break parsing.

Example

service: web
replicas: 3
env:
  - name: PORT
    value: "8080"
healthcheck:
  path: /health
  interval: 30s

Two spaces per level is conventional. Quoting "8080" keeps it a string instead of a number.

Common mistakes

  • Using tabs for indentation; YAML allows only spaces.
  • Leaving values such as no, on or 1.10 unquoted and having some parsers read them as a boolean or a number.
  • Misaligning a list item by one space and silently changing the structure.

Get notified when this term updates

Plus occasional practical tips on uptime and monitoring, nothing else. Unsubscribe anytime.

This page is general information written by our editorial team and updated when documentation changes. Servers and providers differ, so test changes safely first. See our editorial policy and disclaimer.