YAML Diff

Compare two YAML files by their data, so indentation style, quoting and key order don't get in the way.

Compared on your device. Nothing is uploaded unless you save.

Differences

Paste the original on the left and the changed version on the right. Differences appear here as you type.

Parsed data or raw text?

In Parsed data mode (the default) both files are parsed and re-written in a consistent style before comparing. Differences that don't change the data disappear: two- versus four-space indentation, "quoted" versus unquoted strings, flow style [a, b] versus block lists, and — with Ignore key order — the order of keys. You also get a list of changes by path (for example $.spec.template.spec.containers[0].image).

Comments are not part of the data, so they are ignored in this mode. Switch to Raw text to compare the files exactly as written, comments included.

Good to know

  • Multiple documents separated by --- (common in Kubernetes manifests) are supported; each document becomes an item in a list, so paths start with $[0], $[1]…
  • Anchors and aliases (&defaults, *defaults, <<: *defaults) are expanded before comparing, so you see the effective values.
  • Values are read with the YAML 1.2 core schema, so yes/no stay strings rather than becoming booleans as in older YAML 1.1 parsers, and dates stay as written.
  • If a file doesn't parse, the error and its line number are shown under that box. Tabs used for indentation are a common cause.

Is my data uploaded?

No. The comparison runs in your browser, so nothing you add is sent to gratistools.be. It only leaves your device if you sign in and press Save, which stores that one comparison in your account until you delete it. See the privacy page for details.