How to Start a Blog and Make Over $10,000 Per Month

Wondering how to start a blog? Hi, I’m John. I’ve been blogging for 9 years and I like simple. In this beginner’s guide, I’ll show you how to start a blog simply (and on a budget). No technical experience required. It’s easier and faster than you think!

how to start a blog

I created my first blog in 2010 with zero computer experience. It took me forever because I had to google my way through. This how-to guide has step-by-step instructions in an easy-to follow format.

7 steps to start a blog

  1. Decide what to blog about
  2. Choose a blogging platform
  3. Pick hosting
  4. Set up your blog
  5. Get started with WordPress
  6. Complete your domain setup
  7. Customize & launch!

Don’t worry, I’ll walk you right through. We’ll talk about troubleshooting and the next steps too.

What is a blog?

A blog is a type of website with posts (articles). The newest ones are usually displayed at the top.

Why start a blog?

Here are a few popular reasons from my readers:

  • Make money working from home. I make a full-time income blogging. Many bloggers do the same. Blogging takes work, but low risk and low overhead make it a great opportunity.
  • Become a published author. Publishers want authors to have an online presence. The reason is simple: it’s a lot easier to sell books to people who already know you. A blog is a perfect way to become known.
  • Help your business or organization. A blog helps businesses and organizations reach a lot of people at little cost.
  • Just write. If you want to write, share your story or encourage others, a blog is a great place to do that.

A blog is an online home you own and control. If you’re serious about breaking into the online space, don’t put your livelihood, brand or reputation in the hands of others, like social media.

How much does a blog cost?

If you use the method below, it works out to $5 to $10 a month. I blogged for years on this budget. As my blog and income grew, I started paying for more premium tools and services, but they are not required to start.

Can I start a blog for free?

Yes, but I don’t recommend it if you want to make money. Why? Five reasons:

  • Limited monetization. Some free services limit the money you can make unless you “upgrade” to a higher level. You’ll have to pay for that upgrade of course, which defeats the purpose of having a free blog in the first place.
  • Lack of support. Companies don’t offer free blogs out of the goodness of their hearts. They want to make money. If you’re not making them money, they won’t go out of their way to keep you happy. Sometimes this means you’ll have little to no support. Other times you’ll be badgered with offers for their paid-for products.
  • Only basic features. Basic features might not be a problem at first, but as you grow, you’ll feel the pinch. Expandability and flexibility are key. Both are limited with free blogging services.
  • Switching isn’t easy. If you want to switch to a better service later (common for those who start a free blog), it’s a hassle and can be costly. Doing it yourself takes a lot of time and know-how. Hiring someone to do it correctly costs hundreds of dollars.
  • Can’t use others for inspiration. This happens to new bloggers all the time. They start a blog for free. Soon they notice cool features on other blogs which they want too. The problem is, those features aren’t options on their free service.

If those common pitfalls don’t convince you, or a free blog is truly your only choice, I would start with Medium or Blogger.

How long will it take to make money?

Those who treat their blog like a part-time job typically start making coffee money for around 6 months, and a solid part-time income around 12 months. If it’s a consistent, full-time income you’re after, allow 24 months.

What is the best kind of blog to start?

I recommend a self-hosted WordPress blog. Most big and small bloggers do.

These are my easy-to-follow steps to start a self-hosted WordPress blog, no technical experience required.

Step 1: Decide what to blog about

If you’re part of a business, company or organization, your blog should be related to the product(s) or service(s) you provide, or the cause you promote.

If you’re an individual, you have more flexibility when choosing a topic. I talked about it here, but the main things to remember are:

  • Blog about something you enjoy. If you aren’t excited about your topic, writing about it will be drudgery. (And who wants that?) Also, readers won’t be enthusiastic if you aren’t.
  • Blog about something with plenty of room for discussion. A blog requires a lot of content to get going and remain interesting. You’ll be at this a long time so make sure you have plenty to talk about.
  • Choose a niche in which you can establish yourself as an authority. You probably won’t be the first person to blog about the topic you choose. Don’t fret about this, just come up with a unique angle. Do you have a reasonable chance of making your blog better than others talking about the same thing? The goal for any blog is to become the go-to resource in its topic or niche.

What if I don’t know what to blog about?

Start anyway! One of the biggest beginner mistakes is thinking your topic must be set in stone before you start. If you’re like most of us, you’ll either switch topics or settle into something as you go.

Step 2: Choose a blogging platform

If you want to open a restaurant, you need a kitchen to prepare food. If you want to start a blog, you need a blogging platform (software) to prepare words.

There are many blogging platforms to choose from. WordPress, Blogger, Squarespace, Wix, and Weebly are a few.

All have pros and cons, but WordPress is by far the most popular (source), and for good reason. It’s flexible, functional, has a large community of users and works great if you want to make money.

I use and recommend WordPress.

(But not from Wait, what? I know, it’s a bit confusing. It has to do with hosting. So let’s talk about hosting…)

Step 3: Pick hosting

As I said, if you want to open a restaurant, you need a kitchen to prepare food. But you also need a dining room to serve your guests, right?

Similarly, if you want to start a blog, you need a blogging platform to prepare words, but you also need hosting to “serve” your blog to visitors.

Put another way, a blogging platform puts your words into blog form. Hosting makes your blog live and accessible on the internet.

Let’s recap:

  • Kitchen + dining room = restaurant
  • Blogging platform + hosting = blog.

With me so far?

Now, back to that confusing thing I mentioned at the end of Step 2…

When you choose WordPress as your blogging platform, you have two options for hosting:

  • Hosted WordPress blogs, sometimes called blogs, are hosted by WordPress themselves. These blogs are free, but in exchange, you get less control and your income potential is limited. (Sad.)
  • Self-hosted WordPress blogs, sometimes called blogs, are hosted by a host you choose yourself. These blogs cost a little money but give you much more control, plus your income is not limited. (Hooray!)

Sidenote: Even though a self-hosted WordPress blog is sometimes called a blog, you do not have to use a .org at the end of your name. You can still use .com, just like Alright, moving on…

As we said, to start your own blog, you need two things: a blogging platform + hosting. Let’s get both at once, shall we? It’ll take about 15 minutes.

Step 4: Set up your blog

The combination I’ve personally used, paid for and recommend to beginners is WordPress (blogging platform) + Bluehost (hosting). It’s a simple, all-in-one setup, and there’s a money-back guarantee. Plus, use this link for a discount:

–> Click here to go to Bluehost. Hit the green Get Started button. Also, you can check about the bluehost reviews here.

Select a plan. Scroll to the plan choices. Click a green Select button to choose a plan:

I prefer the Plus (formerly Choice Plus) plan because it has more unlimited features and includes domain privacy. Domain privacy keeps your personal contact information hidden from the public and who doesn’t want that?

If you choose a different plan, you can add it later for a fee.

Enter the domain you want to use. Or, skip this step and choose later (super handy!).

Your domain is your web address. For example, is my domain name.

If you’re not sure what domain to use, or your first choice domain is taken (very common), click the link at the bottom to easily choose one later.

Otherwise, enter a new domain, or one you already own in the appropriate box. (Entering an existing domain won’t connect it yet. It’s only used to identify your Bluehost account for now.)

For this tutorial, I’ll use a new domain, but you can follow along with no matter what you decide.

Set up your Bluehost account. Sign in with Google or enter your contact info manually. Either works.

Select your package information. Choose a package based on how far in advance you want to pay.

Bluehost bills 1, 2 or 3 years upfront. They do not offer a monthly payment plan (hosts that do charge much more). As you can see, it works out to be just a few dollars a month. And remember, there’s a 30-day money-back guarantee!

Tip: The low pricing for new customers applies to the first payment only. For example, if you choose the 12-month plan, your pricing will be good for 1 year but may go up after that. If you choose the 36-month plan, your pricing will be locked in for 3 years. So, choose the longest plan your budget allows.

Skip the package extras except for domain privacy. (Don’t see the option for domain privacy? See below.)

As I mentioned, domain privacy keeps your personal contact information private. It’s free with the Plus plan.

If you chose a different plan, add it here by checking the box.

You won’t see the option for domain privacy here if you are using an existing domain or will choose a domain later. For existing domains, domain privacy is handled by the company where you registered it in the first place (GoDaddy, Namecheap, etc.), so contact them. If you choose your domain later, Bluehost will give you the option for domain privacy then.

I uncheck the rest of the boxes.

Complete your hosting purchase. Enter your payment information, review the Terms, check the box, hit Submit.

Create your account and set a password. This is the password to your Bluehost account, not your WordPress blog (that will come via email).

Log in to Bluehost. Use the password you just created. Or sign in with Google.

Start creating your website! Enter the name of your blog and a tagline if you have an idea. If not, you can easily change it later.

Toggle the switch next to “Do you want a blog?” to turn it on. (Leave it off if you want a regular (static) website without blog posts. You can always add a blog later.) For this tutorial, I’ll assume you want a blog.

Choose whether you want your blog posts to show up on your home page or on a separate blog page. This is a matter of personal preference and can be changed at any time.

I’ve done both. Currently, I display my blog posts on a different page. If a visitor comes to my home page, they’ll see a welcome page that doesn’t change. If they want to read my blog posts, they can click the Blog link in my header.

Finish the survey questions. You may be asked about the type of blog you’re starting or how new you are to blogging. Neither locks you in.

Skip any free themes. Unless you are familiar with a theme listed, skip this step (link at bottom). Why? Because many free themes aren’t kept updated, leaving holes in your site’s security. It’s not worth the risk. Choose a better theme later. I’ll show you how.

Congratulations, you have a self-hosted WordPress blog!

From here, I click the WordPress button so I can configure important settings in the WordPress Dashboard which we’ll do next…

Step 5: Get started with WordPress

At this point, you should have two sets of login information (sent via email):

  1. WordPress, where you write your posts and manage your blog.
  2. Bluehost, where you manage your hosting account and pay your hosting bill.

You can log into your Bluehost account at, but from this point, we’ll spend most of our time in WordPress.

Welcome to the WordPress Dashboard. You’ll spend a lot of time in the Dashboard, publishing posts and managing all aspects of your WordPress blog. It’s the nerve center of your blog.

The black column on the left is a good indicator you are in the WordPress Dashboard. The rest of the screen might look different. Not to worry. The key is the black column!

Alright, let’s get important settings in order first.

Check your permalink structure. Your permalink structure determines how your post and page URLs will be formatted. We want one that’s good for SEO.

WARNING: If you’ve already published posts or pages, do not change your permalink structure. It could result in broken links. But if you’re just starting, you can continue.

  • Go to Settings > Permalinks.
  • If it’s not already selected, choose Post name. Click the Save Changes button at the bottom of the page.

Change your username from admin. This is to protect your site from hackers who exploit the default admin username. To change it, first, create a new user then delete the admin user.

  • Go to Users > All Users > Add New.
  • Fill out the new user information.
  • Choose “Administrator” for the role.
  • Save your changes and log out of WordPress.
  • Log back in with the non-admin username and password you just created.
  • Go to Users > All Users.
  • Hover over the admin username in the list and click the delete link.
  • Attribute all posts and links to the new user and confirm the deletion.

Step 6: Complete your domain setup

Move from your temporary domain. The way you proceed here depends on what you entered in the domain screen back in Step 4.

Did you enter a new domain? Activate it. Check your email inbox to find the domain activation email. Click the button inside to complete the activation process. Simple. Now just wait. Bluehost will automatically switch it for you.

Did you enter an existing domain? Point it. Edit the name servers where your domain is registered. Here are instructions by the registrar. If you get stuck, call Bluehost and they’ll walk you through.

Did you click the link to choose your domain later? Assign it. First, decide on a domain. In your Bluehost account, go to the Domains section (an option in the left column) and search for the domain you’d like.

At checkout, the balance will be zero because the credit for a free domain was automatically applied. Also at checkout, you can add domain privacy if you didn’t choose it before (which I definitely recommend).

Once you have the domain, it will be listed under the Domains section in your Bluehost account. Select it.

On the right side of the page under the tab titled “main” scroll down to cPanel type. Click Assign.

Wait a few hours for your domain to propagate. That’s a fancy way of saying it takes a while for your blog and your domain to find each other on the world wide web and solidify their connection.

If you’re wondering if they’ve found each other, type your domain into your browser’s address bar (Chrome, Safari, Firefox, etc.) and see if your permanent domain sticks without forwarding to your temporary domain. If so, you’re set!

Sidenote: Your blog will look horrible at this point. Don’t worry, I’ve got you covered there too. More on that below.

Step 7: Customize & launch!

This is where you take over and start making your blog your own. I recommend doing things in the following order.

Publish some pages and posts. Adding content to your blog makes customizing your design easier since it won’t be empty like a deflated balloon. Also, readers will have something to read.

Pages. The pages I recommend creating first are:

  • Home
  • Blog
  • About
  • Contact
  • Privacy Policy
  • Others (Disclosure Policy if you sell something)

Posts. I recommend having at least 2-3 excellent posts published when you launch. If you’re having trouble coming up with ideas for your first post, type your main topic or niche into Google and see what others have written. Don’t copy of course, but use those posts as inspiration. Make your post even more thorough.

It’s good to have solid content available if visitors find you, but at the same time, don’t get bogged down writing a dozen or more posts before you publish anything. Get your blog off the ground as soon as possible! This helps with SEO.

Customize your design. If you’re like most, you’ll want to customize your design. A lot of new bloggers get really excited about all the design options available. However, less is more. The fancier your theme, the more moving parts. The more moving parts, the more there is to break. Read my post about choosing a WordPress theme.

To install a free theme from your Dashboard go to Appearance > Themes > Add New. Search for GeneratePress. Click Install > Activate. This video explains how to use it, but will be helpful regardless of the theme you choose.

Remove the Coming Soon page. Bluehost automatically starts your blog with a Coming Soon page:

When your pages and posts are published, and your design is customized to your liking (it’s always changeable!), click the button at the top of your Dashboard and follow the prompts to remove the Coming Soon page:

Congratulations, your blog is live!

Disclosure: This post contains affiliate links. If you click through and make a purchase, I’ll earn a commission, at no additional cost to you.