So you’ve decided to make the move from WordPress.com to a self-hosted WordPress site?
Fantastic news! Better late than never, as they say.
WordPress.com is a great platform to start out with, but you may have realised that it’s features are quite limited, and if you want access to more features then you will need to upgrade to a business account. At which point, you might as well purchase hosting and a domain and move over to a self-hosted WordPress website.
There are many benefits to owning a self-hosted WordPress website, including the ability to install plugins, use custom themes, access your website files, monetise your blog through adverts, set up a eCommerce store and use more powerful analytics tools like Google Analytics. If you are serious about your blog, it’s an investment I highly recommend you make.
In this post I’ll show how to move your blog from WordPress.com over to a self-hosted WordPress website.
Please note: This post is not sponsored or a collaboration, but it does contain affiliate links. This means if you make purchase after clicking one of the links in this post I may make a commission off this sale at no extra cost to you. I only recommend products and services that I use and love myself.
Click on the links below to help you navigate through this post.
- 1 | Choose a suitable hosting package
- 2 | Choose a domain
- 3 | Install WordPress
- 4 | Log in to your WordPress admin area
- 5 | Export your WordPress.com content
- 6 | Import your WordPress.com content in to your new WordPress website
- 7 | Redirect your visitors (if you’ve purchased a new domain)
- Need some help? I can make the move for you!
1 | Choose a suitable hosting package
The first step in the WordPress.com to self-hosted WordPress migration process is to purchase hosting. You won’t have needed to purchase hosting for your WordPress.com website because hosting is a part of the WordPress.com package.
It is possible to find free hosting online but I really don’t recommend it. I used a free host when I first started out, and it was great until they deleted my entire website without warning!
It is for this reason that I recommend paying for hosting, and more specifically I recommend Namecheap. I have been a Namecheap customer for about 7 years now and I’ve always been impressed with their prices, their up-time and their customer service.
Namecheap have a hosting package specifically designed for self-hosted WordPress websites called EasyWP (you can find out more here), but I always recommend that my clients opt for a shared hosting package instead.
I specifically recommend their Stellar package (previously known as “Value”). This is what I use to host my websites because:
- It works out better value for money than EasyWP
- You get more disk space
- You can host up to three websites on one package
If you do choose the shared hosting option, head over to Namecheap’s shared hosting page:
Note: The prices of the hosting packages often change.
For the hosting package you have selected, choose whether you would like to pay monthly or yearly (yearly works out cheaper in the long run, and you can even set up automatic renewals if you wish), and whether you would like to be hosted by a datacenter in the UK or one in the USA. It is more expensive to be hosted by a datacenter in the UK, but Namecheap advise choosing a datacenter that is “closer to your potential audience”.
When you’re done, click Add to Cart.
2 | Choose a domain
After you have added your hosting package to your cart, you will be prompted to choose a domain. You will need to choose a domain regardless of whether you own one already that you are using on your WordPress.com website, or you need to purchase a brand new one.
If you don’t already own your own domain, go ahead and click Purchase a domain.
However, you might already own your own domain that you have been using with your WordPress.com website, and you might want to continue using it on your new self-hosted WordPress site.
So if you do own a domain and you purchased it with Namecheap, click Use a domain I own with Namecheap. Selecting this option will prompt you to log in to your existing Namecheap account and select a domain that you already own. Then you will be able to head to the checkout and just pay for your hosting package.
If you own a domain but that domain is registered with someone else rather than Namcheap, click Use a domain I own from another registrar. Selecting this option will prompt you to enter the name of the domain (including the extension i.e. .com, .co.uk, .info, etc) that you own elsewhere.
You can also choose to transfer an existing that you own from your current registrar to Namecheap so that your hosting and domain is all in one place. If you would like to do this, click Transfer my existing domain to Namecheap and then on the next page enter the domain you wish to transfer. You will then be given instructions to help you with the process of moving registrars.
For the purpose of this tutorial, lets pretend you don’t already own a domain.
After clicking “Purchase a new domain” enter the name of the domain you want to purchase including the extension (i.e. .com, .co.uk, .info, etc).
You will need to make sure that the domain you wish to purchase is already available and not owned by someone else. In order to check its availability (and the price), you can search for it here.
If the domain is available then you will see the option to purchase it. However it isn’t available then it will probably say “Make Offer” next to it (i.e. you will have to make an offer to the owner of the domain if you want to buy it – this is never cheap!). If this is the case, you may want to choose a different extension, or a completely different domain name.
Once you’ve chosen a domain, enter it into the New Domain Name box and choose the number of years you would like to register it for. Then click Add New Domain to Cart and then Continue.
On the next page you will be able to view your basket and see what you are about to purchase.
There are a few details to note here.
First, you’ll notice that a small charge has been added on for the ICANN fee; a mandatory fee for each domain that is registered, renewed or transferred.
Second, you’ll see that something called WhoIsGuard has been enabled. When you buy a domain, you must provide personal information about yourself, including your address, your phone number and your email address. This information is readily available to anyone online, but WhoIsGuard will protect this information so that it can’t be accessed by anyone and everyone.
There is usually an annual charge for WhoIsGuard, but the good news is Namecheap actually give WhoIsGuard to all of their customers for free forever!
The final thing to mention before you check out is the promo code box on the right hand sided. Namecheap have a page full of promo codes that might save you a little bit of money, so it’s worth checking this out before you make your purchase. If you find a code that you can use, copy and paste into the promo box and then click Apply.
When you are ready to proceed, click Confirm Order. Then you will be prompted to log in to your Namecheap account, or to set one up if you don’t already have one.
Eventually you will end up on the checkout page where you will need enter your payment details and pay for your hosting and domain.
Once you’ve paid, that’s it! You are now the proud owner of a hosting and domain. Now, keep an eye on your emails as you will be receiving lots of emails from Namecheap with important information in that’s required for the next step.
3 | Install WordPress
After you have purchased your hosting (and domain if you needed to purchase one), you should receive a welcome email from Namecheap. This will include lots of important details including your cPanel log in details.
cPanel is a web host control panel that gives you access to manage various aspects of your website. And the good news is, it’s included within your Namecheap hosting package.
(Note: If you do decided to purchase your hosting from elsewhere, I highly recommend you choose a host that provides cPanel as a part of its hosting packages too. It will make your life so much easier!)
The cPanel details within your email will include the URL of your cPanel account, a username and a password.
Start by opening the cPanel URL (usually something like http://YOUR-URL/cpanel) in a new tab or window. Then log in using the username and password provided in the email.
Once you log in you will see the cPanel interface. It’s worth taking some time to look around this as there’s a lot of features. It can be a little overwhelming at first.
To install WordPress we are going to use Softaculous; a script library that allows you to quickly and easily install a variety of scripts, including WordPress.
In cPanel, scroll down until you see a section called “Softaculous Apps Installer” which looks a little something like this:
Within this section you will see the WordPress icon. Click on this to begin the WordPress installation process.
On the next page, click Install Now. This will take you to another page where you can begin filling in all your WordPress account details.
Firstly, choose your protocol. Unless you have purchased an SSL certificate, just leave this as it is (http://).
Then choose the domain that you want to install WordPress on. If you only own one domain, you will only have one domain to choose!
Next you need to decided whether or not you want to put your WordPress installation in a directory (i.e. a folder within your website files). It isn’t necessary to use a directory, but I usually do. A WordPress directory is usually called “wordpress” or “wp”. So in this box, just type in the name of the directory/folder you want to create and put your installation in.
If you do choose to use a directory then you will need to do a little extra work after you have installed WordPress to make sure your URL is http://YOUR-URL/ rather than http://YOUR-URL/YOUR-WORDPRESS-DIRECTORY. You can find out how to do this using this tutorial.
Then choose a name for your WordPress website, and give it a description. Don’t worry too much about what you put here, you can always change this at a later date in the settings section of your WordPress admin area.
Next, enter a username, password an email for your WordPress account. You will need your username and password to log into your WordPress admin area, so don’t forget them!
Then choose your language.
You can choose a theme from here if you wish, but once you have installed WordPress and logged in to your account you will be able to choose from a larger variety. If you don’t choose a theme here, your WordPress installation will be set up with the latest default WordPress theme, which is called Twenty Seventeen.
Finally, click Install to complete the process. WordPress should now be installed on your website!
4 | Log in to your WordPress admin area
Now you have installed WordPress, you need to log in to your WordPress admin area. In order to access the admin area, you will need to go to the login page, which has a URL that looks something like this:
Make sure you replace “YOUR-URL” with your URL.
If you installed WordPress in a directory, you will need to go a slightly different URL to log in:
Just replace “YOUR-WORDPRESS-DIRECTORY” with the name you chose for your WordPress directory. So if you called your directory “wordpress” you’d replace this with “wordpress”.
Every time you need to log in to WordPress, use this URL. You should now see a login page that looks like this:
Enter the username and password that you chose for your WordPress account when setting it up via Softaculous, and click Log In to be taken to your WordPress admin dashboard.
You’re going to be spending a lot of time in this admin area, so feel free to explore and gain a better understanding how WordPress works.
Throughout the rest of this tutorial we are going to be accessing pages and features using the menu on the left hand side of the screen (highlighted below). Don’t worry; this will all become second nature to you very quickly!
Important reminder: If you have used a directory, make sure you read and follow the instructions in this article to update your URL.
5 | Export your WordPress.com content
Now you have set up your new WordPress website it’s time to move your content over from your WordPress.com website.
To do this, start by logging in to your WordPress.com admin area. Hover over Tools in the left hand menu and click Export.
This will take you two a page where you will see two options: Export and Guided Transfer.
The Guided Transfer option if for those who want to leave the work to someone else! You can pay a fee for someone else to transfer your WordPress.com website to a self-hosted WordPress website (a service I offer myself for a much more reasonable price!).
However, if you want to transfer your website yourself then you will want to go for the Export option. Click Start Export to begin.
On the next page you need to choose what you would like to export. I recommend choosing All content. Then click Download Export File.
This will generate an XML file which will be downloaded on to your computer. You should keep this file in a safe place as you will need it for the next part of the process.
6 | Import your WordPress.com content in to your new WordPress website
Now we have our WordPress.com website content at the ready we can import this in to our new website.
Head back in to your brand new WordPress admin area, hover over Tools in the left hand menu and click Import.
On the Import page, look for the WordPress option and click Install Now.
The Install Now link will then change to say Run Importer. Click on this.
On the next page you will need to upload the XML file that contains your WordPress.com website content. Choose your file and then click Upload file and import.
You will then need to assign authors to the posts you have imported. You can import an author, create a new user or assign posts to an existing user.
Then tick the box next to Download and import file attachments to ensure that your images are imported too. When you’re ready, click Submit.
And that’s it! Your content has now been imported. Click on Posts in the left hand menu to make sure that all your posts are there as expected.
7 | Redirect your visitors (if you’ve purchased a new domain)
If you have purchased a new domain specifically for your self-hosted WordPress website then you will need to put some measures in place to redirect your visitors from your old website to your new one.
Now, normally when we want to redirect visitors from one website to another, we will add some code to one of the website files. But unfortunately, because you don’t have access to your website files as a WordPress.com user, we can’t do that. So you have two options:
1 | Set up redirection via WordPress.com
The good news is that WordPress.com has a redirection tool which will set up a 301 redirect. This will not only redirect visitors from your old website to your new one, but it will also redirect search engines too.
The bad news is this comes at a cost. It is currently £11 per year to use this redirection tool.
If you wish to use this tool, log in to WordPress.com, click on Settings then click on redirect under Site Address:
You will then be asked to enter the domain that you want to redirect your visitors to.
2 | Set up a “We’ve moved” landing page
I completely understand that not everyone will want to pay to redirect their visitors, especially after already paying for hosting and a new domain.
So, if you don’t want to pay for the WordPress.com redirection, I recommend setting up a sort of landing page that will inform your visitors that you have moved. Provide a nice big link to your new domain so it’s really easy for visitors to find you.
Looking for more helpful advice?
Sign up to receive my free monthly newsletter!
On the last Friday of each month, I send out my monthly newsletter jam-packed with tips, tricks and resources to help you create and maintain the WordPress website of your dreams. And it’s completely free!
Simply enter your name and email below to sign up…