Migrate from Blogger to WordPress without Losing Traffic and Rank [Ultimate Guide with images]

So, you want to migrate from Blogger to WordPress! Right?

Why you should migrate from Blogger to WordPress?

Blogger is a pretty good platform for starting blogs, but when your blog starts getting a good amount of traffic, then you should move it to any good platform. And as you know WordPress is the BEST one.

Google owns blogger, so Google also owns your blog, means you are not an owner of your own blog. In blogger platform, you have some basic controls on your hand.

Google can remove your blog without informing you if they think your blog is violating their policies.

So, if you want full control on your blog and want to be Owner of your blog, then you must migrate your blog from Blogger to WordPress. (WordPress is the great platform)

Read: Blogger vs. WordPres [Complete Guide]

Migrate From Blogger to WordPress

Things needed before starting a migration

You need just two things before start,

(1) Domain name: [i recommend Godaddy]

You need to buy a domain name if you haven’t one (example: yourname.com). I suggest you purchase a top level domain (.com, .net, .org, .info, etc.) so your site ranks higher as well as increase the trust level of users.

(1) Hosting Service: [i recommend BlueHost]

Grab the best and affordable hosting service for your blog. BlueHost is officially recommended from WordPress, so go for it and buy one package.

How to do Migration? [Setup Guide]

When you think about switching from Blogger to WordPress, there is one fear comes in mind,

  • Traffic can lose.
  • Search Engine Ranking can fall.
  • Downtime during the migration process.

Here I’ll help you to migrate without losing traffic, ranking, and downtime.

So, Let’s get started! 🙂

#1: Backup your Blogger blog (Export)

The very first step is taking a backup of your blogger blog’s content by exporting method. Just log in to blogger account and go to Settings >> Other

blogger settings

Now you can see Export blog link in the Blog Tools section, so simply click on the Export blog link.

blogger export

After clicking Export Blog link, it will open one popup bar. Just click on “Download Blog” button.

blogger export download

Now, you have your blogger blog’s content data as a backup file on your computer. It’s in XML format.

#2: Create WordPress Blog

If you have already done WordPress blog setup before today then simply skip this step.

#3: Import Blogger Backup to WordPress

To import into WordPress, you need to login to your WordPress Dashboard and go to Tools >> Import.

blogger importer

Now you can see a various option for importing. Choose Blogger. This will move you at one pop up for installation of this Blogger Importer plugin. Simply install Blogger Importer plugin and Activate it.

This will open one pop-up to install the Blogger Importer plugin. Simply install Blogger Importer plugin and activate it.

blogger imp plugin

Now, open it and click on choose file button. Select your backup file to upload which is exported earlier from the blogger blog. It’s in XML format.

import blogger

[Note: If your backup file is more than max upload size of WordPress then you need to increase max upload size first. Otherwise it will show an error. (different WordPress versions have different max upload size. This day’s max upload size is 64MB)

#4: Setting up Permalinks

You are migrating a blog from Blogger to WordPress, so you have to do a setting of permalinks similar to your earlier blogger blog.

To set a Permalink structure, go to

Dashboard >> Settings >> Permalinks. And choose “month and name” structure.

wp permlinks

#5: Setting up Redirection

This is a crucial step of blog migration process.

You must do redirection of old blogger blogs URL’s to new URL’s, so every visitor of old blogger blog can quickly reach your new location of a blog.

(1)Log in to your blogger account

(2)Go to Settings

(3)Click on Template:  In this step, scroll down to the bottom and click on Revert to Classic Template link.

Revert classic blogger

(4)Edit HTML: after switching to a classic template you can see “Edit Template HTML” text area. Just copy below code and replace it. [Note: please replace http://yourdomain.com with your domain name]



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

    <link rel="canonical" href="http://yourdomain.com/?blogger=<$BlogItemPermalinkURL$>" />

   <h1><a href="http://yourdomain.com/"><$BlogTitle$></a></h1>
    <h1><a href="http://yourdomain.com/?blogger=<$BlogItemPermalinkURL$>"><$BlogItemTitle$></a></h1>

After editing, simply Save your template. That’s it. (see screenshot below) Edit HTML blogger

#6: Blogger to WordPress 301 Redirect

You need to setup redirection on your WordPress blog so that visitors can redirect to new post URL.

Login to your WordPress Dashboard and go to Appearance >> Editor >> function.php file of your theme. You need to copy below code into WordPress function.php file.

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 );
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()) { 
      $url = get_permalink(); 
  return $url ? $url : home_url();

wp function edit

That’s it.

Now any user visits your old blog post then it will automatically redirect to your new blog on the same post.

#7: Redirect feeds

Your old blogger blog’s RSS subscribers do not know about your switch so redirection of feed would be a wise step for you.

After doing redirection of Blogger feed to your new WordPress blog’s feed, you don’t need to worry about losing RSS subscribers and readers.

(1) Login to your blogger account and go to Settings >> Other

(2) Now you can see Site Feed section. Click on the Add link next to Post Feed Redirect URL. It looks like http://www.yourdomain.com/feed  (Note: Make sure to replace with your original domain name)

feed redirect

That’s it 🙂

Now your Blogger Blog is fully Migrated to WordPress without losing Traffic and Ranking.

Hope you guys like this article. Please share this it on social and feel free to ask any question or query via comments below.

You May Also Like

About the Author: Ravijit Chavda

Hey, there. I'm Ravijit Chavda, the founder of bloggingbook. I love to create blogs as well as share my experiences through blogging. I am a passionate blogger with having years of experience in blogging and internet marketing.


  1. I just landed on your blog & it’s very helpful for me… Thank you for this walkthrough!!! Just followed all the things and have to say that’s a great article. I have managed to migrate my blog of over 70 posts to a new one and not lost anything. Everything moved over fine.

    Quick question – When I was moving my blogger blog to a WordPress theme that does not allow me to have my blog on my homepage or index file. The theme is designed for the blog to live in a separate folder [site[.]com/blog].
    Is this putting my blog in a subfolder will mess up my SEO or blog feed? I do not have a feed burner account so am I correct to assume that my subscribers are using Atom for the feed?

    I’m confused and don’t want to lose rankings or feed subscribers…

  2. There is no problem in placing blog into sub-directory. the only thing which matters for SEO is just your posts permalink. So, make sure you’re not changing permalinks of new wordpress blog after migrating. That’s it !!! 🙂

    Second thing is check your feedburner account with gmail which used for creating your old blogspot blog. if you got email list then move it to mailchimp (mailchimp offers 2000 subscribers for free)

Leave a Reply

Your email address will not be published. Required fields are marked *