How to Start a Blog: A complete step-by-step guide


Starting a blog has never been easier or more accessible than it is today. Not that long ago, the skills required to start a blog included a good working knowledge of HTML, CSS, and PHP at the very least, as well as understanding how to set up and maintain servers.

But not anymore.

In fact it’s so easy to start a blog today that if you’ve found your way to this page, there’s really no excuse not just go for it! I’m going to lay out all the necessary parts that go into setting up a blog so you can get started right away.

If you get stuck, I’m happy to help out with advice, so feel free to email me personally with any questions, and I’ll do my best to get back to you quickly.

With that said, let’s jump straight in.


If you already know a bit about how websites work, and just need a bit of advice on which services to use, take a look at our best WordPress hosting providers, or check out the following:

If you’re planning to create an email list, I’d recommend Mailchimp if you want it to be easy, or if you need extra tracking options and have a bit more technical knowledge.

I’ve also put a CHECKLIST at the bottom of the page to make sure you’ve got everything in place.

start blogging

Before you start your blog

Before you start setting up your blog, ask yourself if you’re really into doing this. It may sound dumb, but whilst starting a blog is a wondrous and liberating thing, it does take time to nurture into what you might have in mind right now.

There are several things you should take into account when deciding whether to start a blog:

Time investment - Obviously it takes time to write a blog post and keep your website updated. You can spend as little as a few hours per week writing a post and uploading it to your site, but if you’re really dedicated, you’ll be putting in a lot more than that.

Cost - It isn’t necessarily expensive to start a blog, you can get something up and running for under $5/ month, and BlueHost actually offer a free domain, so it could be worth taking them up on that if you’re on a tight budget. There are, however, hidden costs to running a blog. There will come a time when you want to promote your blog to build your audience, and that costs money, whether it’s advertising on FaceBook, Twitter, etc. or emailing companies to get them to feature your blog - it all costs time and money.

In fact, if you're looking for something more professional, I'd recommend hiring a website management company to make sure there are no user experience or design issues.

Competition - If you want to get thousands or even hundreds of thousands of visitors to your blog, you’ll eventually discover that blogging can be a highly competitive and ruthless industry. Of course you can become an ‘influencer’ and then the competition becomes much friendlier, but again, this takes time and a lot of effort.

Audience - Who do you hope will read your blog? If it’s just for friends and family then this isn’t really very important. However, if you want to gain a wider audience, you’ll want to look into promoting your blog. There are several routes you can take for this, such as SEO and paid advertising.

Finance - Will you monetize? This isn’t really an option until you’ve got a fairly established blog, but is worth thinking about early nonetheless. Are you looking to supplement your income or replace your 9-5?

Starting a Blog - [know these terms]

Before we get down to actually setting up your blog, let’s make sure we’re on the same page with the following basic terms, as they’ll come up a lot throughout this guide.

Domain - This is the name of your website. For example, this domain is ‘’. You’ll need to register a domain before you can get started with setting up your website or blog. Most hosting providers have the option to buy a domain when you sign up for a hosting package with them. BlueHost actualy gives you a free domain for the first year, so that’s pretty cool, although it’s easy to buy a domain for between $1 and $10 per year.

CMS - Short for Content Management System. A CMS can be understood as the platform you use to communicate with your website. It’s where you will do the designing, editing, and blogging. A good CMS makes it easy to create a website without needing to learn how to code. If you’ve read this far, you’ve probably heard of WordPress, which is the most popular CMS, and the one we recommend (WPHostGuide is built on WordPress).

Hosting - If a domain is the name of your website, hosting is where it lives. In the simplest terms, hosting can be described like a hard-drive (server) that stores all the files on your website. People connect to your website through your host, which serves the files in order to them. There are lots of things to look out for in a hosting company, check this guide to get an idea of how to choose. If you want just get started right away, go for BlueHost or SiteGround.

CPanel - This is where you can communicate directly with your web hosting servers. Here you can set up your email, DNS, SSL, IP blocking, backups, etc. You’ll need to become at least partially familiar with CPanel. Luckily it’s pretty straightforward.

start a WordPress blog

Which CMS to choose?

Start your blog on WordPress (.org), there’s no other platform (CMS) nearly as user friendly or easy to set up and maintain. If you’ve never built a website before, you’ll likely be happily surprised at just how easy it is.

Notice I mentioned the .org part of WordPress. This is because there’s also, which is like a basic version of a blog, but has so many limitations that it’s not really worth using. On the plus side, you can start publishing your blog straight away for free, but some of the caveats are that you never really own your blog, and you have to have a domain (i.e. ‘’), which just looks amateurish., however is just the software CMS that you install on your own servers (your web host). It is free, easy to use, and requires minimal technical knowledge to get started.

How to choose and register a domain

What name do you want for your blog?

Will you use your own name?

Or a name that describes the content of your blog?

A lot of time can go into choosing the best name, and it can have long-term implications. You don’t want a domain that’s too long, as people won’t remember it, or will spell it wrong and give up. You do want it to be unique and easy to remember, and not too much like a more famous website.

Like I mentioned before, you can pay as little as $1 for a domain on GoDaddy, and they also offer hosting, or you can get one for free from BlueHost if you sign up for one of their hosting packages. I can also recommend NameCheap for both domain registration and hosting.

The major benefit of buying your domain and hosting from the same company is that it usually comes ready set up so you don’t need to mess around registering the domain with the host.

How to set up your hosting

Most hosting providers have a very simple set up process. Usually it’s as easy as choosing your package, entering your card details, and using a pre-built installer.

NameCheap makes it very easy to Install WordPress, in fact my first website was on NameCheap, and I managed to set it all up in less than an hour. They also have AMAZING customer support, and will help you out if you get stuck. Alternatively, BlueHost has a one-click WordPress Installer, that makes it as simple as signing up, logging in, and hitting ‘Install WordPress’.

Set up your email

You’ll want to add an email account too, which can be done in CPanel. Your CPanel logins will be sent to you by your host, and you’ll usually need to go to to log in.

Once in CPanel, go to the email section, click ‘add email’, enter the name you want, i.e. and enter a password - It’s that easy! Then click the ‘more’ button, and ‘access webmail’ to start using your email account. You can also check the default URL to directly go to your webmail, which is usually something along the lines of ‘’.

Cpanel email setup

How to set up WordPress

Follow all these steps to make sure your WordPress installation is set up properly.

Create a new account - this is your username and password to log on to WordPress so you can edit your website. Hacking is a very real thing, choose a strong password! (Or use LastPass to create a super strong one for you).

Choose a theme for your blog - Now you’ve got wordpress set up, you’ll be able to access your site, which will have a very simple and clean, but not very interesting or unique, blogging template.
To select a new theme, in the left sidebar, go to ‘Appearance’ > ‘Themes’ ‘Add New’, then browse through the free themes available (premium themes are also available through sites such as, but aren’t really necessary at this time).
You can preview what the theme will look like on your site, and once you’ve found one you like, click ‘Install’, and wait a few seconds, then click ‘Activate’.

Next go to ‘Customize’ where you’ll be able to choose what your homepage looks like and how your site works. Give your site a title, add an image (you can get high quality, royalty free images on

If you want to have your blog posts on a specific page, rather than the homepage, you’ll need to go to ‘Settings’ > ‘Static Front Page’ and click ‘A Static Page’, then choose a page for your blog posts to be displayed on.

How to create your first blog post

So now you’re ready to create your first blog post! This is where it gets real!

In the main WordPress dashboard, hover over ‘Posts’ and click ‘Add New’. And get started!

The main parts of the post editor are shown Below

WordPress New Post
  1. Give your blog post a title
  2. This is the main area where you write your post, add images, etc. You can simply copy-paste from a Word or Google doc straight into here.
  3. Here you can toggle between the normal visual editor and text editor. The text editor is WordPress’ simplified HTML editor, and can be very useful for adding more complicated elements to your blog.
  4. Click here to add images to your post. You’ll need to upload the image to your media library first, you can do that after clicking ‘Add Media’.
  5. The basic text editor controls. For adding subheadings, choose the drop-down box that says ‘paragraph’ and choose the type of header you want.
  6. Once you’ve written your post, save it as a draft.
  7. Then hit ‘Preview’, to see what your post will look like once published.
  8. When you’re happy with your post, hit ‘Publish’ and it will go live straight away! Don’t worry if you find mistakes, you can easily edit the post later.

That’s it! Give yourself a pat on the back, you’ve just set up your own site AND written your first blog post!

Extras to get your blog off the ground

Now you’ve set up your blog and written your first post, share it on Facebook, plan your next post, start thinking about how you can add video to your blog, wonder how you can monetize and build a blogging empire!

The following are a few more things you’ll definitely want to do fairly soon:

Set up Google Analytics

Google Analytics is a proprietary web application that allows you to track important data about your website’s visitors such as - how many visitors you get, how long they stay for, which pages they visit, how they found your website, etc. Whilst not the only tracking software available, it is the standard, and it’s free.

Google Analytics is a proprietary web application that allows you to track important data about your website’s visitors such as - how many visitors you get, how long they stay for, which pages they visit, how they found your website, etc. Whilst not the only tracking software available, it is the standard, and it’s free.

Start by going to and sign up for a new account.

You’ll be taken to a new page with a box filled with code. This is the javascript tracking code that you need to add to your website to verify that you own the site, and to send the usage data to Google Analytics.

How to implement the Google Analytics tracking code

  1. Copy the website tracking code (everything inside, and including the <script></script> tags).
  2. Go back to your WordPress Dashboard and go to ‘Appearance’ > ‘Editor’ then in the right sidebar, find the file called ‘header.php’, and find the <head> tag.
  3. Just after it, paste your tracking code, and hit ‘Update’.
  4. Go back to your Google Analytics tab and click 'Verify'.

If it has worked, you’ll get a confirmation message, and Google Analytics will start tracking your website’s usage data more or less straight away.

Learn how to write a great blog post

Writing for the web takes time to learn. Whilst beyond the scope of this article, there are a lot of fantastic resources out there to help you get started. Here are some of my favorites:

Learn how to promote your blog:

Setting up your blog so that it can be found by search engines, then strategically promoting it so that people can find it on those search engines is called SEO - Search Engine Optimization.

Here are some awesome resources to get you started:

Starting a blog - Checklist and conclusion

Well, there you have it. If you follow these exact steps, you should be able to start your blog in a couple of hours. But that's just the beginning, now is where the real fun (hard work) comes in.

I wish you the very best of luck on your blogging adventure and, as always, I'm here to help should you get stuck.  Feel free to drop me a line via my contact page and I'll do what I can to get you unstuck.

Take a look at our best WordPress hosting providers if you need some help choosing a host.


  1. Choose your CMS
  2. Register a domain
  3. Buy and set up hosting
  4. Set up email
  5. Install and set up WordPress
  6. Create your first post
  7. Set up Google Analytics
  8. Learn how to write a great post
  9. Promote your blog
  10. Have a rest, you’ve come a long way


Did you find this guide useful?

I'd love to hear about your experience setting up your blog! Let me know any difficulties you had in the comments below.

Leave a Comment


Earnings Disclosure