YAML Validator & Linter
Paste YAML to validate syntax, scan for config safety issues, and check built-in schemas (Kubernetes, Helm, Compose, GitHub Actions, GitLab CI, CircleCI, Ansible, OpenAPI / Swagger) — with the parsed JSON as output. Everything runs in your browser.
Auto-validates as you type. Ctrl+Enter to re-run.
Need to validate against your own JSON Schema? Use the JSON Schema Validator.
Guide & FAQ
Validate any YAML file — Kubernetes manifests, Helm values, GitHub Actions workflows, GitLab CI configs, Docker Compose files, Ansible playbooks, or application configs — against a strict YAML 1.2 parser. The validator pinpoints the exact line and column of each syntax error, explains the cause, and runs entirely in your browser so internal configs never leave your machine.
What it does
- Parses YAML with a YAML 1.2-compliant parser and reports parse errors with line/column.
- Catches indentation mistakes (tabs, off-by-one spaces, misaligned mappings).
- Detects quoting issues, unclosed strings, and unescaped special characters.
- Supports multi-document YAML (separated by
---) and reports per-document errors. - Confirms valid YAML with a structured preview of the parsed tree.
- One-click handoff to JSON ↔ YAML Converter, JSON Formatter, or Kubernetes Manifest Helper.
When to use it
- Catch a broken Kubernetes manifest before
kubectl apply. - Validate a GitHub Actions or GitLab CI file before committing.
- Confirm a Helm
values.yamlparses beforehelm install. - Verify a Docker Compose file before
docker compose up. - Lint an Ansible playbook for YAML errors separately from semantic errors.
- Spot-check pasted YAML from a ticket, doc, or chat reply.
How to use it
- Paste your YAML into the editor (or load it from clipboard / file).
- Validation runs automatically — the status bar shows valid, or the exact error with line and column.
- Click the error to jump to the offending line in the editor.
- Fix indentation / quoting / structure and re-run; the parsed tree updates on success.
- Hand off the valid YAML to the JSON ↔ YAML converter or a Kubernetes-aware tool for the next step.
Tips & pitfalls
- Tabs are not allowed for YAML indentation — use spaces only (2 spaces is the convention).
- YAML treats
yes,no,on,off,true,falseas booleans — quote them as strings if you mean the literal word. - A leading
0can be parsed as octal — quote IDs like"007"to keep them as strings. - Unquoted strings with
:,#, or&can confuse the parser — quote suspicious values. - Multi-document YAML must use exactly
---on its own line to separate documents.
FAQ
FAQ
- How do I validate YAML online? Paste it into the editor — validation runs automatically and shows any syntax errors with line and column.
- Why does my YAML fail to parse? Most often: tabs used for indentation, inconsistent spaces, missing quotes around strings with special characters, or duplicate keys at the same level.
- Can it validate Kubernetes manifests? Yes for YAML syntax plus built-in Kubernetes schema and best-practice checks. For deeper manifest work, use the Kubernetes Manifest Helper.
- Does it support multi-document YAML? Yes — documents separated by
---are parsed and reported individually. - Is my YAML uploaded? No. Validation runs locally in your browser. Nothing is sent to a server or logged.
- What YAML version does it use? A YAML 1.2-compliant parser, which is what most modern tools (Kubernetes, Helm, GitHub Actions, Docker Compose) expect.
Related guides
Runs locally in your browser. No uploads. Share links use an encrypted URL fragment.