YAML Diff Checker

Compare two YAML files or configs side by side. Highlights added, removed, and changed lines — useful for Kubernetes manifests, Helm values, CI/CD configs, and Docker Compose files.

Compare YAML Files and Configs

Paste two YAML blocks to see exactly what changed — line by line, with additions in green, deletions in red, and unchanged lines in context. No file upload, no server — comparison runs in your browser.

  • Line-level diff: Added, removed, and modified lines highlighted with color
  • Side-by-side or unified view: Choose the layout that works best for your screen
  • Whitespace handling: Option to ignore insignificant whitespace differences
  • Large configs: Works with long Kubernetes manifests and multi-document YAML

Common YAML Diff Use Cases

  • Kubernetes manifests: Diff kubectl get deployment myapp -o yaml output before and after a rollout to verify only intended fields changed
  • Helm values: Compare values.yaml between chart versions or environments (dev vs. prod) to catch unintended overrides
  • GitHub Actions workflows: Spot differences in .github/workflows/ files between branches or PRs without full git diff context
  • Docker Compose: Compare docker-compose.yml across environments — verify port mappings, volume mounts, and environment variables
  • Ansible playbooks: Diff playbook YAML between versions to review automation changes before deployment

Related Diff Tools

Frequently Asked Questions

Why does YAML diff show false changes due to formatting?

YAML allows multiple equivalent representations: quoted vs. unquoted strings, flow vs. block style, different indentation levels, and inline vs. multi-line sequences. A diff tool comparing raw text will flag these as changes even if the parsed values are identical. If you're seeing many cosmetic differences, first normalize both YAML documents by converting to JSON and back (which removes formatting variation), then diff the normalized output. The JSON Diff tool handles this well.

Can this tool diff multi-document YAML files (with --- separators)?

Yes — the diff treats the entire pasted content as text, so multi-document YAML (multiple documents separated by ---) diffs correctly as long as both inputs have the same document structure. It's a text diff, not a semantic YAML parse — so structural rearrangements (reordering keys) will show as diffs even if the semantics are unchanged.

Is my Kubernetes config or secret data private?

Yes — all diff processing runs locally in your browser using JavaScript. Your YAML content is never sent to any server. This is particularly important for Kubernetes secrets, credentials, and internal infrastructure configs that shouldn't leave your device.