How to Transfer Your Blog from to Self-Hosted Website

One of the most popular blogging platforms is WordPress. If you started your blog on, it is fine because many of us tried out this great software like this. Getting started with your personal or hobby blog on a free hosting platform is a great way to learn the first steps. However if you are planning in the long term, you should move your blog from to a paid hosting account.

In this article I will guide you through the process of transferring your blog from to a self-hosted website.

But why should you transfer your blog anyways? Before I start this guide, I want to explain why you should consider moving your blog to a paid hosting plan. gives you a great and reliable platform to blog but has some huge limitations compared to a self-hosted WordPress site:

  • You can install and customize any WordPress theme on a self-hosted WordPress site, while on you will have a limited number of themes to choose from (free and commercial as well)
  • No plugins are allowed with (unless you purchase the VIP plan that costs $2500 monthly, and gives you full control over CSS, PHP, plugins and themes), while on a shared hosting plan (costing around $5 monthly) you can install what plugins you want.
  • A blog hosted on free is very hard and has limited options to monetize; once accepted you have to split the revenue with Automatic Inc, who owns and runs On a self-hosted WordPress site you can add any monetization channel to your site, and don’t have to share your profits with anyone.

The downside of running your WordPress site on your own hosting account is that you have to manage it. You will be responsible to keep your site up to date, update the system, plugins and themes.

Preparing to Start the Transfer

Now you know what are the advantages and disadvantages to have your WordPress under your control and management. But to start the transfer you will need to purchase a domain name and a reliable hosting plan for WordPress. For this purpose we highly recommend BlueHost, for multiple reasons: you will get a free .com domain, a discount of 50% for their shared plan, lots of free extras and guarantees and a great tech support which is trained to help users who are running their sites with WordPress.

Step 1: Exporting Data from

In order to export your blog, you have to login to the Dashboard and click on “Export” which you can find under the “Tools” menu. To access the dashboard you should go to:

The Export tool will take you to a new page where you can choose from Free or Guided Transfer (costs $129 at time of writing). You should choose the Free Export option, while this tutorial will guide you through all the steps.

export wordpress com website

For choosing the Free Export you click on the Start Export button. This will take you to the last step, where you can choose the data type you want to export. By default the “All content” option is selected. Keep this option if you want to transfer your entire blog including posts, pages, custom fields, comments, navigation menus, custom posts, etc.

start free export wordpress com

Click on the “Download Export File” button and save it to your computer. The file will be saved in .xml format. This can be opened with any text editor if you want to take a look to the code.

export all content wordpress com

Step 2: Installing WordPress to Your Hosting Account

If you choose to sign up with BlueHost for hosting your WordPress site, you will have the option to automatically install the system. This step does not require any programming skills, just few minutes to set it up. I will not go into details on how to install WordPress to BlueHost or other hosting providers, because I covered the whole process of starting a WordPress website in the linked article.

Here you will find two methods for setting up your WordPress site: manually or automatically. Video tutorial is also included.

Step 3: Importing Blog into Your Self Hosted WordPress Site

Once your self-hosted site is ready, login to the Dashboard, by accessing the following url:

Under the “Tools” menu now click on “Import” option while you will be importing the data you exported earlier.

import wordpress data

You will need to choose the system you are importing from. Choose WordPress in this case.

import data from wordpress

In order to import your data from you will need to quickly install the WordPress Importer plugin. In the pop-up window click on the “Install Now” button and activate the plugin.

install wordpress importer

Once the plugin is activated, go again to the “Tools -> Import” menu. Browse and select the files you want to import (the .xml file you just saved earlier) and click the “Upload file and import” button.

upload and import wordpress blog

At the next step you will be asked to choose a user to assign the content to. You can import the user that you used on, you can create a new user or assign it to the current user you have on your new website. Choose to import attachments as well. This option will download all images from your old blog and will upload them to your new site. You can leave this option unselected; in this case the images will be loaded from server. This however is not a good idea, because you will want to delete your own blog (will explain it later).

assign authors download import file attachements

By clicking on the “Submit” button will import the data and will automatically publish it to your new site. Unfortunately you cannot import your old design, but there are plenty of free and premium WordPress themes you can use.

Step 4: Removing and Redirecting Your Blog

If you imported entirely your to your new website, I highly recommend removing or making your old private. It would be also recommended to redirect it to your new domain.

To set your blog to private mode, you will have to access the “Settings -> Reading” menu in your Dashboard and set the “I would like my blog to private, visible only to users I choose.” option.

setting wordpress com private

If you have been blogging for a while and have a large audience, you might notify them prior moving your blog. You can also delete all your content from the old blog and create a sing post telling your visitors that your blog has been moved to a new domain. You need to delete or make your old posts private, because search engines don’t like duplicate content.

You can also choose to redirect your old blog to your new website. Go to the “Store” menu in the Dashboard. Now access the “Domains” menu in the store and click on the “Add Domain” button.

add domain wordpress com

This will give you few domain suggestions that you can buy as well the option for redirecting your site. Click on the “Mat it” button, if you want to proceed with the redirection. You will need to insert your new domain and pay $13 per year fee for this upgrade. This option will redirect (using 301 redirection that tells search engines that the site was permanently moved) your old blog to your new self-hosted site. Once someone accesses your blog, they will automatically land on your new domain and website. This way you won’t lose your hard gained readers and search engines will also appreciate for taking this step.

redirect wordpress com domain

Finishing it up!

If you have followed the above step-by-step guide and you did everything right, now should be a proud owner of a domain name and a new self-hosted WordPress site.

I really hope that this tutorial has helped you moving your blog to a new domain. If still have any questions or need help, please post a comment below.

Move Your Blog!

Transfer your over to BlueHost and get a FREE domain name and 50% discount on web hosting.


David Cross

David is the chief editor at WebHostingMedia right from the beginning. He has a great passion for building and managing websites and creating helpful content. He is also interested in programming - currently learning python.