Beginner's Guide for WordPress / Start your WordPress Blog in minutes

How to Properly Move Your Blog from WordPress.com to WordPress.org

Do you want to move your blog from WordPress.com to WordPress.org?

Many beginners often start with WordPress.com, but they soon realize its limitations and want to switch to the self-hosted WordPress.org platform.

In this step by step guide, we’ll show you how to properly move your blog from WordPress.com to WordPress.org.

Moving WordPress.com to WordPress.org

Why Move from WordPress.com to WordPress.org

WordPress.com allows anyone to start a blog by creating an account. However, beginners soon realize that there are a lot of limitations on their free WordPress.com blog like limited ability to monetize, can’t install plugins, third-party ads displayed to your users, and more.

This is why users soon switch to the more powerful and popular self-hosted WordPress.org platform.

To understand the differences between the two platforms, see our full comparison of WordPress.com vs WordPress.org.

We recommend using WordPress.org because it gives you complete ownership of your website and the freedom to control all its features. To learn more about all these features, see our complete WordPress review with pros and cons.

That being said, let’s look at how to properly migrate your blog from WordPress.com to WordPress.org.

Things You Need Before You Start

To start with self-hosted WordPress.org, you’ll need a WordPress hosting account and a domain name.

We recommend using Bluehost because they are one of the largest hosting companies in the world, and an officially recommended WordPress hosting provider.

They are also offering WPBeginner users a free domain name and a 60% discount on web hosting. Basically, you can get started for $2.75 / month (and this also includes free SSL).

→ Click Here to Claim This Exclusive Bluehost Offer ←

If your WordPress site already has a custom domain name, then you’ll still need web hosting. Go ahead and signup with Bluehost and under the domain step, add your blog domain. We will show you how to keep the same domain while transferring from WordPress.com to WordPress.org without losing search rankings in the later steps.

Aside from the hosting account, you’ll also need access to your WordPress.com account, so you can easily move all of your posts, pages, images, comments, and other data over to your self-hosted WordPress site.

Bonus Free Offer: Since a lot of you asked for this, we are now offering free migration service from WordPress.com to WordPress.org as part of our free WordPress blog setup service. During this guided transfer, one of our expert team members will do the entire migration for you (100% free). This means you can switch from WordPress.com to WordPress.org without any risk.

However, if you are someone who likes learning and doing things yourself, then you can follow our step by step tutorial below.

Video Tutorial

Subscribe to WPBeginner

If you’d prefer written instructions, then just keep reading.

Step 1: Exporting Data from WordPress.com

First, you need to sign in to your WordPress.com site and go to your account dashboard. From the left column, you need to click on the Tools » Export menu and then click on the ‘Export All’ button.

Export all content from WordPress.com

This allows you to export your WordPress site. Once the export file is ready, a download link will be visible. You can click to download the zip file on your computer.

WordPress.com will also email the link to your email address.

Downloading WordPress.com export file

Once you have downloaded the file to your computer, you need to unzip it. Inside it, you’ll find an XML file that has all of your posts, pages, images, comments, custom fields, categories, tags, navigation menus, and other data.

Step 2: Setting up WordPress

Now that you have exported your WordPress.com data, the next step is to set up a fresh WordPress install on your web hosting.

WordPress is very easy to install, and it only takes a few clicks. If you signed up with Bluehost like we mentioned above, then WordPress will be automatically installed for you.

Alternatively, if you choose a different hosting service, then you can follow our step-by-step tutorial on how to install WordPress within 5 minutes.

Once you have installed WordPress, it is time to import your content into your new self-hosted WordPress website.

Step 3: Importing Content into Self Hosted WordPress Site

In order to import your old WordPress.com site content to your new WordPress.org site, you will need to login to your freshly installed WordPress website’s admin area. From here you need to visit the Tools » Import page and click on the ‘Install Now’ button below WordPress.

Install WordPress importer

WordPress will now install the WordPress importer for you. Once it’s done, you need to click on the ‘Run importer’ link to continue.

Run importer

It will take you to a screen where you will be asked to upload your WordPress.com XML file that you downloaded in step 1 of this tutorial.

Upload import file

Note: If your file size is larger than 2MB, then you have two options. One is to ask your web hosting company to increase that limit temporarily, so you can get on with the process. The other option would be to split your file by using a WXR file splitter.

When you start importing, you will have the option of assigning imported content to an existing user or create a new user. You’ll also have the option to import file attachments. It is very important that you check this box, so your image files are imported properly.

Import options

Step 4: Importing Your Blogroll Links

If you had been using the Links feature on your WordPress.com blog to store blogroll or other links, then you need to follow these instructions to import them. Users who were not using this feature can skip to Step 5.

WordPress does not natively support blogroll feature. If you don’t have too many links in your blogroll, then see our guide on how to add blogroll links in WordPress without using a plugin.

However, if you have too many links, or you would like to keep the blogroll functionality, then continue reading.

Blogroll links are exported in OPML format. It is an XML format that allows you to export and import your links and link categories. Your WordPress.com links have an OPML file located at an address like this:

http://example.wordpress.com/wp-links-opml.php

Replace example with your WordPress.com blog’s subdomain. If you are using a custom domain with your WordPress.com website, then your OPML file can be accessed by visiting a URL like this:

http://www.example.com/wp-links-opml.php

Your OPML file will open in your browser window, and you need to save it to your desktop. Press CTRL+S (Command+S on Mac) to save the file on your computer.

Blogroll export file

Now that you have a backup of your WordPress.com links, the next step is to import them into WordPress. However, self-hosted WordPress does not have a link manager enabled by default.

You will need to install and activate the Link Manager plugin. The plugin’s page says it hasn’t been updated in many years. That’s because it didn’t need updating, and you can confidently install this plugin.

Upon activation, the plugin will add a new menu item in your WordPress admin bar labeled ‘Links’.

Link manager enabled in WordPress

Next, you need to install and activate the OPML Importer plugin. This plugin simply enables a new importer tool that allows you to import blogroll links.

Upon activation, you need to visit the Tools » Import page and click on ‘Run Importer’ link below the Blogroll importer.

Blogroll importer

On the Blogroll importer page, you need to upload the OPML file you saved earlier and click on the import OPML file button.

Importing blogroll

WordPress will now import your links and link categories from the OPML file. You will be able to see the progress and on completion, you will see the success message.

Successful completion of blogroll link import

Step 5: Setting your WordPress.com blog to Private

Now, if you don’t want to redirect your old users to your new site, then this will be your final step.

First, visit your old blog’s WordPress.com dashboard. From the left menu, you need to click on Settings » General menu and scroll down to the ‘Privacy’ section.

Set your blog to private

From here, you need to select ‘Private’ option and then click on the ‘Save settings’ button. This will make your old WordPress.com blog private, and it will only be visible to you or other logged-in users that you approve.

Attention: If you have been writing for some time, and you have a loyal audience, then it does not make sense to leave them hanging.

Furthermore, if your blog has been out there for a while, then chances are that it is indexed in Google and other search engines.

You can keep all the search engine rankings and easily redirect your old users to your new blog by following Step 6 (highly recommended if your site is established).

Step 6: Redirecting Visitors and Preserving SEO

Redirecting users to the new location with the 301 header is a standard solution to keep search rankings while moving a site from one location to another.

Since you don’t have access to .htaccess on WordPress.com, you cannot make any changes by yourself to retain search engine rankings. However, WordPress.com offers a paid upgrade feature called, Site Redirect, which provides this functionality.

Simply go to WordPress.com blog’s dashboard and click on the Manage » Settings menu item. Under the ‘Site Address’ option, click on the ‘redirect’ link.

Site redirect link

On the next screen, you will be asked to provide the domain name where you want visitors to be redirected. Enter your new WordPress.org site’s domain name and click on the go button.

Note: Site redirect is a paid upgrade and costs $13 per year. It will add a 301 redirect which redirects your WordPress.com blog’s visitors and search engines to your new site.

Purchase site redirect from WordPress.com to WordPress.org

Some of you will ask how long should I keep paying for this Offsite redirect feature? The answer is for as long as you want to. However, we think that 2 years would be enough time for your old users to memorize your new domain name.

If you are changing domains, then another thing you want to do is update all in-post URLs. If you ever inter-linked your posts, then those links have to be updated. You can use our article on how to update URLs when moving your WordPress site.

If you had a custom domain on WordPress.com, then you don’t have to worry about anything. Simply change the DNS record to your host, and you will retain all the SEO benefits.

Frequently Asked Questions (FAQs)

We wrote the first version of this article in January 2013. Since then, we’ve received tons of great questions. A lot of which we’ve answered via email or in comments, so we thought it would be nice to compile the popular ones in one place where everyone can see them.

What happens with my WordPress.com Subscribers?

Thankfully, WordPress.com allows you to migrate your subscribers with one condition. You must use their Jetpack plugin which adds the same subscriber functionality that you had at WordPress.com. Once you install and activate the Jetpack plugin, you would need to contact the WordPress.com team and ask them to migrate the subscribers for you. Our hope is that in the later versions of Jetpack, this will become easier and users will be able to do it themselves.

Can you help me transfer from WordPress.com to WordPress.org for FREE?

Absolutely. We offer migration from WordPress.com as part of our free WordPress blog setup service. If you need our assistance, then simply signup. It’s free :)

What are the costs of switching to WordPress.org?

WordPress is free. However, there are some minimal web hosting costs. We recommend that you read this article on: Why is WordPress free? What are the costs and what is the catch?

I already paid WordPress.com, can I get a refund?

Yes, you can. If you recently purchased a custom domain or a paid plan from WordPress.com, then you can ask them for a full refund.

Note: Domain registrations can be canceled within 48 hours of registration. Plans and other purchases can be canceled within 30 days of purchasing.

Will my images break?

No, they will not. When you transfer using the import file, all attached images are downloaded and the link is updated. However, there is one caveat that we noticed. If your image URL starts with files.wordpress.com, then they will not be converted. If you notice that the image URL has not changed and still points to WordPress.com, then we recommend that you use the import external images plugin, and it will take care of that.

I registered my domain through WordPress.com, can I still move?

Yes, you can. WordPress believes in empowering users and giving them full control of their content. If you already have a domain name through WordPress.com, then all you need is a web hosting account. We recommend that you setup with Bluehost or any of these other WordPress hosting providers. During the signup phase, you will be asked do you have a domain or want to register a new one. Simply select the option that I have a domain name, and insert the domain that you registered at WordPress.com. The next thing you would have to do is change the nameservers to point to the hosting provider. We’re able to assist with this as part of our free setups service. You can also ask your web hosting provider for support.

Will my website go down when I switch?

If you do it correctly, then NO. The method we’ve suggested above will ensure that your website never goes down. If you’re worried, then know that we are here to help. You’re welcome to use our free setup service at any time.

Can I add an online store my WordPress.org website?

Yes, you can easily add an online store to your self-hosted WordPress.org website without any additional costs. Since Bluehost and other popular web hosts offer free SSL certificates, you simply need to install a WordPress eCommerce plugin to add an online store.

What are some of the must have WordPress plugins that you recommend?

Now that you have switched to self-hosted WordPress.org, you can install as many plugins as you like.

Here’s our recommended pick:

  • AIOSEO – to improve your website’s SEO rankings (used by 2 million sites).
  • WPForms – to add a smart contact form on your website (used by 4 million sites).
  • SeedProd – to easily customize your landing pages with drag & drop builder – works with all WordPress themes.
  • MonsterInsights – to see how people find and use your website. It’s a must have for bloggers and small business owners.
  • PushEngage – to connect with visitors after they leave your website.
  • Duplicator or UpdraftPlus – to create daily backups of your new website in case of emergency.
  • OptinMonster – to help you get more email subscribers and succeed in your blogging journey.

Aside from these, we also recommend looking at our expert pick of must have WordPress plugins and 40 useful blogging tools to manage and grow your blog.

You can install all of these plugins from inside your WordPress dashboard. We have created a step by step guide on how to install a WordPress plugin.

I want to change my site’s WordPress theme, can I do that?

Yes, you can change your WordPress theme at any time. Another big benefit of switching to WordPress.org is that you get additional customization options and a larger collection of themes to choose from.

In your WordPress admin sidebar, click on the Appearance Menu dropdown and select Themes to install a theme.

We have hand-picked some of the best themes to help users avoid choice paralysis. See our guide on best free blog themes and best multi-purpose themes for WordPress.

You may also want to see our guide on how to properly change a WordPress theme.

We hope this article helped you properly move your blog from WordPress.com to WordPress.org. You may also want to see our checklist of the most important things you need to do after installing WordPress, and our ultimate guide on how to increase your blog traffic.

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

Disclosure: Our content is reader-supported. This means if you click on some of our links, then we may earn a commission. See how WPBeginner is funded, why it matters, and how you can support us.

The Ultimate WordPress Toolkit

Get FREE access to our toolkit – a collection of WordPress related products and resources that every professional should have!

Reader Interactions

1,220 CommentsLeave a Reply

  1. Hi,

    I followed all the steps on the tutorial to move my already finished wordpress.com website to a wordpress.org website, using a new domain name and host. Everything seems to look exactly the same as on the video and it all seemed to work out, except at the very end… after importing the exported file from my wordpress.com to my wordpress.org, I do not see my website appear as I am used to when it was still a wordpress.com site… Instead I see a ‘hello world’ page, in which it seems I have to start all over to make the website. Do I need to install a plugin for this? Is it costing me money eitherway to move my wordpress.com website to my own domain? (on which I installed WordPress?) It seems like the pages have imported succesfully, but I cannot see any content. No images, no text… Can anyone help me out?

    Thank you!
    Inge

  2. I followed the instructions in this tutorial. I bought a domain name and hosting plan and transferred my wp.com blog there as per these instructions. I also purchased a 1 year site redirect. Everything worked, except for all the ”likes” that my posts use to have are no longer showing. I wish this tutorial would have mentioned that, as I would not have transferred my wp.com and paid for site redirect just to have a bunch of posts that look like they have never been liked by anybody. I’m really disappointed, particularly in jetpack and the whole wordpress system that everything can transfer except for the ”likes”. It makes no sense…

  3. I have my domain, but no hosting yet. Can I build my wordpress.org site without having hosting in place already?

  4. Hi there!

    I just had a question that I cant quite find the answer to –

    If you have a custom domain name on WordPress.com and change that domain over to .org, will it hold it’s place in Google rankings? And thus is there any need to pay for redirect?

    Sorry if this is a silly question.

  5. I bet this is your most read article. Thank you for the post! I’m in the middle of this precise process myself and your website had ALL the knowledge I could possibly need to get it done.

    Thank you!

  6. Hi! Question: I’m creating a new site for a client and they want to transfer their WordPress.com blog JUST to the “Blog” page on a new WordPress.org site I’ve created for them. Will importing the wordpress.com xml file override all the work I’ve done to create the other pages on the WordPress.org site? Or is it possible to import the wordpress.com blog JUST for the new “Blog” page?

  7. Thanks for the article, but I’m lost at step 3. I’m sure I’m being very dim.

    I’ve done steps 1 and 2 Step 3 seems more of a leap, not a step, for me because clearly there’s more between steps 2 and 3 than meets the eye.

    Firstly, where is my wordpress dashboard at my self-hosted site? (I’m using Blue Host and I have installed wordpress on to it – although in the cPanel it still has the option to install wordpress there). The wordpress dashboard isn’t on cPanel – presumably I have to get to it using mydomain.com/wp-admin, but does this mean I must first redirect the nameservers from wordpress.com to bluhost? (I’ve already got a domain for my site which wordpress.com redirects to).

    Surely that means anyone visiting my site will see a blank page until I get the xml file uploaded and a theme installed.

    So what are the substeps between steps 2 and 3?

  8. I’m having a bit of an issue. I’ve transferred my domain from WP.com to Bluehost, and installed WordPress. However, my admin link continues to bring me back to my wordpress.com dashboard as opposed to wordpress.org. Now my site is simply not loading at all. What have I done wrong?

  9. I’m feeling a little stuck, unfortunately. I’ve transferred my domain, installed WordPress on Bluehost, and accessed my dashboard. However, it is still the WordPress.com dashboard as opposed to WordPress.org. Not sure what went wrong!

  10. I did a transfer from wordpress.com to wordpress.org over the weekend. I was able to export the content of the blog, but I noticed the other day not all of the comments transferred. Could this be a glitch? I selected “All Content” on the export.

  11. Thank you for such a great article! I have a question. I have my own domain for my wordpress.com account, when I move to self hosting and get my domain to point to the new host will I keep my rank in the search on Google or have to build it up again? Thank you.

  12. I have a question. If I have subscribers and they automatically receive my blog updates, would I still have to do purchase a redirect? Would my subscribers not automatically get my new web address in the email. If they then respond via the email would it should go to the new site would it not?
    thank you for your answer.
    Suzanne

  13. Hi there, I am going to go ahead with your free set up service to move our blog over – seems like a great service to me! I just wanted to check, will the blog layout and theme stay exactly the same as they are on the live site right now? The blog is thanks so much for your help!

  14. Domain name and hosting are two different services. You can keep your WordPress.com domain name and use it with your self hosted WordPress site. Yes you can still benefit from our free blog setup service.

  15. Such a great article! Love the illustration too!
    I already have a domain name for my WP.com so I don’t need to buy one from your recommended providers. does this means I can not benefit from you free setup service?
    Thanks!

  16. Hi, I had a question… I followed your directions and everything went smoothly. The only issue I have is something I’m not sure can even be helped. My new site has a new domain, however my original blog name is still mapped so whichever you type in the url bar it goes to the same place. I had a few viral posts on my old site and would like to keep the shares and views numbers, is there a way to do that? Essentially now the ones that had over 3K shares now say zero underneath the post. I’d like it to show its real share count.

  17. I just need to get this right, So if i do the site redirect.. will all my links be redirected too. For eg.. say i text someone a link to a blog post.. in future if they click it.. will it automatically go to the new site and the post?

  18. I used this pages step by step instructions to try to migrate my wordpress.com blog over to the domain name and hosting I bought from godaddy.com. It crashed, and now my blog is completely gone. Godaddy claims it’s working just fine? There is no website anymore. When I type in my domain name it says that it’s unavailable. It’s 1:15 am, I’ve been at this all night, I need to work in the morning. I have worked my tail off on this blog for months. Now, does godaddy or wordpress reimburse me for losing my followers, reputation, countless hours, etc. and having to start completely over? I’ve never been so angry in my life.

  19. Hi,

    I bought my domain name from wordpress.com a year ago, and I continued to blog with wordpress.com. Recently, with your post’s help, I moved to a self hosted option with blue host. I managed to trasnfer my domain name as well. I managed to transfer my content, images and even comments. I have 100 followers and statistics that I want to migrate to my current website. I know you said jetpack plugin is the only option but I tried activating the jetpack plugin and this is the error message I’m getting:

    Jetpack could not contact WordPress.com: register_http_request_failed. This usually means something is incorrectly configured on your web host.
    Operation timed out after 30233 milliseconds with 0 out of -1 bytes received.

    I have tried getting in touch with the jetpack team and my web hosting people, but both of them are unable to help me out. Could you please tell me what can possible wrong and why I am not able to activate the jetpack plugin? Thanks.

  20. Hi,

    So I have a WordPress.com account, and would like to switch to bluehost. However, I want to change my domain name to something different, but still keep my blog content and everything. Do I do these exact steps or is there something different since I’m switching names? And, do I install JetPack on my new site and THEN transfer my followers over from my old site? (since my wordpress.com does not have any plugins, I am unable to get them). I saw that my comments will transfer over after I do JetPack, however, do my likes transfer over as well?

    Thanks!

  21. Hi! Thanks so much for the helpful tutorial. I know this is an old article, but if you have a chance, I was wondering if you could answer a question.

    What if I want to copy my wordpress.com site to a self-hosted wordpress.org site, but I don’t want my domain to point to the wordpress.org site until I have updated the theme and tested it to make sure I am happy with it?

    I want my visitors to go to the wordpress.com site until I am ready to direct them to the self-hosted wordpress.org site once I know the site looks and acts the way I want it to.

    Would I pick a different option at step 4 (change wordpress.com site to private)? And if yes, what option would I pick?

    And then what do I so when I am ready to point my domain to my self-hosted site? Do I simply pick “private” in Step 4?

    Thanks again!

  22. HI

    nice article
    but in case wordpress.com site has page rank, page rank will also shift ?

    Thanks

  23. Hi I have just transferred to .org from .com on WordPress. My question if anyone can help is that I had 94,300 “blog Stat hits” on my .com platform and now that I have transferred I seemed to have lost them as the widget is not in the .org widget line up. I really wanted to keep these stats as it has been a great advert to my readers on my progress…I am lost as to what to do?
    Cheers Steve

  24. hi, this wasn’t as easy as it seems :( i think i may have a problem. when bluehost asked if i have a domain or want to register a new one i clicked that i wanted to register a new one when in fact, i already have a paid/registered from wordpress.com and i know i can just redirect if only i have chosen the first option. will this be a problem??

  25. Thank you for this helpful article. I am planning to do the maneuver soon, but I am worried about it ! I have a question (maybe a stupid one!) regarding theme I bought for my wordpress.com. Will it work with a wordpress.org ? Not sure to be clear … thank you very much !

  26. I am trying to import my wordpress.com site to my wordpress.org site. I have followed all steps up to this point. I had a coder friend install wordpress into Gandi who I am hosting with and he also imported my .xml file to import all posts but my images are not saved in my media library even though they are in the posts. Another fault I ave seen is that my image captions have been saved as a part of the body of the post rather than as captions. I have tried to re-import the .xml file from my side at the backend of my wordpress.org site. I check the box to import attachments and choose to use my existing username account and click continue but then I get an ‘error 503 service unavailable’ message after about 5min.

    Any suggestions?

  27. I have successfully followed your tutorial and migrated my site from WordPress.com to WordPress.org. BUT there is a problem.
    I transferred by FTP and your tutorial said to load the files in a directory called public_html
    But now my domain is empty and my site only shows on the url http://www.mysite.com/public_html
    Help?

    • Usually public_html is the root directory. However in your case it seems like you did not have a public_html directory. You need to repeat the process and this time upload WordPress files to your main root directory.

      • Ok. So, if there is no public_html directory on the ftp server then you need to install direct to the root folder. Many thanks.

  28. Thank you so so much for this tutorial. It worked flawlessly and I am strutting around feeling so proud of myself for transferring so seamlessly! Thank you for this resource!

  29. I just used this to successfully switch from wordpress.com to org in no time at all. Great post!

  30. Hi, i’d like to use your free migrate service, and therefor register at bluehost. But before I have questions:
    1 i purchased a theme template at wordpress.com…that will work on org as well?
    2 is there a waiting list? How soon could you move it?
    The site is parijsreis.nl
    Thanks!

  31. Hi, I’ve done the the switch from wordpress.com to wordpress.org but i’m having trouble import my old blog into this one. It keeps saying that the files already exist and I’m not sure what to do from there. Any help with that?

  32. I’m completely new to all of this, but I’ve had my blog for a year now. I want to EVENTUALLY be able to do my own coding and change my theme, ads, fonts, colors, etc…as I learn. I just want to make sure that by switching from .com to .org, I’ll still have what I have NOW, and it won’t be a blank slate…Will I be able to just update and change things gradually once I move to .org?

Leave a Reply to Melissa Summa Cancel reply

Thanks for choosing to leave a comment. Please keep in mind that all comments are moderated according to our comment policy, and your email address will NOT be published. Please Do NOT use keywords in the name field. Let's have a personal and meaningful conversation.