There are many advantages to a self-hosted WordPress blog compared to a WordPress.com blog. After you’ve decided on a hosting company (see our recommendations) and installed WordPress, you’re ready to migrate your old WordPress.com content to your new site. In this article I’ll show you exactly how to do it.
Move your blog from WordPress.com to WordPress.org (and finally gain full control!)
- Log into your WordPress.com account. Navigate to tools —> export and then select all content to include posts, pages, navigation menus, and comments. Then click download export file to begin the download of your WordPress database .xml file. Depending how many posts, images, etc you have on your blog, this could be a large file. Give it some time.
- Log into the dashboard of your new self-hosted WordPress blog. If you need help finding a new host and installing WordPress, you can read our guide on choosing a hosting a company and starting a blog.
- Before you start the import, it’s important to make sure your permalinks on your new blog are setup correctly. Navigate to to settings —> permalinks and then select your preferred method. Personally, I strongly prefer the post name option. Your post URLs will be nice, short, and SEO friendly.
- Once you’ve changed your permalink settings, navigate to tools —> import and then select WordPress from the list. It will ask you to install the WordPress Importer plugin. Go ahead and do that and then click activate plugin & run importer. Then browse to find your recently exported .xml file. Click upload file and import. (Note: if you receive an error about exceeding upload limits, send a support request to your host and they’ll provide instructions for getting around the issue. This is a very common issue.)
- You’ll then be asked to assign your posts to an author. Make sure you select your name. It’s always recommended to log into WordPress with a name other than admin. WordPress hacking attempts always start with logging in as admin.
- Check the box to download and import file attachments (important if you want to keep the images attached to your old posts!) and then click submit. You’re done!
By following this process, you’ll move your old WordPress.com blog to a self-hosted WordPress blog. In most cases the WordPress.com site URL looks something like thebestblog.wordpress.com. But, if you have your own custom domain that you were using with WordPress.com, you’ll have to log into where you registered the domain (we use Hover.com for a lot of our domains!) and point the name servers to your new host. All hosting companies have different name servers and a different process so you’ll need to search for a tutorial specific to your host. For example, if your blog is hosted with BlueHost, log into your BlueHost support page and search for “point my domain to BlueHost” or something similar. No one will see your new site until you point your domain to your new server! It sounds complicated but once you find a host-specific tutorial it will take just a few minutes.
After you import all of your content to your self-hosted blog, you’ll want to look through each and every post to make sure the formatting looks correct. It’s possible that your old posts had special formatting options that were only available with your old theme. Or maybe your old posts in WordPress.com used code snippets for buttons or other elements that only work inside WordPress.com.
If your old WordPress.com site had a URL like thebestblog.wordpress.com, you will need to decide what to do with your (now duplicate) site. It would be confusing to visitors to have both active and Google actively penalizes sites with duplicate content. I recommend logging into your old WordPress.com account, navigating to settings —> reading, and changing the site visibility to private. Now visitors will no longer be able to access the old site and Google will not be able to continue indexing your old blog.
If your old WordPress.com site was successful with lots of traffic and visitors, you may instead wish to pay WordPress a yearly fee to 301 (permanent) redirect all content to your new self-hosted WordPress blog. I would only consider this option if you were getting thousands of pageviews every day. To access this option and see pricing, log into your WordPress.com dashboard and click on the store. The redirect product is called Site Redirect and it should have a listed yearly fee of around $13.
WordPress.com has a lot of nice functionality including the ability to collect subscriber email addresses. You can keep your subscribers with your new self-hosted blog by installing the Jetpack by WordPress plugin. It’s then as easy as exporting and then importing your subscribers.
After you’ve completed your migration, you’ll want to take some time and get your new self-hosted blog looking and functioning the way you want. Work your way through all of the dashboard settings and familiarize yourself with some of the differences compared to your old WordPress.com site. You may want to consider a premium theme to make your blog look the way you want. To see a list of our favorite theme companies and other best practices for starting a profitable blog, take a look at our epic tutorial on starting a blog the right way.