WordPress Migration Plugin DB & Files – WP Synchro


Complete Migration Plugin for WP professionals

The only migration tool you will ever need as a professional WordPress developer.
WP Synchro was created to be the migration plugin for developers, with a need to do customized migrations or just full migrations.
You need it done in a fast and easy way, that can be re-run very quickly without any further manual steps, like after a code update.
You can fully customize which database tables you want to move and in PRO version, which files/dirs you want to migrate.

A classic task that WP Synchro will handle for you, is keeping a local development site synchronized with a production site or a staging site in sync with a production site.
You can also push data from your staging or local development enviornment to your production site.

WP Synchro FREE gives you:

  • Pull/push database from one site to another site
  • Search/replace in database data (supports serialized data ofc)
  • Handles migration of database table prefixes between sites
  • Select the specific database tables you want to move or just move all
  • Clear cache after migration for popular cache plugins
  • High security – No other sites and servers are involved and all data is encrypted on transfer
  • Setup once – Run multiple times – Perfect for development/staging/production environments

In addition to this, the PRO version gives you:

  • File synchronization (such as media, plugins, themes or custom files/dirs)
  • Only synchronize the difference in files, making it super fast
  • Serves a user confirmation on the added/changed/deleted files, before doing any changes
  • Customize the exact synchronization you need – Down to a single file
  • Support for basic authentication (.htaccess username/password)
  • Notification email on success or failure to a list of emails
  • Database backup before migration
  • WP CLI command to schedule synchronizations via cron or other trigger
  • Pretty much the ultimate tool for doing WordPress migrations
  • 14 day trial is waiting for you to get started at WPSynchro.com

Typical use for WP Synchro:

  • Developing websites on local server and wanting to push a website to a live server or staging server
  • Get a copy of a working production site, with both database and files, to a staging or local site for debugging or development with real data
  • Generally moving WordPress sites from one place to another, even on a firewalled local network

WP Synchro PRO version:

Pro version gives you more features, such as synchronizing files, database backup, notifications, support for basic authentication, WP CLI command and much faster support.
Check out how to get PRO version at WPSynchro.com
We have a 14 day trial waiting for you and 30 day money back guarantee. So why not try the PRO version?


  • Shows the overview of plugin, where you start and delete the synchronization jobs
  • Shows the add/edit screen, where you setup a synchronization job
  • Shows the setup of the plugin
  • WP Synchro doing a database migration


Here is how you get started:

  1. Upload the plugin files to the /wp-content/plugins/wpsynchro directory, or install the plugin through the WordPress plugins screen directly
  2. Make sure to install the plugin on all the WordPress installations (it is needed on both ends of the synchronizing)
  3. Activate the plugin through the ‘Plugins’ screen in WordPress
  4. Choose if data can be overwritten or be downloaded from installation in menu WP Synchro->Setup
  5. Add your first installation from WP Synchro overview page and configure it
  6. Run the synchronization
  7. Enjoy
  8. Rerun the same migration again next time it is needed and enjoy how easy that was


Do you offer support?

Yes we do, for both free and PRO version. But PRO version users always get priority support, so support requests for the free version will normally take some time.
Check out how to get PRO version at WPSynchro.com

You can contact us at support@wpsynchro.com for support. Also check out the “Support” menu in WP Synchro, that provides information needed for the support request.

Does WP Synchro do database merge?

No. We do not merge data in database. We only migrate the data and overwrite the current.

Where can i contact you with new ideas and bugs?

If you have an idea for improving WP Synchro or found a bug in WP Synchro, we would love to hear from you on:

What is WP Synchro tested on? (WP Version, PHP, Databases)

Currently we do automated testing on 288 different hosting environments with combinations of WordPress/PHP/Database versions.

WP Synchro is tested on :
* MySQL 5.5 up to MySQL 8.0 and MariaDB from 5.5 to 10.7.
* PHP 5.6 up to latest version
* WordPress from 4.9 to latest version.

Do you support multisite?

No, not at the moment.
We have not done testing on multisite yet, so use it is at own risk.
It is currently planned for one of the next releases to support it.


Disyembre 6, 2020
But have to pay a lot per month if want to sync your data too. Got another slow server as a WordPress backup and this works good. It shows gades as it syncs it. Will edit the URL links to match the data. Setting this up would get a block error. After long time found out have to edit apache The /etc/apache2/sites-enabled/000-default.conf and the <Directory edit that. Like on mine looks like this now. <Directory "/mnt/1TB-SSD"> Options Indexes FollowSymLinks AllowOverride all Require all granted </Directory> The AllowOverride was set to none. Just change it to all like here and fixes that problem with WP Synchro. Works very good. -Raymond Day
Mayo 4, 2020
I absolutely love this plugin. It's lightweight, very fast and reliable. Thanks a lot for the latest 1.6 update which has a lot of improvements too!
Read all 23 reviews

Contributors & Developers

“WordPress Migration Plugin DB & Files – WP Synchro” is open source software. The following people have contributed to this plugin.




  • Improvement: When doing file synchronization, make it an option to show a confirmation dialog to the user before continuing, so the user can verify the which files will be added/changed and deleted
    In this release, it is not turned on by default, since it is a new feature. But it can enabled by setting preconfigured migration to custom synchronization and enabling it under ‘File synchronization’
    It is expected to be enabled by default on the preconfigured migrations in one of the next releases
  • Improvement: License key for PRO version can now be saved in code, as a PHP constant. Define the constant WPSYNCHRO_LICENSE_KEY in wp-config.php or the likes, which will override database value
  • Improvement: Ask users for acceptance to send data to wpsynchro.com about the usage of features – No personal data ofc.
    The data sent can always be seen in synchronization logs, for full transparency.
  • Improvement: Database views can now be migrated, in the same way as normal tables
  • Improvement: Improved health check and added a few more checks to it. Also check if using LocalWP on Windows, which has some bugs, that WP Synchro does not like
  • Improvement: Slow hosting setting in Setup menu now also reduces file chunk size per request
  • Improvement: Improved handling of some special characters in filenames for file migration
  • Improvement: Make sure browsers do not autocomplete fields when setting up a sync
  • Improvement: Handle when max_allowed_packet is set to a wrong value
  • Improvement: The table used and created by the plugin is now using more optimized collation
  • Improvement: Added better help to the add installation page, to help users understand what the fields are for and where to get the data needed
  • Bug: When syncing mu-plugins, make sure to do the mu-plugin files last, to make sure dependencies are there
  • Bug: Make sure to migrate user.ini and .htaccess files at the very end, to prevent dependency errors, like loading WAF files etc.
  • Bug: When populating files, do a file_exists just before getting data on it, to prevent problems with files that are created when indexing, but removed when we collect data on it


  • Bugfix: Improve handling of database table charsets/collation and improve error messages, as it was causing problems for some users


  • Improvement: Performance improvement by pushing CURL a bit more
  • Improvement: Clean up for PHP 8.x, so no more warnings and deprecated messages
  • Bugfix: Site url’s are now no longer switched wrongly around on the success/error emails
  • Bugfix: Fix problem with synchronization in WP CLI taking way longer than it should
  • Bugfix: Files synchronization no longer goes into endless loop for certain version of MySQL 8.0.x
  • Bugfix: Fix issue where xmlrpc.php was not synchronized from Yoast SEO plugin, giving fatal error from that plugin
  • Bugfix: Improve error messages when getting SQL errors during database synchronization, such as too long key errors
  • Bugfix: Better handle composite keys in database tables, as it did not move all rows correctly for these tables
  • Bugfix: Show better error messages when license server say no to a synchronization
  • Vanity: Format numbers by WP locale, so thousand separator and decimal character will be less confusing for some


  • Bugfix: Updating REST service definition that is causing PHP notice on WP 5.5


  • Improvement: Added better logging to file population REST service, to better support cases when it is hanging or not progressing
  • Bugfix: Success notification email were sent many times, when using it with WP CLI runs
  • Bugfix: Handle edge case when doing data compression, where some hosting adds header to compressed data, causing error on decompression


  • Improvement: Better support HTTPS to HTTP migrations, where it previously were dependent on browser. It no longer is
  • Improvement: Remove IP validation, as it was causing too much troubles with only minimal value
  • Improvement: Better support for slow hosting or slow connection speed. Can be enabled in “Setup”
  • Improvement: Better uninstall hook that cleans up the database and files like a good little plugin
  • Improvement: Only keep 20 database backups and logs at any point, to prevent it taking up space
  • Improvement: Support for basic authentication (.htaccess protected sites) on both ends (PRO version)
  • Improvement: Add hooks for successful and failed synchronizations, for devs to hook into (wpsynchro_synchronization_completed / wpsynchro_synchronization_failure)
  • Improvement: Tries to clean cache for popular cache solutions after a successful synchronization (WP Rocket/WP Super Cache/W3 Total cache/Comet Cache)
  • Improvement: Better handles charset and unknown collations – Will now change charset and collation to recommended for WP (utf8mb4)
  • Improvement: Configure email to send email to on successful/failed synchronization (PRO version)
  • Improvement: Remove option to set debug logging and just make it the default
  • Improvement: Add logo to all headers on all pages
  • Improvement: Massively improved database finalize, doing it chunked instead of in one go, that could create problems on sites with many tables
  • Improvement: Rewrote the file population algorithm, to make it much faster and safer to run (PRO version)
  • Improvement: Added new default database search/replace with urlencoded urls, that is used by some page builder plugins
  • Bugfix: Fix problem when it sometimes try to load a file that does not exist in the free version
  • Other: Bump minimum supported WP to 4.9 from 4.7


  • Bugfix: File population can in certain cases generate REST errors


  • Bugfix: Make multisite error a warning instead, to prevent blocking users that want to use it anyway
  • Bugfix: Make “WP in own dir” error a warning instead of error, improve the path detection and give a more detailed warning message
  • Improvement: Change JSON debug information to also include file paths and remove the general debug data


  • General: Overall improvement of stability and many big and small improvements
  • Improvement: Support for replacing url’s inside json data, such as Elementor templates (wp.org issue)
  • Improvement: Finally full support for all MySQL datatypes
  • Improvement: Support for subdirectory sites
  • Improvement: Search/replaces are now editable and removable, even the default ones
  • Improvement: General improvement of error messages given to the user
  • Improvement: Support for WordPress 5.3, which is just around the corner
  • Improvement: Proper message when doing synchronization from HTTPS site to HTTP site, which Chrome no longer allows
  • Improvement: Added option in “setup” menu to disable IP security check – Can be needed if requests pass multiple server
  • Improvement: Proper warning to user on installation creation, if one of the two sites have overlapping paths
  • Improvement: Add check to make sure database user can create tables in the database
  • Improvement: Implement PSR4 autoloading with composer
  • Improvement: More intelligent support for WordPress in its own directory – Such as Roots Bedrock
  • Improvement: Logs are now rotated and will have max 20 logs at any point – older will be deleted
  • Improvement: Added a button on “Logs” page to remove all the logs
  • Improvement: Making it more clear when a “Installation” is new or being edited
  • Improvement: Better deactivation, that now removes the database tables
  • Bugfix: Try to prevent REST service call periodic timeouts, which we have seen some users having trouble with

** Only showing the last few releases – See rest of changelog in changelog.txt **