Niche Site Migration – 8 Steps To A Quick And Error-Free Transfer Process
Congratulations to you for selling your site(s)!
So you’ve sold your site, offered great post sale support with the migration and you’re thinking “Now what?”. A solid plan, testing and having the right tools can make any migration easy. In this post, I’ll cover the basics of site migration including DB backup and restore, file transfer, testing the new install, and finally domain transfer with any DNS changes.
The Plan
Every good migration should have plan, even for the smallest of sites. If you go in with a basic outline of what needs to be done, you will be better prepared should go something go wrong because you can retrace your steps. For the purposes of this post, I’m going to be using a GoDaddy to GoDaddy sites transfer of AdSenseFlippers.com which is a WordPress site. However, you could apply these tactics to any hosting platform and even across different providers.
The basic outline goes like this:
- Backup your database.
- Get all site files to including the database backup.
- Move all files to the new host.
- Create a new DB, note the details for later, and restore from the backup SQL file.
- Point the WordPress installation to the new DB.
- Test the new installation to make sure everything is working properly.
- Transfer the domain to the new account using updated nameservers.
- Remove the domain from the old hosting account and add it to the new one, pointing it to the correct directory.
In order to make things clear I have included the following screencasts of each step. It’s a lot easier than trying to layout in words exactly where to point and click.
Step 1: Backup Your Database
Backing up your database is pretty simple. There many tools out there for doing this, but I have decided to go directly through GoDaddy as this provides a simple SQL files which we can use to restore to any compatible DB even at a different host. If you are looking for regular backups of your site to be made, I suggest the plugin WordPress Backup to Dropbox.
Here’s my video walk-through of a DB backup at GoDaddy (the sound’s a little low on this one, sorry):
Tools mentioned in this video:
GoDaddy Hosting Control Center
Step 2: Get All Site Files Including The Database Backup
This is the next step in moving all your files to your local machine in preparation for moving them to the new host. There are a number of ways to do this, but I have decided to show the manual way to ensure you understand the process fully. If you have SSH access, you could zip the files and then simply transfer the smaller zip file. However, this requires some technical know-how as well as being familiar with a UNIX command line.
Here’s my video of 2nd step in the migration process:
Tools mentioned in this video:
Step 3: Move all files to the new host
Once you have all the files on your local system, you are ready to move everything over to the new host. This is essentially the opposite of Step 2, but I have provided a video for the sake of completion. again, you could use SSH access and a zip file to do things faster, but it is a bit more complicated.
Here’s my video on transferring file to the new host:
Step 4: Create A New DB And Restore From The Backup SQL File
In this step I will lead you through creating the new DB via the GoDaddy interface and restoring from the backup SQL file. It’s also import to note the DB details, like name, host, user, and password. We will need these details later when connecting WordPress to our database.
Please note that database creation varies greatly from one host to another. Still, the fundamentals should be the same. If you are with a provider other than GoDaddy, contact tech support directly for a walk-though on how to setup a new DB and restore from an SQL file.
Here’s the video on Step 4:
Step 5: Point The WordPress Installation To The New DB
Now we have to tell our new installation of WordPress where the new database is and what the credentials are. This requires editing the wp-config.php file (easier than it seems) and replacing it with the one on the server. My video shows only the editing of the file, but I think you can figure out how to replace the edited wp-config.php file with the one on the server. Note that you could do this step before moving everything over to the new host.
Here’s the video:
Tools mentioned in this video:
Step 6: Test The New Installation
Testing the new installation can be done in one of 3 ways:
- If you have a primary domain on the new hosting system, go to primarydomain.com/subfolder where subfolder is the location you put the files in step 3. This will lead to some broken links and an ugly site, but will at lest tell you if the DB is connected correctly and WordPress is installed properly
- Another way to use your primary domain is by creating a subdomain, as in test.primarydomain.com. Then point that subdomain to the directory from step 2 and you site will look pretty good. Links will still refer to the live site and some images may not work.
- The best way to test a migrated installation is by tricking your local computer into thinking the site is already on the new server. We can do this by editing the hosts file and pointing the domain to the new IP. Unfortunately, this won’t work in GoDaddy’s shared hosting environment as you cannot add the same domain to two separate hosting accounts (even if you own both of them). However, this is a great way to test if you are coming from a different provider and your site will be completely operational in this mode as if it were already moved.
Here’s a brief video on the 3 ways to test a migration:
Tools mentioned in this video:
Step 7: Transfer The Domain To The New Account
Note: It’s debatable whether step 7 or step 8 should be done first. We decided to present step 7 first as testing should ensure there are no problems with this install. However, to be 100% certain, you may want to point the domain to the name servers of the the new account and then do step 8. If everything works, come back to step 7 and complete the transfer.
Transferring a domain is pretty common these days and companies like GoDaddy have made it relatively easy to move domains from one account to another. One word of caution, if you are moving the domain to an account out of your control be sure you have money in hand and everything is working because once you authorize the transfer, there is no getting it back.
Two things that I think may be a little unclear in this video:
- The receiving GoDaddy account will receive an email once the account change is initated. They will need to follow these directions to complete the transfer.
- When moving from one registrar to another, you will need to pay the new registrar an incoming transfer fee. In most cases the new registrar will also include a free year of registration in the transfer fee, plus whatever time was left from the existing registration.
Here’s my video overview of step 7, the domain transfer process:
Tools mentioned in this video:
Purchase a GoDaddy Domain Transfer
Transferring a domain to GoDaddy from another registrar
Transferring domains from GoDaddy to another registrar
Moving a domain from one GoDaddy account to another
Step 8: Remove The Domain From The Old Hosting Account And Add It To The New One
Whew, we’re almost done! The last step in the migration process involves removing the domain from the old host and adding it to the new host. If you are moving from GoDaddy to another provider you can skip the removal process, it’s only necessary because GoDaddy has a single domain policy across their entire shared hosting environment.
After completing this step and verifying the new live site is working, you might want to take some time to cleanup you old server by deleting the old files and DB. If you deal with lots of sites, leaving to many files or DBs around can really slow things down. Just be sure to have a local backup in case things go wrong.
Here my walk through on step 8:
Tools mentioned in this video:
If you liked this post and would like to see more like it, please promote it socially below! Do you have any suggestions for a smooth migration? Any questions that you would like answered? Perhaps you have found a tool that makes things easier. Please share!
Discussion
Hi Flippers,
I have just sold my first site on flippa.
It sold for 17k so I am obviously quite nervous about the whole transfer / payment process.
I am using escrow.com through flippa.
Once the buyer has put the entire payment in escrow do I then complete the entire transfer including the domain before they release the payment?
Or do I do everything except transfer the domain, ask for the release in payment then transfer the domain last?
Or is there a better % breakdown that I should ask for before / after completing each step?
Does escrow.com allow the ability to release a portion of the payment at set milestones, and can you add funds / add extra milestones after the job has been started?
Thank you for any advice you are able to provide.
Nick, in over 100 transactions we have never had a customer or auction winner request to use Escrow.com. However, I have heard their service is good and reliable.
So I wouldn’t be able to comment on the exact process over there. You should probably get in touch with support and make sure you have the steps locked down before doing anything, especially with such a large transaction.
I don’t remember all the details but I sold a domain about 5 years ago. The buyer requested to go through escrow.com and everything went off without a hitch.
Thanks for this post, the timing is perfect as my first website is now ranking and I’m getting traffic and clicks. I want to sell it to move onto the next one and streamline the process. I was really worried about transferring the site but after watching the videos i think i will give it a go between 2 hosting accounts i have. First Class !!!
You’re welcome, let me know if you get stuck!
Hi Joseph,
Thanks for your help!
I have uploaded the .sql file using the normal method coz I suddenly see the db backup folder appears in root directory. So I use Filezilla to upload the .sql file. Then I restore it. Though it shows “not successful”, I can see that all the tables are in the correct database via PhpMyAdmin.
So I tried to test by adding subdomain however the page can’t be loaded: http://vitamins222.golfpick.net/
What’s wrong now? Thanks for your help.
Adrien
Not sure a subdomain will work well for this type of test. I would suggest calling GoDaddy and having them walk you through it.
Yes you are right. Thanks Joseph!
Hi Joseph,
I still cant see the db backup folder in both Filezilla and its FTP File Manager. I am trying to import directly to phpMyAdmin. Should I choose none in the SQL compatibility mode?
Yes
Hi Justin and Joe,
I have just completed 3. I have also created a new database for the .sql file. However, I did not see any db backup folder in the root directory. So I created one. Then I put the .sql file in it via FileZilla. However, when I tried to restore the .sql file, it takes a long time and afterwards it shows “not successful”. I have already tried a few times but it’s still like that….
Make sure to create the new DB first. The GoDaddy system should automatically create the _db_backups folder for you. Make sure you are in the root and your FTP user is not using a subdirectory — that won’t work. If it’s still stuck, call GoDaddy support or use the phpMyAdmin tools to restore the DB directly.
Everyone who sees this comment please applause for Adsense Flippers! For they are the real heros and educators in this field! Words cannot express my gratitude towards you guys. Thanks Justin and Joe. This is BIG for a 20 year old guy. Thanks so much.
Hey Justin,
I am super nervous now! I have emailed the buyer! Should I click star escrow or wait for his reply?
OMG Thanks so much! If not for you and your blog, I can NEVER achieve it! Thanks!!!!!!!!!!!!!!!
Hi Justin,
I thought I have sent email to you and Joe regarding my site sales! But I can show you the links of them here:
https://flippa.com/2708553-61-71-in-feb-two-blogs-pr3-pr2-no-work-152-articles-hot-tech-niche?live=1
https://flippa.com/2708688-138-71-in-feb-rank-1-pr2-authority-site-no-work-145-articles?live=1
It would be nice if you can give me some comments. =]
Thanks!
Wow…Adrien…just got a BuyItNow…sweet! Now…just have to sell the other one! hehe
Hi Joe,
I am selling a site on Flippa now as you know. Should I stop Adsense to prevent invalid clicks?
Thanks.
We don’t remove AdSense as we like to give updates throughout the auction. That being said…it’s probably good policy to do so and we may change this in the future.
I don’t like it when people are constantly link-dropping…but you’re not “that guy”…drop one here…I’d like to check out your auction! 🙂
Hi Justin and Joe,
Hope my comment isn’t so late that it gets rejected!
I was reading this post and thought, “wow, it’s actually quite complicated!” I was thinking can I just give the login details of my hosting account to the buyer and push the domains to his domain account? The paid hosting fee can serve as a bonus as well!
Comments are never too late!
You could give the login details over to your new customer, but what would you do about all the sites he didn’t buy? OR what if you have multiple customers? Eventually you will have to do migration. If you leave if it up to your customers and they mess it up, they will still blame you!
Yes you are right…
Thanks for your advice Joseph!
I see that many people selling on Flippa uses GoDaddy to buy the domain and Hostgator to host the site. I am worried that because I use HostingDude for my domain and Bluehost for my hosting. Will the process of migration become more complicated?
Also I just checked the hosting price of Bluehost, GoDaddy and Hostgator. Seems that GoDaddy is the cheapest for 1 year hosting. (Originally I wanted to ask why. But just checked AdsenseFlippers’ Resources & Tools place and found out that Hostgator is super fast. Another piece of valuable info shared here!) Does it have one click install for WordPress?
GoDaddy seems to have a different plan for WordPress blog. Should we choose this one or the regular plan? (http://www.godaddy.com/hosting/wordpress-hosting.aspx?isc=cjc599v&ci=15005)
Sorry for asking too many questions at a time!
Thanks!
The migration process is going to be similar with all hosts, but the UIs are always different so there is some adjustment.
For hosting, I would really suggest HostGator at this point. There infrastructure is solid, sites are speedy, and the cPanel is easy to use. The only drawback is the lack of an AccountExec type privilege, but they have separate billing and admin UIs so this is not much of an issue.
For GoDaddy, use at least the Deluxe plan as that will get you 25 DBs. if you plan on building more than 25 sites, you need the Ultimate Plan.
Thanks Joseph!
One last question: so ultimately what information do we need to get from the buyer? His hosting account login details?
With most providers you are going to need the client’s user name and password. With GoDaddy they can make you an account manager so you can control their account from yours.
Thanks so much for your detailed answer!
hi….. i tried moving my site but was getting error establishing db connection.. i checked wp-config files..all credentials were correct…
i tried another method..
-created a backup of my db.
-downloaded all my wp files through filezilla.
-changed dns to new server
-created an add on domain at new server for the domain i wanted to move
-did a fresh wp installation on that add on domain
-imported the backup db in this new wp installation
-uploaded and overwrote the wp-content file in the new server.
things are working fine ..it has been 2 days..
note that i only uploaded wp-content folder of backup files and not wp-admin or any other files..
is this correct method….
how to check that my site is working fine…
i see that site is loading good and all the plugins and settings are intact..
Regards
Aniket
As long as you installed the same WordPress version you migrated from, this method should work. You might want to back everything up just in case.
Thanks Joe and Justin,
I am a full time IMer and do make money with other biz models btw, but haven’t made a lot with the minisite model. Justin is exactly right it won’t work for everyone, but if you have the feel of the landscape (which I strongly believe I do) then it can be done. People often hold themselves back for various reasons (mine is extreme frugality). This site has been very inspirational and I definitely need to get my tail in gear and start churning out sites.
Also, sorry for hijacking the niche site migration discussion.
No apologies needed Harry, you are always welcome!
I love your site, there’s so much helpful info here and I’m happy for your care and skill in delivering quality 🙂
I’m also in the process of building my sites for flipping because I feel it’s the easiest way to get bulk cash to invest in other things. Though I’m doing this on a very tight budget, by reading your posts I get motivated to continue and be patient.
Will update on my first network of websites sale in a couple of months.:)
Cheers
I agree Joe,
For a while I was doing it manually and I understand the process. People rely WAY too much on automatic processes when they never learn how it works. Then when there is a problem they get lost in the wilderness.
Creating sites in bulk is very time intensive. Any little edge to shave time off the process is a big help. I got sick of the steps involved and actually wrote my own software to cut down on time. It wasn’t the best software but got the job done faster. A few months later a friend of mine told me about blogzapper and have been using it ever since.
I spent a good part of today reading the posts here and I am impressed and inspired by both of you. My biggest problem in IM is risk aversion and sticking with a plan. The lack of results at the beginning didn’t phase you. Now I have to drill that through my thick head.
Harry, keep the chin up! The first month we spent over $800 and only made $33. It takes awhile to get in the black especially if your are scaling things. Honestly, if it wasn’t for Justin, I wouldn’t have made it either.
Take note of that — be active in the community and find support with others going through the same process. It helps and you might learn a thing or two! 😉
Hey Buddy,
Didn’t we put up 55 in December? That would put the costs at around $2,200 wouldn’t it? Plus the tool costs with software, etc…probably closer to $3,000 all-in first month, eh? Not even counting my time…geez, I spent quite a bit of time on that in the beginning!
Anyway, you’re right…head down, but chin up! You’ll make mistakes, don’t worry about it…keep plugging away if you want it to work out.
One last addition…just because we had success with this process doesn’t mean everyone will. I think it’s fairly repeatable and that others can do it, but I don’t want to overstate that either.
I found this site the other day and it is awesome and inspirational. To the topic at hand I used to do it this way to duplicate my blogs and it worked, but took some time. However once in a while I would forget a step and have to do the process over again.
There are a few tools out there that can shave the time and complication on this process. The ones I am familiar with are WPTwin and blogzapper. Personally I have blogzapper, because it was half the price at only $37. I have been using it for well over a year and have duplicated over 50 blogs and also used blogzapper to move a few blogs I sold to a the buyer’s host.
Hey Harry,
I agree there are a lot of tools out there that can automate this process. However, I think it is important to understand what is going on at a low level so you can do it manually. Tools break all the time and unless you understand the process, it becomes impossible to fix it.
Thanks for the suggestions though I will check out those tools right away.
Excellent! I started with three different GoDaddy hosting accounts before I realized I could just get a deluxe and have multiple domains, so I need to move a couple blogs. Will certainly be reading/viewing this in more detail when I do. Thanks! And great site by the way.
Let me know if you have any questions or get stuck in any particular step. I’m here to help.
Thanks for posting this helpful information. This is the best breakdown of the transfer process that I’ve been able to find online.
Thank you Adam! A lot of time went into making these recordings so it’s good to know someone found them helpful.
Damn, Joe, that’s quite a bit of detail! Looks good man…will be helpful for guys like me that are less “technical”…nice deal.
Hello to all,
WordPress includes an “Export” and “Import” feature which lets you move your blog to a different host very easily. Just export the whole blog (in XML format I think) and then just import on the new one. No need to mess around with SQL import etc.
Thanks
Harris
True, but does that cover other sites files like images and custom themes? These settings are crucial to be migrated over correctly. It’s my understanding that the default WP export/import process will not replicate this.