Getting started with DriftSync
DriftSync moves WordPress configuration and content between environments as a reviewable release. You export a bundle, preview a dry-run diff, apply it with a snapshot, and roll back in one click. No code runs — it is plain JSON, applied by DriftSync itself.
What DriftSync is
Most sync and migration tools either overwrite the whole database or execute code you have to trust. DriftSync takes a different approach: it treats a set of configuration and content changes as a reviewable release. Everything you are about to change is shown to you first, applied only when you approve it, and captured in a snapshot so it can always be undone.
That makes it safe to promote settings from staging to production, keep a fleet of sites in step, or hand a change off to a teammate for review — without SFTP, database dumps, or a code deploy.
Install DriftSync
DriftSync is free and distributed on the WordPress.org plugin directory, so you can install it straight from your dashboard:
- In your WordPress admin, open Plugins → Add New and search for DriftSync.
- Click Install Now, then Activate.
- A DriftSync entry appears in the admin sidebar. Open it to reach the export, apply, and History screens.
Note
The free plugin covers the full local loop — export, diff, apply, snapshot, and rollback — on a single site. You never need an account to use it.The core loop
Every change in DriftSync follows the same five steps:
- Select — pick exactly what to sync: options, menus, widgets, and content.
- Dry-run diff — preview every add, change, and removal before anything is written.
- Snapshot — DriftSync captures the current state of everything the change touches.
- Apply — the approved changes are written, and only those changes.
- Audit — the release is recorded in History, ready to review or roll back.
Exporting a bundle
A bundle is a single portable JSON file describing what you chose to sync. On the export screen you tick the options, menus, widgets, and content you want, and DriftSync writes them into one file you can download or hand to another site.
{
"driftsync": "1",
"created": "2026-07-23T10:04:00Z",
"select": {
"options": ["blogname", "blogdescription", "permalink_structure"],
"menus": ["primary"],
"widgets": true
},
"redactions": ["mailchimp_api_key", "smtp_password"]
}Because a bundle is just JSON, you can commit it to version control, attach it to a ticket, or diff two bundles by eye. Nothing in it executes — it is a description of desired state, not a script.
Previewing the dry-run diff
Before applying anything, DriftSync shows a dry-run diff: a field-by-field comparison of what is on the target site now versus what the bundle would set. Additions, changes, and removals are all listed. Reviewing the diff writes nothing to the database — it is purely a preview, so it is always safe to run.
Important
Nothing is written until you explicitly apply. Closing the dry-run diff leaves the target site completely untouched.Handling conflicts
When a value already exists on the target and differs from the bundle, DriftSync flags it as a conflict and lets you decide how to resolve it, per item:
- Skip — keep the target's current value and leave it unchanged.
- Overwrite — replace the target's value with the one from the bundle.
- Merge — combine the two where the field supports it, such as list-like settings.
Snapshots and one-click rollback
Every apply is preceded by a snapshot of exactly what the change touches. If a release turns out wrong, open History, find the entry, and roll back in one click — DriftSync restores the snapshot and returns the site to its previous state. There is no separate backup step to remember.
Secret and URL redaction
When you export, DriftSync detects secrets — API keys, passwords, tokens — and known environment URLs, and holds them back rather than blanking them out. The bundle records that a value was redacted without leaking it, and without destroying the value on the source site. On apply, redacted fields are left for you to fill in on the target, so a staging key never overwrites a production one.
Note
Redaction is on by default. It keeps bundles safe to share and store, while preserving the diff so you can still see that a secret would change.Going further with Pro
The free plugin runs the whole loop on one site with file-based bundles. DriftSync Pro adds the pieces teams need to operate at scale:
- Direct site connections — push a release straight to another site, no manual file handoff.
- Multi-site fan-out — apply one release across many sites at once.
- A team library — a shared, versioned home for your bundles.
- DriftSync Cloud — a control plane for scheduling, approvals, and audit across your whole fleet.
See features for the full breakdown, or head back to the documentation home.