How to migrate your website away from WP Engine (properly)

I am just as much of a fan of WP Engine as the next person; however, if you try to migrate a website away from them, this is another story. There are a few things you should know so you can plan accordingly.

With a normal web host, I can download a backup, move the MySQL database, and have everything back up and running on a new host within about 10-20 minutes, depending on the SFTP download time. However, on my last migration away from WP Engine, it took me about 2 hours because I ran into a few hitches.

How to properly migrate away from WP Engine

Below are some steps you should walk through to ensure everything goes smoothly.

Slow SFTP

You cannot use WP Engine’s backup feature to transfer your site. The reason is because the backup file excludes a lot of directories and files that you need. For example, they exclude your upload folders…

*/uploads*/2019/
*/uploads*/2020/
*/uploads*/2021/
*/uploads*/2022/
*/uploads*/2023/

You can see a full list of excluded files here: http://wpengine.com/support/restore/. They have a good reason for doing this, and when you are only working within the WP Engine environment, it does make it fast to backup and restore. However, when you are leaving WP Engine, you will need to SFTP your files.

When you download (SFTP) your files from WP Engine, you will discover it is incredibly slow. And that is because they are actually hosting a majority of the files remotely. My site was 250MB, and it took 1 and 1/2 hours on a 70 Mbps connection. If you can, I would recommend asking their support for a full zipped-up download, which should be a lot faster.

Folder permissions

I ran into permission errors on files and folders once I migrated the website to a standard Apache server. If this happens to you, you might want to look at what your current PHP handler is. You might have to switch yours to SuPHP or DSO, depending on which was running on the previous side.

wp-config.php file

WP Engine uses a slightly modified wp-config.php file, located in the root of your WP install. You might end up having to generate a fresh one at your new host. I recommend using the wp-config.php Generator.

wp-config file
wp-config.php

Removing WP Engine remnants

The last thing you have to get rid of is the WP Engine menus in your WP dashboard and the extra unnecessary files. The first folder you will want to delete is the mu-plugins folder, which will be located here: wp-content/mu-plugins

Remove WP Engine from WordPress Dashboard
mu-plugins

You can also remove the two files, .gitattributes and .gitignore. from the root folder.

WP Engine Git Files
git files

The most important file that you will want to remove is the object-cache.php file located in the /wp-content folder. If you don’t, you could very well end up with a blank or white screen when you are migrating to a new host.

wp engine object cache
object-cache.php

You can then also remove the mysql.sql file located in the /wp-content folder. This is used by WP Engine for their automated backups.

mysql.sql file
mysql.sql

Delete the WP Engine administrator account

And last but not least, most WP Engine WordPress sites will have a 2nd administrator user besides their own called “wpengine.” This account is used by their staff to gain access to your admin area to provide support and troubleshooting. This is no longer needed and can be deleted.

remove wpengine user in wordpress
Remove WP Engine user in WordPress

Summary

Hopefully this helps someone and makes your migration process a little quicker. I actually moved to Kinsta, and it’s much faster (by about 2 seconds without caching plugins), and support is beyond comparison. They also don’t overcharge you based on the number of visitors you receive each month. If you are looking for other hosts, check out my list of recommended WordPress hosts.

As always, feel free to leave your comments below.

author bio
Brian Jackson

I craft actionable content and develop performance-driven WordPress plugins. Connect on X, subscribe to my newsletter (once a month), or buy me coffee.

73 thoughts on “How to migrate your website away from WP Engine (properly)”

      • Thanks again, thankfully the only problem I ran into was “Where are these menu links etc. still coming from?” Then I read your article and deleted that MU-plugins directory.

        Reply
  1. I wish I had read this like 6 days ago. I’m moving a client away from WPengine to InMotion hosting. My second choice was Knownhost. This took me way longer then planned, but it was worth it. WPengines caching caused all kinds of site problems in addition to weird URL issues.

    Reply
    • Hey Serge,

      Yes I love WP Engine, but they definitely make it difficult if you ever leave them. They should have better tutorials on their website about problems you might encounter.

      Reply
  2. Pingback: How to Move Away from WPEngine | Across Communications
  3. Pingback: WP Engine Review: Over-Hyped & Over-Priced | The One Hour Startup
  4. Brian, should I change anything in wp-config apart from table_prefix? I am asking because earlier site was hosted with multisite not moving to standalone.

    Reply
    • Sorry for the delay in getting back to you. I think with multisite if I remember correctly simply adds an id on the table_prefix. So you would just want to make sure the table_prefix in your wp-config file matches what is actually in your mysql db. Each sub-site should have sets of tables that correspond to the blog_id in the wp_blogs table.

      Reply
    • Oh great find! I have updated my post above. Yes you can remove the mysql.sql file in the wp-content folder as that is used by WP Engine’s automated backup process. Thanks!

      Reply
      • Hi, I also found a folder called hyperdb on the plugins folder that can be removed and the file advanced-cache.php too. What I am doing is install a fresh wordpress and replace the database and the plugins and themes folder so everything is like is supposed to be on a fresh install without any mod by wpengine. Going to try Kinsta in the future, it looks good. Happy new year!

        Reply
  5. Hey Brian – Thank you SO MUCH for this! You made it so that I wasn’t terrified of the migration :)

    You were right about the slow download times! I didn’t run into a file permissions issue, but I DID have to revert to the wp-config-sample.php file because WP Engine extensively customizes the wp-config.php file. I’m still crossing my fingers on the PHP stuff (that’s totally out of my league), but at first blush it looks like I’ve gotten the site safely migrated.

    FWIW, at this point, I had a tougher time migrating *into* WP Engine than migrating the site away, and it had to do with the uploads folder not copying in correctly. I use A2 hosting, and while they were willing to provide help with migration, it wasn’t as simple as “I’d like my free site migration, please” because WP Engine doesn’t use cPanel.

    i agree that WP Engine should provide at least some documentation for migrating away from them… it would make me more likely to use them in the future (for most of my clients, the cost is prohibitive, but in this case, it wasn’t… *until* she wanted to have two sites. then it was like, well, I can do $30 but not $60).

    Thanks again!

    Reply
    • Np D’nelle :) Thanks for the great comment! Now that you mention it I have also had to generate a fresh wp-config file many times when migrating people away so I just updated the post above. You can see it in step 3.

      Ya I wish WP Engine had more flexible plans cause they really are a great host.

      Reply
  6. Hey so this was pretty helpful, as I’m currently in the process of migrating my site away, but I’m finding that I’m still having so many issues and I think they may still be connected to WPEngine. Basically almost all of my image links are showing up as the wrong file path for some reason, and I can’t figure out how to correct this. On the admin end, everything looks fine, with the right images showing up in the right posts/pages, but when you go to the live site the images are broken. Any idea what this might be/how I could fix it? Any help is appreciated!

    Reply
        • I’m assuming a plugin on your site is generating thumbnails in that location or your theme? Do you happen to have your old site still up on WP Engine to look at the path of the thumbnails on there? My guess is that it is possibly a permissions issue. I’m seeing from your IP your new host is either GoDaddy or MediaTemple? If so I would open up a ticket really quick and have them check permissions on your folder directories. They could be set wrong due to WP Engine. That happened to me once on a migration away from WP Engine.

          Reply
          • No, no longer have the site on WP Engine unfortunately….I am on GoDaddy though, so I’ll do that. Thanks for responding!

  7. Pingback: After migrating away from WP Engine, all of my images are broken. How can I fix this? - Wordpress Helpdesk
  8. Pingback: After migrating away from WP Engine, all of my images are broken. How can I fix this? - Technology
  9. Thanks Brian, you answered my questions and confirmed my fears as I set up this migration process away from WPEngine. Personally I don’t why anyone would want to move away from them but I guess not everyone understands the benefits.

    Reply
    • Hey Jim, thanks for your comment. I know a lot of people have been migrating away simply because they charge you based on visitor counts which is not the greatest. I prefer a host which charges a simply monthly fee or by bandwidth model. Also I migrated away to move to Kinsta which actually is much faster than WP Engine. However all that being said, WP Engine is still a great host and for small business owners I still recommend them because they will never have to worry about their site.

      Reply
  10. Just want to say thanks for the great tutorial. Simple and to the point :) I am migrating my website in minutes :)

    Reply
  11. Thank you for the article. I wanted to add one more thing. If you do the backup via the WP Admin >Tools and use CDN, it does not have all your files. We had many files in /wp-content/uploads and They did not exist in the WP backup. Make sure you grab all your files off their SFTP server. You should also plan on taking some time. The SFTP was very slow. Even over fiber internet, it was slow.

    we do like WPEngine service, but when you are stacked on a server that has adult content on your same IP, not so good.

    Reply
    • I agree. Always grab files via FTP to make sure everything comes over. I also had very slow speeds with their SFTP.

      Ouch, adult content on same IP? That is not good lol :)

      Reply
  12. Hi Brian,

    Great article – the most comprehensive on this topic out there (and I’ve read a few!). I have followed the steps but am getting an “Error establishing a database connection” error. Any ideas what it might be? Or is it possible to hire you to help with this process?

    Many thanks
    Ross

    Reply
  13. Thank you for saving me what I know would have been hours and hours of frustration and hair tearing! Your instructions worked a treat.

    Reply
    • Hey Scott, thanks for your comment. I actually just acquired http://wpseer.com this last weekend and I tried out Updraft Plus when I was moving servers. I was pleasantly surprised with the free version. Great little plugin indeed for backups and quick migrations.

      Reply
  14. I just followed this tutorial to get a site moved off of WPEngine. It seems like it went pretty smoothly, the only issue is that on the new server it runs REALLY slowly, but only if I’m logged in. Looking at the page it’s fine, then I log in and any time I click a new area in the admin section it takes a long time to load. Any idea if this might be related to the site being on WPEngine?

    Thanks, great tutorial!

    Reply
  15. Hey there – hope this comment thread is still being read. Just a note on the 4th Delay – removing the mu-plugins – I am attempting to move away from wpengine to go daddy – There’s a guide here for manual migration and it says not to remove this folder – are you meaning the entire directory or just the plugins relating to wpengine – Refer here to the steps on Go Daddy that mentions not to. https://au.godaddy.com/help/managed-wordpress-manual-migration-12371 – I am staying with wpengine for most of my sites but there’s a few clients who find the fees cost prohibitive unfortunately. So I’m trialling Go Daddy.

    Reply
    • Ok – looking further and comparing to a GD clean install – there’s two plugins specific to GD that they’re referring to – so to add – don’t overwrite the original GD install mu-plugins folder with the one from wp-engine – delete it first before uploading i.e ensure you leave the “gd-system-plugin” folder and the “gd-system-plugin.php” file in place – 5 thousand steps and access via sftp later….!

      Reply
  16. Hi Brian,

    Thanks for a great overview. One question: You noted that the 3rd delay was WP-Config. Was that file slowing down the site, or preventing you from accessing the site successfully.

    In other words, if my site loads, should I still recreate WP-Config.php as you mentioned?

    -Matt

    Reply
    • Hey Matt. I have actually moved a lot of sites away from WP Engine without doing that step. It is only really necessary if your wp-config.php file is a mess. Hopefully that helps!

      Reply
  17. Thanks. I’d forgotten to remove the mu-plugins and clean up all the wp-config.php code. Finally, the migrated away site now works.

    Reply
  18. Really helpful article Brian, thanks for writing it. I’m migrating a few sites away from WPEngine to SiteGround – was scared at first as I thought I’d miss WPEngine’s customer support, but actually SiteGround support blows them away! Plus WAY cheaper and great load times with their Cloud plan too.

    Reply
  19. Hi Everyone. I found this post as we were helping a client move away from WP Engine. WP Engine recently had been compromised and they had forced everyone to make security changes. This along with a host of other issues (I won’t get into them here unless someone asks) left our client uneasy staying with WP Engine.

    This post was very helpful. Since my feedback is in January 2016, you may find a few things different from the original posting.

    1. We did a full backup from WP Engine and the backup file we received included everything we needed including the Uploads folder and content. We did not find this to be a problem.

    2. Folder permissions has not come up as an issue.

    3. The wp-config.php file definitely had to be changed to an original version from Wordpress.

    4. We did ditch the mu-plugins folder.

    5. The .git* files were also ditched as recommended.

    6. The object-cache.php file did not exist in our case, rather a advance-cache.php This might be a change on the part of WP Engine.

    7. The mysql.sql file was removed after we created our own MySQL setup through WHM’s phpMyAdmin.

    All of this helped removed the WP Engine link in the navigation too once you entered WP Admin.

    At present our client’s site is functioning as intended without WP Engine.

    Hope this helps others.

    Reply
  20. Very helpful post. We had to move host’s due to terrible WPengine performance with an ecommerce site and didn’t want to pay their premium for the dedicated servers. Thanks again.

    Reply
  21. Thank you very much for this post. My website’s Theme got broken after a move from WPEngine to SiteGround. Your solutions solved my problem!

    Reply
  22. Just finished a chat with a wp-engine support person. They claim that */uploads*/2012/
    */uploads*/2013/, etc are included in the backup provided in the dashboard. We’ll see. Nonetheless, thank you for this writeup.

    Reply
  23. Thanks. Migrated from WP Engine and was dead in the water. The config.php was the key. Thanks for your post. You saved a lot of time and headache.

    Cheers,
    Steve

    Reply
  24. I’m currently with WPE but have clients who aren’t wanting to pay $99 month. I’ve looked into Siteground but not sure which other hosts you’d recommend thats comparable to WPE. Site speed is crucial.

    Any help would be greatly appreciated.

    Reply
  25. Thanks, Brian. I’m in the process of moving from WPE to SiteGround. I had no problem copying my site (using All In One WP Migrate plug-in), but couldn’t work out how to get rid of the WPE software. Some google-fu brought me to this page, where you had just the info I was looking for. And it was also nice to see you recommending SiteGround. Thanks again, and I’ll be returning to your site in the future.

    Reply
  26. Thanks this!. All I ended up needing to do today was to rename the mu-plugins folder and that eliminated WP Engine from the mix. I had previously 1) installed WP at destination; 2) FTPed all content into wp-content folder; and 3) imported the database via myPHPadmin.

    Reply
    • Went with Cliff’s steps and worked great, installed on windows 2012 server without issues. Glad to be away from wpengine. Renamed directories and cache files as well.

      Reply
  27. Hey Brian,

    I see this article was posted a couple years ago, but it was at the top of my search for ‘Remove WP Engine from Wordpress”. Good job.

    Your article gave me all the clues I needed. Something that made my ‘migration’ easier was an UpdraftPlus backup prior to migration. Probably any other standard WP backup would work, but I’ve used Updraft for a while, it works well. It puts backups of everything (I usually backup to cloud storage) on the current server in zip files so they can be downloaded locally, including the MySQL database and ALL folders and files below public_html.

    When your site is backed up:
    Download the .zip files locally.
    Point your name servers to the new hosting.
    Set up a new empty version of WP.
    Install the backup plugin.
    Upload/Restore all the files.

    Voila.

    Updraft has a migration tool, but if your domain name hasn’t changed, it’s not necessary and the process only takes a few minutes. Actually, even if your domain changes, you can restore, you just have to do a global find/replace on the domain name in the .sql file. That may be a bit daunting for some, but it works.

    THEN I removed all the WP engine junk per your instructions. Thank you very much for the assist!

    – DB

    Reply
  28. This has been so good to see, migrating from WPE has been a nightmare.

    That being said, I cannot for the life of me get the migration to work. I’ve tried manual file downloads and re-up to Godaddy, and the All-in-one import / export and duplicator pro and everything goes off without a hitch…right up until I try to access the site or admin and boom, nothing but some kind of TLS / Security error.

    Anyone see this before or have any tips?

    Reply
  29. Man you are the best. Seriously! I just spent 1 hour with liquid web on the phone trying to figure out what was wrong with a website that I migrated from WP Engine, and we could not figure out. Then I start searching on google how to remove the stuff from Wp Engine. After I did what you mentioned everything was good.

    And now the website loads 2 times faster.

    Thank you for your help!

    Reply
  30. Thanks for this post, a total lifesaver! Two sites I migrated from WP Engine are now loading properly, your guide worked perfectly.

    Reply
  31. Thanks for the tutorial! Removing that mu-plugins was the key for my site migration. Fixed a whole boat load of problems. Cheers!

    Reply

Leave a Comment

4