June 4, 2026
How to tell exactly what changed in an n8n workflow
Something in your n8n workflow is different and you can't tell what. This is one of the most frustrating parts of running n8n: because saving overwrites the previous version, there's no built-in way to ask "what changed since last week?" Here's how to actually get a readable answer.
Why n8n makes this hard
n8n stores a workflow as one current state. Save, and the prior version is gone — no commits, no history, no diff. So to compare versions you need two snapshots of the JSON: an earlier one and the current one.
And you can't just text-diff the two files. Raw n8n exports are full of noise: node position coordinates change when you drag things around, pinData and timestamps churn, and key ordering shifts. A plain diff drowns the real change in cosmetic ones.
The trick: canonicalize, then diff by node
To get a meaningful diff, you want to:
- strip the noisy fields (positions, pinned data, volatile metadata),
- match nodes by their stable
id(so a rename reads as a change, not a delete + add), - and compare the meaningful parts: parameters, credentials, type/version, connections, active state.
Do that and you get something useful: "HTTP Request — parameters changed; 1 node added (Slack); workflow deactivated" instead of a wall of red and green JSON.
The fastest way to do it
If you already have an earlier export, paste it and the current version into the free n8n workflow diff tool. It does exactly the canonicalize-and-diff-by-node thing above, in your browser, with no signup — and tells you what changed in plain English. Node positions are intentionally ignored, so moving things around doesn't show up as a change.
Doing it on every change, automatically
The diff tool answers "what changed?" when you already have two versions to compare. The harder problem is having that earlier version at all — which means capturing a snapshot on every change, automatically, before you need it.
That's what Keeldoes: it snapshots and diffs every workflow change as it happens, keeps the history, and alerts you — so "what changed?" always has an answer already attached, and you can roll back to a known-good version in one step. See n8n version control for more.