Beginner's Guide for WordPress - Start your WordPress Blog in minutes.
Choosing the Best
WordPress Hosting
How to Easily
Install WordPress
Recommended
WordPress Plugins
View all Guides

How to Switch from Blogger to WordPress without Losing Google Rankings

Last updated on by
Special WordPress Hosting offer for WPBeginner Readers
How to Switch from Blogger to WordPress without Losing Google Rankings

Blogger is an awesome free tool to quickly start blogging. However, many Blogger users eventually realize that if they want full control of their blog, then they would be better off with their own self hosted WordPress.org blog (what’s the difference between self-hosted WordPress.org vs WordPress.com blogs). In this step by step tutorial, we will help you switch from Blogger to WordPress without losing Google rankings.

Safely moving a Blogger blog to WordPress

Here are the steps you will be taking to switch from Blogger to WordPress without losing Google rankings.

  1. Sign up with WordPress hosting company.
  2. Export your Blogger blog by visiting Settings » Other page.
  3. Import Blogger to WordPress by visiting Tools » Import page in WordPress admin area.
  4. Setting up permalinks on your new WordPress blog.
  5. Setting up redirects for Blogger visitors to WordPress posts
  6. Set up redirects for RSS feeds
  7. Import your images from Blogger to WordPress media library.

Video Tutorial

If you don’t like the video or need more instructions, then continue reading.

Step 0. Before You Start

To get started with WordPress, the first thing you would need is a good WordPress hosting company and your own domain name. We highly recommend Bluehost because they will give you a free domain and 50% off their hosting plan (special for WPBeginner users). Bluehost is also an officially recommended hosting provider of WordPress.

If you want a Bluehost alternative, then take a look at Siteground who also offer the same special offer to WPBeginner users.

Once you have signed up for WordPress hosting and set up your domain name, the next step is to install WordPress on your hosting account. We have a step by step tutorial on how to install WordPress. Once you have installed WordPress, it is time to move your content from Blogger to WordPress.

Step 1. Export Your Blogger Blog

First thing you need to do is export your blogger blog’s content. Simply log into your blogger dashboard and go to Settings » Other page. Under the ‘Import & back up’ section, you need to ‘Back up Content’ button.

Export your Blogger blog backup

This will bring up a popup where you need to click on the ‘Save to your computer’ button.

Download your Blogger blog's backup file to your computer

Your Blogger blog’s content will be downloaded to your computer in an XML file.

Once the download is complete, it is time to import it into your WordPress site.

Step 2. Import Blogger to WordPress

To start importing your Blogger site into WordPress, you need to go to your WordPress admin and visit Tools » Import. On the Import page, click on Blogger.

Blogger importer under WordPress import tools

This will bring up a popup asking you to install the Blogger to WordPress importer. You need to click on the Insall button.

WordPress will now download and install the Blogger Importer plugin for you. Once it is finished installing, you would need to click on the Activate Plugin and Run Importer link to continue.

Activate and run blogger importer

On the Import Blogger screen, WordPress will ask you to upload the XML file. This is the file that you downloaded in Step 1.

Simply click on the choose file button and upload the XML file you downloaded earlier. Next, click on the Upload file and import button to continue.

Upload Blogger export file to WordPress

Now if you didn’t select one of our recommended hosts or your site is really large, you may get an error that your file size is too large. In this case, you would need to increase your maximum file upload limit. If your file is small, then you won’t see any errors.

WordPress will now import your blogger posts one by one. When it is finished, you will be asked to assign an author to the imported posts. You can assign your blogger posts to an existing author (you) or create a new author account.

Congratulations! you have successfully imported your Blogger content into WordPress. However, you still need to make sure that you don’t loose any search rankings and that visitors from your old blog easily land to the same content on your new WordPress website.

Step 3. Setting up Permalinks

Permalinks is the term used for URL structure of individual pages. WordPress comes with a feature that allows you to set up SEO friendly URL structure. However, since you are importing content from Blogger, you would want your URL structure to be as close to your Blogger URL structure as possible.

To set permalinks, you need to go to Settings » Permalinks screen and choose Month and Name as your permalink structure.

Choosing a permalink structure for your WordPress site

Step 4. Setting up Redirection

The most important step in moving any website is to set up proper redirection so that users are redirected to your new website.

The important part of redirection is that you want users to land on exactly the same page on the new site which they were trying to access on the old site. Secondly, this also notifies search engines that your old site is moved to a new location.

To successfully move from Blogger to WordPress, you need to set up redirection on two levels.

First, you will redirect Blogger visitors to your new WordPress blog. Second, once users reach your WordPress site, you will redirect them to the exact post they were trying to read.

Let’s first set up redirection on the blogger blog. You need to log on to your Blogger account and go to your Blog’s settings and click on Template.

Blogger Template

On the template page, you need to scroll down to the bottom of the page and click on Revert to Classic Template link.

Revert to classic template for your Blogger blog

After switching to classic template, you will see ‘Edit Template HTML’ textarea. You need to replace everything in this text area with the following code. Make sure that you replace http://www.example.com with your own domain name.

<html>
 <head>
  <title><$BlogPageTitle$></title>

   <script>
    <MainOrArchivePage>
    window.location.href="http://example.com/"
    </MainOrArchivePage>
    <Blogger>
     <ItemPage>
     window.location.href="http://example.com/?blogger=<$BlogItemPermalinkURL$>"
     </ItemPage>
    </Blogger>
   </script>

   <MainPage>
   <link rel="canonical" href="http://example.com/" />
   </MainPage>

   <Blogger>
    <ItemPage>
    <link rel="canonical" href="http://example.com/?blogger=<$BlogItemPermalinkURL$>" />
    </ItemPage>
   </Blogger>
 </head>

 <body>
  <MainOrArchivePage>
   <h1><a href="http://example.com/"><$BlogTitle$></a></h1>
  </MainOrArchivePage>
  <Blogger>
   <ItemPage>
    <h1><a href="http://example.com/?blogger=<$BlogItemPermalinkURL$>"><$BlogItemTitle$></a></h1>
    <$BlogItemBody$>
   </ItemPage>
  </Blogger>
 </body>
</html>

Save your template, and you have successfully implemented redirection on your Blogger blog.

However, you still need to setup redirection on your WordPress site so that users are redirected to the proper posts.

You need to copy and paste the following code in your WordPress theme’s functions.php file or in a site-specific plugin.

If this is your first time adding code to your WordPress site, then you may want to check our beginner’s guide to pasting snippets from the web into WordPress.

function blogger_query_vars_filter( $vars ) {
  $vars[] = "blogger";
  return $vars;
}
 
add_filter('query_vars', 'blogger_query_vars_filter');
 
function blogger_template_redirect() {
  global $wp_query;
  $blogger = $wp_query->query_vars['blogger'];
  if ( isset ( $blogger ) ) {
    wp_redirect( get_wordpress_url ( $blogger ) , 301 );
    exit;
  }
}
 
add_action( 'template_redirect', 'blogger_template_redirect' );
 
function get_wordpress_url($blogger) {
  if ( preg_match('@^(?:https?://)?([^/]+)(.*)@i', $blogger, $url_parts) ) {
    $query = new WP_Query ( 
      array ( "meta_key" => "blogger_permalink", "meta_value" => $url_parts[2] ) );
    if ($query->have_posts()) { 
      $query->the_post();
      $url = get_permalink(); 
    } 
    wp_reset_postdata(); 
  } 
  return $url ? $url : home_url();
}

The code above creates a blogger to WordPress 301 redirect which is what you need to ensure best SEO.

Once you have pasted this code, that’s all you need to do for setting up redirection.

Now anyone visiting a post on your old Blogger blog will be redirected to the same post on your new WordPress site.

Step 5. Redirect Feeds

Your RSS subscribers on the old Blogger site will not be able to notice the switch. That’s why you will need to redirect your Blogger feed to your new WordPress site’s feed.

You can do this by logging in to your Blogger account and then visit Settings » Other page under your blog dashboard.

Under the Site Feed section, click on Add link next to Post Feed Redirect URL. Here you can enter your new WordPress site’s feed address.

Usually it is http://your-awesome-site.com/feed/ (don’t forget to replace your-awesome-site with your own domain name).

Redirect blogger feed readers to your WordPress feed

Step 6. Import Images From Blogger to WordPress Media Library

When you are transferring blogger to WordPress, the WordPress importer will download images from your blogger posts into the WordPress media library. However, it can fail to download some images. This doesn’t happen often, but it can happen.

But there’s nothing to worry about because you can find and import these images into WordPress. Follow the instructions in our how to import external images in WordPress tutorial.

This will import all images from your blogger into your WordPress Media Library. Once the images are in your WordPress media library, you can easily create image galleries and more.

We hope this tutorial helped you switch from Blogger to WordPress without losing Google rankings. We would like to welcome you to the WordPress community. To get started with WordPress, please take a look at our beginner’s guide section and our WordPress beginner videos.

If you have a friend still using Blogger, then you can show them our comparison on WordPress vs Blogger and convince them to switch over.

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.


Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi. Page maintained by Syed Balkhi.

WPBeginner's Video Icon
Our HD-Quality tutorial videos for WordPress Beginners will teach you how to use WordPress to create and manage your own website in about an hour. Get started now »

Comments

  1. Yvonne says:

    I started a blog years ago and stopped after maybe a year. I purchased a domain and I still own it. Now I’m ready to start blogging again and have decided to go with WordPress instead. However, the entire design is crap. Therefore, my question to you is, when I migrate from Blogger to WordPress using your guide won’t that same design come over? If so, does that mean my initial step after getting a web host be to pick a them and install to WordPress or do I do that after I move from Blogger to WordPress? I want to keep the post. But, definitely not the design! I love this article and found it incredibly informative.

  2. Mohini says:

    Thanks for this detailed article. Helped me to rectify some issues smoothly. Still, I couldn’t paste redirection code snippet to WordPress. Can you please help me?

    I am getting this warning:

    “Warning: Cannot modify header information – headers already sent by (output started at /home/username/public_html/wp-content/plugins/mysitename-plugin/mysitename-plugin.php:44) in /home/username/public_html/wp-content/plugins/wpclef/includes/lib/wp-session/class-wp-session.php on line 130”
    I removed the code seeing error still got the same warning. Site plug in is deactivated now.

    I don’t have clef activated yet.

    Thanks for all the help and extremely helpful site for WP beginners.

  3. Ansley says:

    I’m heavily considering making the switch to WordPress. However, I already have a custom domain name purchased and in use. Do I just skip the first section about purchasing a self hosted domain, or do I have to switch domain hosts? My current domain name is through easyDNS. (PS they kind of suck – not user friendly at all!)

    Thanks!

  4. deni says:

    why images can’t be export too ?

    all image in our blogpost not included when i export to wordpress? just text without images.

  5. Angel says:

    Much appreciate for this detailed tutorial. I’ve redirected all my articles to my new wordpress site and it looks awesome!

    Thanks!!

    • Karo says:

      Hello Angel,

      I’m glad to hear the steps worked for you. At my end it seems I am getting something wrong. I followed the steps and imported my blog. And when I click on View Blog on Blogger it goes to my new WordPress blog which is good. However when I click on a post from Blogger it gives me a ‘page not found’ on the WordPress blog. I can’t seem to figure out what I am missing. Shouldn’t the post be redirecting to the one on the WordPress blog? If you can guess what’s causing this I’ll appreciate it.

      • WPBeginner Support says:

        Try updating permalinks in WordPress. Simply go to Settings > Permalink page and click on the save changes button without making any changes.

        • Karo says:

          Thanks. But everything is working fine now. I figured it out with the help of another tutorial.

  6. Danielle says:

    I did everything you said, step by step and I have no photos in my posts anymore? Help!!

  7. Ewan says:

    Hi,

    Thanks for the very helpful guide. I’m wondering if there is a way to do this while maintaining a more SEO friendly URL structure within wordpress. I want my blogspot posts to redirect properly, but I’d like them to redirect to example.com/my-blog-post rather than example.com/2016/09/my-blog-post. I think perhaps a change could be made to the PHP code added to functions.php to make this work but I’m not sure how.

    Any thoughts?

  8. Jen at Tie Dye Diva says:

    Thank you! I can’t say how many times I came back to this page in the last week and followed it step by step, very clear instructions! I noticed that the redirect doesn’t work from my iphone though it works beautifully from laptop – mobile still goes to my blogspot. Is there something more I need to do to get it to work on mobile?

    • WPBeginner Support says:

      In your blogger dashboard visit the Template page for your blog.

      If you have switched to the classic template then you will see a button to Upgrade template. Click on this button and Blogspot will start using the new template format. It will show you a preview of how your site will look on Desktop and how it will look on mobile.

      Under the mobile column, click on the gear icon. This will bring up a popup. Select ‘No. Show desktop template on mobile devices’ option and then click on the save button.

      Now start following the instructions from Step 4 in this article.

  9. Arjun says:

    What about Google search links of my website. Will they land exactly where they are supposed to reach. Won’t users get 404 error.

    And what if blogger url structure doesn’t match in wordpress. Since I have manually configured the urls in my blogger blog.

  10. Justine Putterman says:

    This saved my life!!! I was so lost trying to figure out how to move from blogger to wordpress and this tutorial made everything so easy! I followed along with the video step by step. Thank you so much!!

  11. Sid Balachandran says:

    I’m clutching at straws here, so hoping that you can help.
    The Blogger xml file was about 42Mb – so I had BlueHost increase it to 64Mb. But ever since that happened, when I run the Blogger Import tool, the upload goes to 100% alright. However, the next step – where you get to choose the authors – that never appears. All I get is the heading that says ‘Import Blogger’. I’ve tried on different browsers, different laptops – no go.

    And I can’t move forward. Spoke to Bluehost, who said they’ll look into it, but no go since that.
    I tried a smaller test xml file form an old blogger id that I had, and that uploads fine. So I reckon it has something to do with the time out or something. But of course, I’m not sure.

    Do you have any suggestions?
    Would really appreciate some help, if you could spare the time.

  12. Niveditha says:

    Hi, I could successfully migrate from blogger to wordpress. But there seems to be a problem with RSS feed. The subscription mail of the new posts are not coming. How can I solve this problem. Pls help!

Add a Comment

We're glad you have chosen to leave a comment. Please keep in mind that all comments are moderated according to our comment policy, and all links are nofollow. Do NOT use keywords in the name field. Let's have a personal and meaningful conversation.