Migrate from wordpress.com to your own domain – simple step by step tutorial

This post will show you step-by-step how to migrate from wordpress.com to your own domain on a fast host – I’ll use SiteGround as the hosting provider, but you can use this process with most hosting services. This is a follow-up to my post How to Clone your WordPress site to a fast host, which requires installing a plugin on your existing site. You cannot install plugins on a free WordPress.com site, so you must use a different process.

This will Clone your WordPress site

One important point: the process I am describing does not shut down or alter your existing site. It truly clones or copies your current wordpress.com site to another host, leaving the original site intact.

Some of the terminology used, such as ‘migrate from wordpress.com’ or ‘move to siteground’ implies that it is changing your original site, because the assumption is that you will be shutting down your original site once you see how well it runs on the new host.

If you just want to see how much faster SiteGround is, you can migrate from wordpress.com site to a ‘Temporary Domain’ (a sub-domain of SiteGround) and test it out before you decide on a permanent move. SiteGround currently offers 3 months hosting for 99 cents, and you can always get your money back within 30 days, so there is no risk in trying this out.

After you have seen your site running on SiteGround, you could change your domain name servers to point to SiteGround, and then a few days later you could shut down your original site, but that is up to you.

About your new domain name

I’m not going to dwell on how to chose and register a domain name. If you don’t have a domain name currently, then you can get a new domain registration free for a year from SiteGround (and most hosting providers) when you sign up for a hosting account.

I always prefer to keep my domain registration separate from my hosting providers, so I use a service like namecheap.com to search for and register domains. A new dot-com domain costs around $10 US per year, so it is not expensive.

If you already have registered a domain name, the registrar will have information on how to change the name servers when SiteGround tells you what to set them to.

Why pick SiteGround to migrate from WordPress.com?

If you currently have a WordPress site and you want more control over your site than is allowed by wordpress.com, then you would be happy with any of the hosting companies that I recommend, and I will do some posts about migrating from wordpress.com to other hosts. I believe that SiteGround has two big advantages:

SiteGround hosting runs on Google Cloud

Starting in 2020, SiteGround now runs all new shared hosting accounts on Google Cloud servers, so you get very high performance and very reliable hosting.

SiteGround optimization plugin

When you create a new WordPress site on SiteGround, it includes an optimization plugin to speed up your site. The default settings on this are great for compatibility with existing sites, but when your site is running you can tweak the settings to get faster performance. You can enable more aggressive page caching and SQL caching, and on the front-end, you can minify and combine javascript and CSS.

There are three steps to migrating from wordpress.com to your own domain:

  1. Create a new empty WordPress site on a new host, with either a newly registered domain name or an existing domain name pointed at the new site.
  2. Export your content from wordpress.com
  3. Import your content into the new site.

Let’s go through these steps to migrate a wordpress.com site to SiteGround.

1. Getting started – create a new account and a fresh WordPress site.

You can sign up for a new account at siteground.com:

When you sign up for a new account with SiteGround, you get the usual question about whether you want to register a new domain (like many hosts, SiteGround offer free domain registration for the first year with a new account) or use an existing domain.

If you sign up for a multi-domain account, they also offer the option to use a temporary domain, which is a sub-domain of siteground.com. This can be handy to spin up a site for testing.

If you select ‘New Domain’, SiteGround will point the new domain at your site for you, whereas if you use an existing domain name, then you will have to sign on to your domain registrar and change the name servers once the new site is active.

In this example, I selected to use an existing domain:

migrate from wordpress.com

Start a new website to migrate your content from wordpress.com to SiteGround.

If your current site is on WordPress.com, or on another host that does not allow you to install plugins, then you cannot use the ‘auto migrate’ option, so you need to set up a new WordPress site on SiteGround, and import the contents from your existing site.

Select ‘New Website’, and then click on ‘WordPress’ when prompted to chose what software to install.

You will then be prompted for a userid / password for the administrator of your new WordPress site.

As an aside: if you click ‘Other’, you get a long list of software, including Drupal, Joomla, etc. If you want a new website without installing any software, you can click on ‘skip to create empty site’ at the bottom.

You then get prompted to purchase an optional site-scanning service. I typically use WordFence to protect my sites, so I have never signed up for this.

After a couple of minutes, your site will be ready.

Your website is ready…Almost.

At this point, if you are using an existing domain, you can change the name servers on your domain to point to the SiteGround servers shown for your site. In Site Tools, there are options to set up the site.

Caching your new website

When migrating from wordpress.com, you are obviously concerned about performance, so you want to enable caching. Siteground’s default caching settings are good, but lean towards maximum compatibility, so they can be tweaked to be even better. The first setting I would tweak is for MemCached, which can be used to cache SQL results. Under Caching on the left, pick the MemCached tab, and turn on the switch at the bottom.

After you change the name servers for your domain, it can take up to 24 hours to propagate, but often works within 30 mins. If you are impatient like me, you can keep pressing the ‘refresh’ link shown until the message goes away!

Install and enable SSL on your new site

Your site on wordpress.com will have automatically had SSL (https) support, so it is important when migrating from workpress.com to your own domain that you include SSL support. On some hosts, you pay extra for an SSL certificate, but on SiteGround you just have to enable it.

Adding an SSL certificate to enable https has to wait until the domain is pointing to SiteGround, so once the message on the dashboard disappears, you can click on Security / SSL Manager. If you are planning to set up subdomains, you should pick the ‘Lets Encrypt Wildcard’ option.

Once the SSL certificate is set up, you should enforce the use of SSL by selecting Security / HTTPS Enforce, and turning on the switch. This just automatically forces anyone accessing the site with http:// to be redirected to https://.

Finally, your new site is ready – sign in to wp-admin

Now you are ready to sign on to your new site! You could of course point your browser at https://<your domain>/wp-admin and sign in, but there is an option on the Site Tools menu to access the site’s admin menu. Select WordPerfect on the left menu, then ‘Install and Manage’, and you will see your site listed under ‘Manage Installations’. Click on the arrow icon under ‘Actions’ on the right and you will be automatically logged in as the site administrator.

SiteGround automatically installs two plugins on any new WordPress site. One is the ‘SG Optimizer’ which is the best optimizer plugin you can use on SiteGround, since it connects to their hosting and caching services.

The second is a ‘WordPress Starter’ plugin to assist you in picking a theme and installing a few useful plugins. When you first sign on to your site, you will be taken to this ‘WordPress Starter’. There are only three pages, so you can step through this if you find it useful, or exit to get to the standard wp-admin menu.

Installing a theme

Whether you use the ‘WordPress Starter’ plugin, or simply go to the Appearance / Themes menu option, you will need to pick a theme, and you probably want one that looks the same as the site you are migrating from wordpress.com.

If you used a standard theme on your wordpress.com site, then you are in luck since you can simply use the same there on your new site.

First, look at your current site on wordpress.com and check the Design / Themes – your current theme is shown at the top:

Then, on your new site, under Appearance / Themes, try to find the same theme.

If you used one of the proprietary themes on wordpress.com, then you will have to try to find a similar-looking theme, but you do have access to thousands of themes to pick from!

Plugins – love them or delete them

You will see the ‘WordPress Starter’ banner on the dashboard until you delete the plugin, so I would do that first.

At this point, I recommend that you install and configure a free security plugin which includes the ability to force two-factor authentication for site administrators, and immediately turn that on. WordPress sites attract hackers and bots quickly, so it’s best to protect yourself.

The free JetPack plugin will do the job, or you could use my favorite, the free WordFence Security – Firewall plugin. Either of these plugins will suggest upgrading to the paid version, but the free one is good enough.

2. Export all your content from wordpress.com

To migrate from wordpress.com, you have to export all your content: posts, pages, and media such as images. WordPress.com gives you a non-standard export screen, but gives you the means to do this quite easily.

Two export options

Export media library

The ‘Export media library’ option is quite straightforward – it directly downloads a zip file containing your entire media library folder. I would certainly go ahead and do this as a backup, but you won’t need it for the next steps.

Export content

The option we need to use is ‘Export content’, which will email you a link to download a zip file that contains an XML file. Yes, it’s a little convoluted. For most purposes, this XML file is all you need to migrate your site from wordpress.com.

When you select ‘Export content’, you get a message that it has sent you an email:

You can click on the grey ‘Download’ link on the right of the message, or check your email and click on the Download link in the email.

When the zip file has downloaded, you need to unzip the file to expose the XML file, since you cannot import the zip file. The XML file contains all your posts and pages, and references to all the images used in the posts and pages.

Now go to your new site, and select Tools / Import. You will see a screen like this:

Click Install Now on the WordPress option at the bottom of the list, and when it has installed, the option will become ‘Run Importer’:

When you click on Run Importer, you finally get to the first actual import screen.

Click on ‘Choose File’ and select the XML file that you unzipped from the file downloaded from wordpress.com. Then click ‘Upload file and import’.

In the Import screenshot below, there are two important prompts.

‘Assign Authors’ determines the user that is assigned to the posts and pages you are importing.
  • If you leave the settings at the default, as shown below, the users that created the content on the wordpress.com site will be created on your new site.
  • If you don’t want to keep the same author name, you can type in a login name for a new user which will be created and all content will be assigned to that user.
  • Finally, you can select an existing user on your new site (which if you have followed along with the steps above, will just be the administrator). If you select an existing user, then all the imported content will be assigned to that user.
‘Import Attachments’ needs a little explanation.
  • None of the actual images that are used in your posts or pages are included in the XML file. As noted above, the actual files can be downloaded in a zip file if needed. Instead, the XML file contains content with hard-coded links back to your wordpress.com site.
  • If you leave the ‘Download and Import’ checkbox blank, your content will be imported, and it will look correct, with all images intact, but if you look at the HTML behind the image, it will be pointing back to your wordpress.com site.
  • If you set the ‘Download and Import’ checkbox, the images used in your posts will be downloaded to your new site (and will appear in the Media list), and when your content is imported, the image links will all be updated to point to the image on your new site.

Here’s what the media list looks like after the import (the new site started with one image of mountains):

Here’s an example of an image in one of the imported posts:

To check the image link, let’s have a look at the HTML. Select the image, click on the three dots, and select ‘Edit as HTML’.

Note that the image tag points to an image on your new site, not the wordpress.com site.

The ‘Download and Import’ checkbox only affects media that was on your wordpress.com site.

If your original site had links to media on other sites, like Pinterest, Google images, etc., checking the ‘Download and Import’ box will NOT attempt to download the images to your new site – they will be left off-site.

So that’s all you have to do to migrate from wordpress.com to your own domain:

  • Set up a new, empty WordPress site using your new domain name
  • Export your content from wordpress.com
  • Import your content to your new domain

I hope this long step-by-step guide is helpful!

2 thoughts on “Migrate from wordpress.com to your own domain – simple step by step tutorial”

Comments are closed.