Here’s my easy-to-follow, step-by-step, ultimate guide to help you start your own blogging career and make online money. I’ve been blogging for many years and in this article, I’ll show you everything you need to know to get started right now.

This article is comprehensive and thus quite long. To make it easier for you to navigate different topics, I divided it into seven easy steps. You can read the whole thing from the beginning to the last words, but if you’re familiar with some aspects, feel free to skip to the topic you’re interested in.

Disclosure: Please note that some of the links in this post are affiliate links for products I use and love. This means if you click on such a link and take action (like subscribe, or make a purchase), I may receive some coffee money at no extra cost to you. This helps me creating more content free of charge to you. And, as an Amazon Associate, I earn from qualifying purchases. Thanks for your support!

How to Start a WordPress Blog in 7 Easy Steps

Start a WordPress blog with these simple steps:

  1. Choose your niche
  2. Pick your domain name
  3. Select the right web hosting
  4. Design your WordPress blog with a theme
  5. Create essential blog pages
  6. Write and publish your first blog post
  7. Make money with your blog
What is WordPress?

WordPress is the most famous content management system, software for writing, and publishing articles. WordPress is available in two flavors. It can be used as a service available at or it can be downloaded as a software package available at and installed on a web server. If you want to learn more about the differences between those two flavors, check this article

What is a blog?

A blog is a list of posts and it's usually the most important part of content-focused websites where new content is frequently published. Some companies use a blog as a way to further introduce their products and services.

For example, GitHub has a blog on a separate domain. Sometimes, running a blog is the whole purpose of the website and the list of posts has a prominent place right on the landing page. Smart Profit School is a blog-based website focused on passive income. TodayWP is also primarily focused on delivering frequently up-to-date content about WordPress-related topics.

Why you should start a WordPress blog?

Having a website is the best way to establish your online presence. You don't want to be at the mercy of social networks which can delete your account anytime they decide you didn't follow their community rules. You want to have your own digital home where your readers and followers can always find you.

On top of that, starting your own blog is the easiest way to establish your online business and earn some income by selling digital products or by recommending the products and services of others via affiliate partnership.

What if I'm not a programmer or designer?

Don't worry. There are different ways to start your blog, granted, some of them are pretty technical, but you can definitely start blogging even if you're not tech-savvy, as it becomes easier each year. That's why this guide is focused on WordPress, the easiest publishing platforms to learn and use. I'll walk you through every step so you can start publishing today.

Am I not too late? Is it still possible to make money online?

Of course, it's still possible! People are increasingly starting to realize that working from home is a viable alternative to a traditional 9-to-5 job and with the recent pandemic development, this trend will only continue.

There are new audiences coming up each year, people who want to learn new skills online. With ever-improving Internet availability and speed, they can now take online courses and even university lectures on their notebooks while sitting on their couch. Udemy and Skillshare are only two examples of huge online libraries of content delivered to millions of students every day.

The best part about blogging is that it can be the most profitable online business yet there's very little upfront cost. All you need is a domain name and a decent web hosting service.

What if I still need to keep my job?

That's perfectly fine! I still keep my regular job as well. It's a nice safety-net and you don't need to become a full-time blogger. Even as a part-time blogger who publishes just a few new articles each month, you can earn some serious money over time and eventually quit your regular job later, or keep it if you like it.

Ok, I hope I was able to help you decide whether blogging is for you with the answers above and if you're ready to take a leap and learn how to start a WordPress blog that can eventually become your primary source of online income, let's get started!

1. 1. Choose your niche

Your niche is the topic or area of interest you want to cover. This means that it’s something you want to focus your content around. It’s been shown that unless you’re a famous star, it’s not a good idea to have a broad approach and write about everything.

You should always try to niche-down and make your blog focused sharply on specific problems or issues. Choose the topic like technology, travel, lifestyle, food, or fashion and try to get into a more specific topic in that category. For technology, choose web development and inside it, focus on CSS for example. For food, focus on meat-related topics like steaks. The broader your focus is, the hard it will be for you to fight with competition.

On the other hand, you should get too specific or you’ll attract a very small group of people, but most of the time, bloggers suffer from the exact opposite problem, their blogs are too broad.

I made the mistake of being too broad when I started my website. I’m interested in productivity, programming, fitness, passive income, and many other fields and I thought that putting everything on a single blog was a good idea.

Unfortunately, it turned out that people were very confused. Those interested in a weight-loss couldn’t care less about articles focused on regular expressions or databases, those interested in productivity didn’t appreciate much my detailed course about web development.

Later, I realized that I needed to create niche-specific websites for these areas, so I started different blogs for programming (, passive income (, fitness (, and this website about everything related to WordPress. I kept my website only for stuff related to personal development and productivity and I also create two micro sites for specific products ( and

So, there’s nothing wrong with having multiple hobbies or projects, but you shouldn’t put them all on one website.

Sometimes, it can be very helpful to incorporate a word that clearly signals what your content is about right withing the name of your blog, or even better to the name of the domain itself. See my domains, and I guess you can tell what they are about even before you actually check them out, right?

What if I can't decide on a niche?

That's alright. Just start writing and you'll see that later, you'll realize what you naturally gravitate towards and what topic you're enjoying the most. After all, you should write about stuff you like, otherwise, you won't be able to keep at it. It's better than waiting until you come up with a great idea.

2. 2. Pick your domain name

You should consider your domain name as your digital address and your website as your digital home. A good address is very important and picking the right one isn’t simple. Take your time and have a domain registrar search field ready to immediately check whether your favorite domain name is available. I can recommend the Porkbun registrar, which is quite affordable and also very easy to use.

When it comes to the domain itself, you have basically two options. You can choose the domain based on your real name, like in my case, or you can try to find a suitable name based on keywords, like

Domains based on your real name should be available, especially if your name is quite unique, while keyword-based domains are very popular and it’s getting increasingly harder to find domain names that are not already registered.

I dedicated the whole article to this issue, so check How to Pick the Best Domain Name for Your Blog for more detailed information and some tips.

What if the domain name is already registered?

Most hosting providers will allow you to connect your WordPress with your domain name later, so while you're trying to come up with some alternative domain name, you can still start writing and publishing your content. It's actually better if you already have a few dozens of articles ready before your website goes live because it looks very weird when there's zero or one blog post.

What if I want to change the domain name later?

Even though it's definitely possible (all you need is a new domain name that you'll connect to your website), I'm generally against it because you will lose all the links that might be already spread over the Internet. It's like moving to a different address, you are basically starting from scratch when it comes to domain authority and content marketing. It's far better to take your time with the domain name selection and once you're done, don't change the name and don't obsess over it too much.

3. 3. Select the right web hosting

This is my favorite topic because I personally vetted many hosting providers and unlike many affiliate websites out there, I am proud to deliver an honest opinion on services I personally tested.

Why do I need web hosting?

Web hosting is a paid service that will make your website accessible online. You can run a website on your local computer but nobody except for you will be able to visit it. You need a computer connected to the Internet 24/7 that is specifically configured to deliver your website fast and reliably.

How much should I pay for web hosting?

There are some free hosting services, but as you probably guessed, when it's free, you're the product, and nobody will give you quality stuff for free, somebody has to pay for it eventually. Free services are often littered with ads and they are painfully slow. You can get a quality shared hosting plan for as little as $5 per month, or you can opt for managed hosting, which is around $25 per month, but offers far better overall experience and performance.

What's the best web hosting plan for beginners?

This really depends on your budget. You can choose the cheapest shared hosting like Hostinger, you can try more expensive pseudo-managed plan like SiteGround, or you can opt for the best managed hosting available, which is currently Kinsta. For beginners, I suggest something in between which will give you the most bang for your bucks, and it's Flywheel. It is still true managed hosting, but it comes with some amazing perks like premium StudioPress themes. Regardless of which web hosting service you choose, make sure that you pick a reliable company with a good track record that focuses on security, support, and speed. endorses three middle-tier hosting companies, Bluehost, DreamHost, and SiteGround.

Web hosting reviews

If you want to learn more about different web hosting plans I recently reviewed, make sure to check these articles:

  1. 10 Best Web Hosting Plans for WordPress

  2. How to Set Up WordPress with Hostinger

  3. SiteGround Managed WordPress Reviewed

  4. Managed WordPress by Flywheel Reviewed

However, I swear by Flywheel for beginners and Kinsta for advanced bloggers and that’s why I can wholeheartedly recommend both of these.

Ready to set up your web hosting account?

I made these quick tutorials to walk you step-by-step through the entire process in just a few minutes:

4. 4. Design your WordPress blog with a theme

Default WordPress installation comes with a few basic themes, but I recommend three themes for their ease of use, speed and SEO capabilities. These are GeneratePress, Elementor and Astra.


GeneratePress is a free WordPress theme that focuses on speed and SEO. It’s created and maintained by Tom Usborne from British Columbia who’s been working with WordPress for over 10 years. GeneratePress also offers a premium plugin that extends the free theme by adding more options for customization. This plugin is called GP Premium and it’s available at for one-time payment of $49.95. This price includes 1 year of updates. After that, you can renew your license with a 40% discount or keep using your license as is without future updates.

Installing GeneratePress is extremely easy as it’s available right from the WordPress Dashboard. You just need to log in to your WordPress administration panel, go to Appearance -> Themes, click the Add New button, and search for GeneratePress. Finally, you click the Install and then the Activate buttons.

GeneratePress can be customized via the built-in WordPress customizer. The free theme offers some basic layout, font, and color customizations which should be enough for most use cases. However, if you really want to tailor your website specifically to your unique needs, consider the GP Premium which offers over 60 color options, a site library with ready-to-use site demos, over 70 typography options, advanced blog, and navigation options, and much more.

You can learn more about GeneratePress in my article How to Install GeneratePress Theme or in my Mastering WordPress course.


Elementor is an open-source website builder platform for developers, designers, and marketers and allows anyone without programming skills to quickly create a professional-looking website. Elementor offers a free version that includes drag & drop editor with more than 30 basic templates and 40 basic widgets. For advanced widgets, theme builder, and other premium features, you need to buy either a Personal plan which is available for $49 per year for 1 site, Plus plan for $99 per year for 3 sites, or an Expert plan for 1.000 sites which is available for $199 per year. If you decide to cancel your subscription to Pro features, your existing project will remain intact, however, you won’t have access to support, updates, and premium templates.

Installing GeneratePress is very straightforward as it’s also accessible right from the WordPress Dashboard. Just search for Elementor in the Themes section under Appearance and select the Hello Elementor theme.

Elementor offers huge customization and it would take a whole article to describe all options. That’s why I have created an online course called How to Create WordPress Layout with Elementor Pro where I explain everything step by step.


Astra is a popular theme from Brainstorm Force company that builds a range of WordPress products. Astra offers a free version which can be later extended with Astra Pro add-on for $47 per year. This package includes more than 20 starter templates and can be used on an unlimited number of websites. Astra also offers a lifetime plan for $249 which means that if you’re ok with using Astra for more than 5 years, you’ll pay this price once and you’ll get every future update for free without annual payments.

Installing Astra is also very easy since it’s available from the WordPress Dashboard so all you need to do is search for the Astra theme and click Install and Activate button.

Astra offers an insane amount of options and features when it comes to customization of your website including sticky and transparent header, custom layouts, spacing control, and even integrations with learning management systems like LifterLMS and LearnPress.

5. 5. Create essential blog pages

Every blog should have at least four pages:

  • Home page
  • Blog page
  • About page
  • Contact page

Home page

The home page is the default page which is displayed whenever people visit your website’s main URL. The home page can be a static page or it can be a list of posts, but it’s very popular to have a combination of both.

In general, the home page should introduce your website to your visitors. It can have some welcome block at the top (sometimes called a hero) followed by the list of recent posts. It’s also quite popular to include a sidebar on the left or right which contains the most important information you want to be accessible all the time.

Here’s an example of the Smart Profit School home page which has the main menu at the top including the logo. Below, there’s a hero section with my photo, slogan, and a subscription form. This section is followed by a featured article that stays always at the top of the list of all other posts. Finally, there’s a sidebar on the right with some basic information about me and a link to my personal website at

Blog page

The blog page is basically a list of all published posts sorted chronologically with the latest posts at the top of the list. Sometimes, there’s only this list and nothing more on the website, but it’s quite popular to have a separate blog page which is accessible from the main menu.

Here’s an example of a blog page I have on the website. As you can see, there’s a list of all posts and this page is accessible via the Blog link in the top menu.

About page

The About page should contain basic information about you and your website. For example, why people should read your blog and how they will benefit from the information you publish there. You should also write a few lines about your professional achievements so people will feel comfortable with you as an authority. If you’re on social networks, this is a great place to tell your readers about how they can reach you on Facebook, Twitter, Instagram, and other networks.

If you’re comfortable with it, you might even add something from your personal life and always finish with a call to action section where you suggest what your visitors should do next.

Want to learn how to write a perfect About page? I got you covered in this article.

Contact page

The contact page is a great way to help your visitors contact you in case they want to ask for some additional information or just thank you for your content. Unfortunately, WordPress doesn’t have a simple contact form available by default, but with WPForms plugin, you can create an elegant contact form in just 5 minutes as I explain in this video:

6. 6. Write and publish your first blog post

Now that you have your essential pages ready, it’s time to write your first blog post.

WordPress makes it very easy to write and publish posts. In your WordPress Dashboard, just go to Posts → Add New and you’ll be immediately taken to a brand-new post canvas.

Here, you’ll start with a title of the post and then you’ll write content. If you’re not familiar with Gutenberg editor, make sure to watch this short video where I explain the most important features so you can start writing your post right away:

7. 7. Make money with your blog

Now that you have your blog up and running, let’s discuss how to make money with your blog.

You can have the best-looking and fast blog with amazing content, but if people don’t know about it, it’s useless.

Blog promotion

The first step in making money with your blog is to promote it. This will help you to drive traffic to your blog. The obvious choice is social media where you can promote your content for free. Anytime you publish a new article, post a link with a short description to Facebook and Twitter.

Another strategy is to publish your content on sites like Medium or Quora. Medium is a very interesting publishing platform with huge traffic where you can even create your own publication. Check my Medium publication and make sure to read How to Start Writing on Medium and Earn Money.

Finally, you should also start building your mailing list. This will help you deliver updates and new content directly to the inbox of your readers. Usually, you need to offer some free product, also known as a lead magnet, to motivate readers to subscribe to your mailing list.

When I started, I offered my new subscribers a free handbook 7 Rules for Success of Online Instructors. To manage your subscribers, you need a mailing service such as MailerLite or Moosend. If you want to learn more about this topic, make sure to read How to Build Your Own Mailing List with Free Online Tools.

Affiliate marketing

There are several ways to make money with your blog and one of the most popular is affiliate marketing, so let’s take a look at it now.

Depending on your niche and content, you might probably recommend products or services you personally use and write honest reviews. If you opt for this, it’s a good idea to start with affiliate marketing. Affiliate marketing is a form of promoting products and services where an affiliate sells on behalf of a merchant for a specific rate or percentage, also known as an affiliate fee.

To become an affiliate for a specific product or company, you need to find out if it offers an affiliate program, sometimes called a partner program. Usually, such a company has a link on some prominent place like in the footer as you can see below.


Some companies use their own affiliate systems, but most use affiliate networks that easily connect merchants with promoters. Joining the affiliate network is usually free. Once you’re in, you can easily find the types of products or services you would like to promote.

The most famous affiliate networks are:

It’s only fair to point out that you should always promote only those products and services you personally tried, used, and liked. You must also disclose the fact that your post might include affiliate links and explain what it means for your readers.

If you want to learn more about different ways to make money online, not necessarily with just your blog, make sure to read my article about top sources of passive income.

Get even more help with my free courses!

1. Mastering WordPress

Whether you’re building a blog, personal portfolio, a landing page for your company, or maybe even an online store, in this course, I will teach you all the fundamentals of WordPress so you can start building your own website today.

You don’t have to be a programmer, you don’t need to learn HTML, CSS, and Javascript. You need just a computer with internet access.

Each lesson builds on concepts and skills from the previous one and by the end of this course, you’ll know how to install and manage your own WordPress website.

You’ll learn everything you need about the difference between posts and pages, categories and tags, plugins, themes, and widgets.

I will show you how to secure your WordPress website with Two-Step Authentication, how to create a beautiful contact form for your readers, how to install and customize themes.

What you will learn

  • What is WordPress
  • How to use admin dashboard
  • What’s the difference between posts and pages
  • How to use Gutenberg, a new block-based editor
  • How to work with images
  • How to create text links and buttons
  • How to work with file attachments
  • How to add video and audio files to posts and pages
  • How to use featured image properly
  • What’s the difference between categories and tags
  • What publishing options WordPress offers
  • How to edit existing posts and pages
  • How to create and edit navigation menu
  • How to work with Customizer
  • How to use widgets
  • How to change blog layout
  • How to install and customize GeneratePress theme
  • How to install Genesis Framework
  • How to install Newspaper theme
  • How to use plugins
  • How to use comments
  • How to manage WordPress users
  • How to work with general settings

Who is this course for?

  • Absolute beginners who want to learn how to create their own website with WordPress
  • Seasoned WordPress users who want to learn how to work with Gutenberg editor

What do you need?

  • You don’t need any prior experience with WordPress
  • You don’t need to know any programming language
  • You just need a computer with a web browser and internet connection

Enroll now for free!

Mastering WordPress course is available on Skillshare. If you’re new to Skillshare, you’ll get this course for free, and on top of that, you’ll get 2 months of Premium Membership which includes access to the whole library of premium learning material available on Skillshare. You can cancel anytime during those 2 months and you won’t be charged anything.

Get the course!

2. How to Start a WordPress Blog in 7 Days

Now, I perfectly understand that setting up your first blog might be quite a frightening job, especially if you’re not tech-savvy. If you need some more guidance, here’s my free master course. I wanted to spread everything into a short series of lessons that you can take on a daily basis. On top of that, this course goes into much more details than this article.

While you’ll be definitely able to start your blog by reading this article, in my free master course, you’ll learn how to grow it and start making money. Throughout this 7-day course, you’ll learn everything you need without time-consuming research on the Internet and YouTube.

Do you want to learn how to start your WordPress blog in just a week? Enter your email address and first name and you’ll get instant access to my popular course for free!

You will learn:

  • How to register the best domain name
  • How to choose the best web hosting
  • How to install and customize a theme to make your blog unique
  • How to secure your blog against hackers
  • How to get SSL/TLS certificate for free
  • How to start writing content on a regular basis
  • How to drive traffic to your blog
  • How to monetize your blog with affiliate marketing, books, and online courses