A client contacted me two weeks after we’d transferred her site to a new hosting company to tell me she was having problems receiving her email. After a lot of digging, half a dozen test emails sent into a void, and one very helpful and prompt customer service representative, we discovered the MX settings from her old account had been transferred to the new account.
MX is short for “mail exchange” records, which are a bit of technical voodoo that you probably don’t need to know about unless you’re a system administrator. You can read the Wikipedia entry on MX records for more info. In this case, the MX configuration was pointed toward the old host’s mail servers, which is why messages weren’t coming into the new host.
The MX records were transferred to my client’s new account because we used cPanel, a popular site management program, to do a full site move. Normally when I transfer a client’s site to new hosting, I manually pick and choose what to move over, zipping files and uploading and downloading things via FTP. In this case, the client’s site was so huge and had so many email accounts that we transferred the site via cPanel. When you move a site from cPanel to cPanel, tricky settings like MX records get ported over.
So, if you ever do a cPanel to cPanel move, double check you MX settings! You can do so by going to MX Toolbox and entering the domain name you want to check. The good news in this case was that all the missing emails were available on the old hosting account, so no message were lost, though they were delayed.