Validation · Syntax · Lint
Validate YAML online
Updated: May 2026
Validating a YAML file means ensuring it can be parsed without errors. The most direct method: try converting it to JSON. If the conversion succeeds, your YAML is syntactically correct. If an error appears, its message points to what's wrong.
Free · No upload · Browser-based
Most common YAML errors
- Wrong indentation: YAML is strict about indentation. Mixing spaces and tabs, or using inconsistent indent levels, causes parse errors.
- Unquoted colons: a value like
http://example.commust be quoted because a colon followed by a space is a key-value separator in YAML. - Special characters at value start:
@,`, braces, and brackets have special meaning in YAML — quote them. - Ambiguous boolean values:
yes,no,on,offare interpreted as booleans. Quote them to keep them as strings. - Malformed numbers:
1.2.3is not a valid number — it must be quoted as a string.
Valid vs invalid examples
Invalid YAML (unquoted URL value):
url: https://example.com
Valid YAML:
url: "https://example.com"
Invalid YAML (inconsistent indentation):
key:
child: value
other: error
Valid YAML:
key:
child: value
other: ok
How to validate with Flowfiles
- Paste your YAML in the source area.
- Keep YAML → JSON mode active and click Convert.
- If conversion succeeds, your YAML is syntactically valid.
- If an error appears, read the message to identify the cause.
Frequently asked questions
Does validation check Kubernetes or Docker schema?
No. Validation here is syntactic: it checks that YAML can be parsed. Schema validation (required fields, correct field types) requires a specialized tool like kubeval or conftest.
How do I find which line has the problem?
The error message usually describes the issue type. Look for tabs mixed with spaces, unquoted colons in values, and special characters at the start of values.
My YAML passes validation but Docker rejects it. Why?
Syntactically valid YAML can have an incorrect semantic structure for Docker Compose. Syntax validation and schema validation are two separate steps.