FREE 42 / 42 cross-server migrations passed

Move any WordPress site. Any size. One file.

Back up, restore and migrate your whole site — database, media, plugins and themes — in a single .xhin file. Compressed, verified and resumable, built for sites of 150 GB and more.

Version 1.3.0 WordPress 5.9 – 7.1 PHP 7.4 – 8.5 Free & open source (MIT)
old-host.com
Old server
www.new-site.com
New server
Migration in progress

Packing files

uploads/2026/06/workshop-behind-the-scenes.mp4
46.2%
876.6 MB of 1.43 GB284.6 MB/sabout 2s left17,307 files
Every block verifiedCRC32 on all 2 MB chunks
Resumes after any crashClosed tab? It keeps going
150 GB+sites, no size limit
42 / 42cross-server migrations passed
130,819database rows verified
35popular plugins active, 0 errors
Features

Everything a migration needs.
Nothing it doesn't.

One plugin to back up, restore and move — with the safety of a professional tool and the simplicity of two buttons.

Whole site in one file

Database, media, plugins, themes, must-use plugins, other wp-content — and optionally WordPress core — packed into one .xhin file.

Server-to-server links

Copy a signed, expiring migration link on the old site and paste it on the new one. The new server pulls the backup directly — no downloading to your computer.

Never stops halfway

Work runs in small steps with checkpoints. A killed request, a dropped connection or a closed tab loses seconds, not the job — it continues by itself.

Safe restores

The database is imported into temporary tables and switched in with one atomic step. Your site keeps working until the very last moment.

URLs fixed automatically

Domains and paths are rewritten everywhere — including serialized data, JSON and URL-encoded values — so page builders and shops keep working.

Private & encrypted

Backups get random, unguessable names — safe even on nginx. Add a password for AES-256-GCM encryption of every chunk.

Compressed, lossless

Text and SQL are compressed (zstd when available); images and video are stored byte-for-byte. Zero quality loss, much smaller files.

Real-time progress

Live percentage, speed, time left and the exact file being processed. You always know what's happening.

Scheduled backups

Automatic backups on a schedule with retention, plus full WP-CLI support for very large sites without any time limit.

How it works

Three steps to a new home.

Install the plugin on both sites. That's all the setup there is.

STEP 01

Create a backup

On the old site, choose what to include and press Create backup.

STEP 02

Copy the link

Press Copy link next to the backup — or download the .xhin file if you prefer.

STEP 03

Restore on the new site

Paste the link (or drop the file), choose what to restore and press Restore. URLs are fixed for you.

Built to be trusted

Your live site stays safe the whole time.

  • Atomic switch-overTables are imported in the background and swapped in one RENAME TABLE. If anything fails before that, nothing changes.
  • Verified, block by blockEvery 2 MB block has a CRC32; backups are read back after they're made and checked again on restore.
  • Isolated from other pluginsBackup and restore requests run with other plugins and the theme switched off — a broken plugin can't stop a migration.
  • wp-config.php is never overwrittenYour database credentials and server settings on the new host stay exactly as they are.
Restore in progress — the site keeps working until the last step
Tested everywhere

Every combination. Both directions.

Backup on one server, restore on another, then every file and database row compared — including WordPress and PHP downgrades and MySQL ⇄ MariaDB differences.

Web server

nginxApacheOpenLiteSpeed

PHP

7.48.08.18.28.5

WordPress

5.96.06.26.56.87.1

Database

MySQL 5.7MySQL 8.4MariaDB 10.610.1111.4
42 / 42 migrations passed — 5,544 files and 130,819 rows verified, with the PHP process killed 84 times on purpose.
Full migration with 35 popular plugins active — WooCommerce, Elementor, Yoast, Wordfence, Jetpack… 0 JavaScript errors.
Official WordPress.org Plugin Check: no errors, no warnings. PHPCompatibility clean for PHP 7.4+.
Screenshots

Clean, calm and clear.

A modern interface that lives right inside your WordPress admin.

For developers

Full WP-CLI support.

Very large sites run from the command line with no time limit at all. Script your backups, verify archives and resume jobs.

Terminal
# back up the whole site
$ wp xhin export
# skip parts
$ wp xhin export --without=media
# restore
$ wp xhin import site.xhin --yes
# check an archive
$ wp xhin verify site.xhin
Success: all blocks verified.
Install

Up and running in a minute.

STEP 1

Download

Get the plugin zip — free, no account needed.

STEP 2

Upload

WordPress → Plugins → Add New → Upload Plugin, choose the zip, then Install and Activate.

STEP 3

Open Migration

Find Migration in the admin menu and create your first backup.

FAQ

Questions, answered.

Is it really free?

Yes — free forever and open source under the MIT license. No premium version, no size limits, no account.

Is there a size limit?

No. Everything is streamed in small verified chunks with constant memory use, and uploads go in pieces that fit your server's limits. It's built for sites of 150 GB and more.

What happens if my hosting kills the process?

Nothing is lost. The job continues from the last checkpoint — it was tested with the PHP process killed 84 times on purpose during migrations.

Do I need to change URLs after moving to a new domain?

No. Domains and server paths are replaced automatically, including inside serialized data, JSON and URL-encoded values.

Will it work with WooCommerce, Elementor and my other plugins?

Yes. It was tested with 35 popular plugins active, and backup and restore requests run with other plugins switched off, so they can't interfere.

Are my backups private?

Yes. Backups get random names and job data lives in a hidden folder, so nothing can be reached from the web — even on nginx, where .htaccess doesn't apply. You can also encrypt backups with a password.

Ready to move your site?

Free for WordPress 5.9 and later, PHP 7.4 and later.

Made in Tirana by AppAlbania