When you move email hosting, the messages already in each mailbox need to come across too. imapsync copies mail directly from one IMAP server to another, mailbox by mailbox, and can be re-run to catch anything that arrived since the last copy. It is the standard tool for a clean email migration.
imapsync logs in to the old server and the new server at the same time and copies folders and messages from one to the other. Because it works over IMAP, it preserves your folder structure, read/unread status, and flags. Re-running it copies only what is new, so you can do a bulk copy early and a quick final sync at cutover.
Install imapsync on a machine that can reach both servers, then run:
imapsync \ --host1 old-server.com --user1 user@yourdomain.com --password1 'oldpass' \ --host2 new-server.com --user2 user@yourdomain.com --password2 'newpass'
It reports progress per folder and finishes with a summary of messages transferred.
For a full domain, prepare a list of accounts with their credentials and loop imapsync over each one. Create the mailboxes on the new server first so there is a destination to copy into.
Copy everything a day or two early, then, at cutover: run imapsync once more per mailbox to catch new mail, switch the domain's MX record to the new server, and confirm new mail is now delivered there. Because the low-TTL step (see the DNS TTL guide) makes the MX change propagate quickly, the gap is minimal.
Spot-check a few mailboxes on the new server: confirm folder counts match, recent messages are present, and the client connects with the new settings.
Email migration is part of the free migration included with SoftSys managed VPS plans - our team runs the mailbox sync and coordinates the MX cutover for you, so no mail is lost or bounced.