How the plugin moves a site
WP Engine's support article covers a plugin that is installed on the existing WordPress site and pushes a copy into an environment you create at WP Engine. Because it is a copy, the old site is still the live site until you change DNS, and anything members do there after the copy starts is not in the WP Engine database unless you sync it again.
WP Engine offers two modes. A full site migration excludes disallowed plugins and other files such as logs, backups, and caches. A customized migration gives more flexibility when migrating: specific files or database tables can be excluded. If your course platform keeps anything outside the usual WordPress content folders, such as a verification file in the web root that a payment or email provider checks for, confirm it arrived on the copy and recreate it manually if not.
Documented requirements and limits
WP Engine says the source and destination environments should meet minimum requirements, and lists the items in the table below. It adds a pointer to check the Limitations section for caveats with multisite, eComm sites and similar cases.
- If a security plugin blocks the REST API on the old site, the migration may not connect; WP Engine says disabling such plugins during a migration can improve the chances of success.
- WP Engine says it has deprecated support for .htaccess files, so any redirects or access rules kept there need to be recreated another way.
- Migrating from a private site using Basic Authentication may prevent a connection from being established.
| Item | What WP Engine documents |
|---|---|
| WordPress | WordPress 5.0 minimum |
| PHP | PHP 7.4 minimum |
| Database | MySQL 8.0 minimum |
| API | WP REST API enabled |
| Browser | A modern browser such as Chrome, Firefox, Safari, Edge; Internet Explorer not supported |
| Multisite networks | Can be migrated if the WP Engine site has been converted to a multisite before the migration |
| Multisite subsites | Individual subsites cannot be migrated using the plugin |
| Excluded in full migrations | Disallowed plugins and other files such as logs, backups, and caches |
Use the second pass to shrink the cutover window
WP Engine says a second migration is not always necessary, but it may be helpful to sync content just prior to pointing the DNS to WP Engine. Second migrations can be completed much faster if you only need to pull updated data: you can select only the changed tables, and use Push media uploads by date to include only new and modified files.
WP Engine's ecommerce migration guide adds a specific procedure. It says your site will need to have a freeze in place to prevent traffic while the migration is finalized and DNS propagates, and recommends you run the migration plugin a second time and keep track of how long the migration takes to complete, so you know how long the final freeze will last. For a membership site, that measured duration is the maintenance window you announce to members.
Protect payments and members on the copy
A migrated copy can still talk to the outside world. WP Engine's ecommerce guide says that if your website makes external API calls, it recommends disabling these on the newly migrated version of your site. For a membership or course site, that includes scheduled renewal charges, outbound emails to members, and CRM syncs that might fire from the copy before it is live.
WP Engine also says not to point DNS until the migration has been completed, and suggests that it's a good idea to place a test order to verify end-to-end functionality. Pair that with a test login as an existing member and a check that course progress matches the old site.
Going live checklist
WP Engine's instruction for going live is to add the domain in the WP Engine User Portal and then point DNS to WP Engine, after you test the site on WP Engine and confirm everything loads as expected.
- Confirm both environments meet the minimums before starting, including the REST API on the old site.
- Run the first migration, then test logins, course progress, member access and a test-mode checkout on WP Engine.
- Disable external API calls and scheduled jobs on the copy until cutover.
- Run a timed second pass so you know the length of the final freeze.
- At cutover: freeze the old site, run the final pass with only changed tables and recent media, add the domain in the User Portal, then point DNS.
- Re-enable integrations on WP Engine and confirm payment webhooks reach the new host.
Questions before you decide
Can the WP Engine plugin move one subsite out of a multisite network?
No. WP Engine states that individual subsites cannot be migrated using the plugin. A whole network can be migrated if the WP Engine site was converted to multisite first.
Why run the plugin twice?
WP Engine says a second migration can sync content changed on the old site just before DNS is pointed, and that it runs much faster when limited to updated data. Timing it tells you how long the final freeze must last.
Sources & verification
Product details and prices can change. Check the linked provider before buying.
- WP Engine: How to Migrate Sites with the Plugin Accessed 13 Oct 2026
- WP Engine: How to Migrate an eCommerce Site Accessed 13 Oct 2026
Sources link directly to providers. Product buttons may use separately labeled affiliate links. Read our disclosure.