Magento 2 Config Diff
Compare two core_config_data exports (SQL INSERT or CSV) and see exactly what changed.

What Magento 2 Config Diff does
- ✓ Accepts core_config_data dumps in two formats: SQL INSERT statements (as mysqldump produces) and CSV with a scope,scope_id,path,value header
- ✓ Plain or gzipped uploads — paste mysqldump output directly or drop a .sql.gz file from a backup
- ✓ Color-coded rows — added (green), removed (red), value changed (amber) — grouped by config path for easy scanning
- ✓ Scope-aware diff — default vs. websites vs. stores rows are kept distinct so a per-store override doesn't masquerade as a default change
- ✓ Export the diff as CSV for Slack/ticket attachments or a follow-up review with the team
- ✓ Saved diffs stored per-account — come back later and compare a third snapshot against the same baseline
How it works
Export the 'before' snapshot
Run `mysqldump … core_config_data` (or `SELECT … INTO OUTFILE` as CSV) against the source environment. Both formats are accepted — gzipped fine.
Paste or upload both sides
Left pane = before, right pane = after. Format auto-detects from the first non-blank line; CSV needs a `scope,scope_id,path,value` header row.
Review and export the diff
Rows are grouped by config path with scope/store context preserved. Download as CSV or save the diff to your account for later runs.
Frequently asked about Magento 2 Config Diff
What input formats are supported? +
Two: SQL `INSERT INTO core_config_data …` statements (the shape `mysqldump` produces) and CSV with a `scope,scope_id,path,value` header. Both can be plain or gzipped.
Why core_config_data and not config.php / env.php? +
Config drift between environments lives in core_config_data — that's where the admin panel writes scope/store overrides. config.php / env.php are infrastructure-level (DB creds, cache backends) and rarely the source of dev/stage/prod divergence.
Does it handle encrypted values? +
Encrypted values appear as opaque ciphertext — the diff flags that they changed, but plaintext is never exposed. Safe to paste a production export.
Is my config stored anywhere? +
Only when you explicitly save a diff to your account. Ad-hoc comparisons are held in memory during the request and discarded after the response is sent.
Does it understand scope-specific config? +
Yes — `default` / `websites` / `stores` rows are diffed at their own scope. A per-store override that matches the default is still flagged so you can see the redundant row.
Can I compare more than two snapshots at once? +
Three-way merge is on the roadmap. Today it's strictly pairwise — but you can save snapshots and re-compare any pair on demand.
Related tools
Every Magento dev tool, in one hosted workspace.
Free to sign up. Nothing to install. Drafts, audits, and projects saved across every tool.