How to Start a Blog That Makes Money
You have every reason to start a blog.
Not only does it give you a great creative outlet, but it can also generate extra income for you on the side.
The very blog you’re reading now generates hundreds of thousands of dollars and draws in millions of readers every month.
It wasn’t always like this. But using a few proven systems, it grew from a tiny little site with a few articles to an income generating powerhouse.
And now, we want to share our secrets with you.
How to Start a Blog in 11 Steps
- Discover your niche
- Find the perfect domain name
- Pick the best web host
- Install WordPress
- Pick an eye-catching WordPress theme
- Install WordPress plugins
- Install Google Analytics
- Set up your email list
- Pick a blogging cadence
- Build an audience
- Monetize your blog
Let’s dive into the step-by-step process of starting a blog.
Step 1: Discover your niche
If there’s one step you want to get right, it’s this one.
Choosing your blog’s topic (or niche) determines the rest of the website’s future. This is what you’re going to be writing about and — hopefully — making money from.
I have good news: The world is HUGE. That means there’s practically an audience out there for any topic.
That being said, there are some topics that tend to perform better than others. You need to find the topic that both appeals to a big audience while appealing to you.
To find the perfect blog niche, you’ll need to answer two questions:
1. What am I interested in?
What topic do you love? What are you obsessed with?
This is the basis of your blog niche. After all, if you don’t love the topic, you’re not going to want to write about it day-after-day.
To help answer this question, I suggest looking towards several areas:
- Talents. Is there something you’re naturally talented at? Maybe a sport, game, or musical instrument.
- Knowledge and skills. What skills and knowledge have you built up over the years? Maybe there’s something you went to school for that you can write about now. Think academic subjects or skills like languages and car repair.
- Career. Your current career can be a fantastic place to write about. For example, if you’re a developer for a startup, you can start blogging about front-end development or the tech industry.
- Interests. Is there a topic you just love learning about? Think about the things you do in your free time. Maybe it’s reading books, or working on your fantasy novel, or repairing that old car in your garage. This can be great topics to write about in your blog.
ACTION STEP: Write down 10–15 topics you’re interested in. Pull up a Word document or sheet of paper and actually write this down. It’ll help you keep your ideas focused. Plus, you can refer back to it later when you make your final decision.
2. What are other people interested in?
This area is a bit trickier.
You need to find out what other people are interested in as well. Otherwise, you might find yourself with a blog that doesn’t draw in a lot of people.
For example, you might think that a blog all about how wonderful your dog is is super interesting — but is that going to draw in a lot of people?
On the other hand, a blog about how to take care of and train dogs appeals to a much bigger audience of readers.
That begs the question: What topics are people interested in? Here are a few popular categories that always do well:
- Personal finance
- Online business
- Real estate
- Test prep
Pro tip: Use Google’s Keyword Planner tool to see how often people search for a specific category or niche. It’ll reveal what people are and aren’t interested in.
ACTION STEP: Take a look at your list from before. Do any of them fall under these categories? If not, that’s okay! There’s probably still an audience out there for one of your topics.
For now, I want you to choose a topic from your list that you want to turn into a blog. Once you do, you’re going to make it even more specific and niche it down.
For example, you might want to start a personal finance website. Niching it down might mean you make a personal finance website for millennials making $100,000 a year. Or for thirty-somethings who want to retire early. Or whatever else
Step 2: Find the perfect domain name
Now, let’s choose a great domain name for your blog.
I have bad news and good news:
- Bad news: Most of the very “best” domain names are already taken.
- Good news: That doesn’t matter because we’re going to find the best one for you.
After all, the Internet has been around for decades now. Of course the best domain names are already taken.
But that doesn’t mean you won’t be able to find a perfect one for your blog.
What makes a good domain name? Here are a few good rules-of-thumb to keep in mind when choosing one:
- Keep it short. Don’t force potential visitors to have to type a bunch of words to visit your website. We recommend no more than 14 characters.
- Choose a .com, .org, or .net. These are the easiest ones for people to remember.
- Easy to spell and pronounce. You don’t want to spell it out constantly for people when you mention your blog’s domain.
- Avoid numbers and hyphens. Not only does it look clunky in the URL but it’s also difficult to type out when you add hyphens.
- Use your name. It’s pretty likely that your name is available as a domain. That makes it the perfect choice for a personal blog. I’ll speak more on this later.
- Use a blog name generator. You might not find the perfect domain name but you’ll get plenty of inspiration from it.
When you come up with a domain you like, head to BlueHost to see if it’s available using their domain tool. If it is, great! If not, you now have two options:
- Search until you find an available domain. I highly recommend you do this until you find a domain that’s available.
- Purchase a domain name. While it is possible to buy a domain from someone who already has it, that’s an advanced option and can get expensive fast. Low-quality domains will usually go for a few thousand dollars. Highly quality domains that are two words can easily go for $10,000 to $50,000. I’ve even been in discussions to purchase domains for over $100,000 and the really hot ones can break seven figures. Not to mention all the hassle that comes from finding the person who owns the domain, negotiating with them, and transferring the domain if you can get an agreement.
Your best bet is to keep going until you find a domain that you like and can purchase directly from a domain registrar for about $10.
We go into lots of detail on which domain registrar to use here. But I highly suggest you buy a web host that allows you to register a domain for free. That means going with BlueHost.
Using your personal name as the domain
If this is your first blog and you’re not completely sure what you want to blog about, I recommend that you use your personal name.
The reason is that changing your domain later will mean that you have to start over from scratch. There are a lot of mistakes in blogging that can be corrected later; having the wrong domain isn’t one of them.
Let’s say you pick a domain like fitnessfordoctors.com. Then after six months, you realize you’d rather be doing personal finance blogging for doctors. You’d need to get a new domain and start over from scratch.
Personal domains are much more flexible — it’s just a name after all. So if you jump categories after a few months, it’s not a big deal. Take down any old content that’s not relevant with your new direction, start posting new content, and you’re good to go.
That said, personal domains have two major downsides:
- Scalability. It’s much more difficult to recruit other writers or grow your blog beyond your personal identity later on.
- Sellability. Personal blogs, even if they’re generating serious cash, are much harder to sell. Prospective buyers want a site that isn’t dependent on a single person.
These are pretty advanced problems to have though. So if this is your first blog, the benefits of using your name as the domain greatly outweigh the costs that only show up down the road.
ACTION STEP: Pick a domain name and run with it.
While it’s important to pick a good, brandable domain name, the most important thing to do in this step is to make a decision and go. You don’t want to be stuck in the dreaded state of “paralysis by analysis.” Instead, just choose one based on the system above and run with it.
Step 3: Pick the best web host
A web hosting provider offers server space to host your website. This is where your website “lives.”
People who visit your website do so through this server. So as you can imagine, it’s pretty important.
Every single website needs a web host.
While there are a few other choices it really comes down to two options:
For your first blog, you want a host that is popular, trusted, easy to use, reliable, and reasonably priced. No need for anything fancy.
BlueHost fits this need perfectly. The best part is that its plans start at $2.95/month.
For the vast majority of folks starting blogs, BlueHost is going to be the best bet for hosting their blog.
In my last few jobs, I managed blogs with hundreds of thousands or millions of visitors per month. They had thousands of posts on them. We always used WP Engine for sites of that size.
WP Engine comes with a lot of extra hosting features for security and scalability. For sites of that size, you end up having to do a lot more maintenance in order to keep the site healthy. WP Engine handles all that stuff for you. Their support team is also world-class. They do a great job.
But there’s a major downside: it’s more expensive. The lowest plans start at $30/month. This is 7X the price of other hosts.
ACTION STEP: Choose a great web host
You can’t really go wrong with any of the options. If you’re just starting out and would like very affordable, yet reliable web hosting, BlueHost is perfect.
If you’d like something with a bit more scalability, WP Engine is the one for you.
Step 4: Install WordPress
Your website needs a content management system (CMS). This allows you to create and manage blog posts.
There’s only one option for this: WordPress.
Seriously, it’s not even a decision. Use WordPress.
Years ago, there were a few competitors to WordPress like Joomla, Typepad, or Blogger.
No one uses those anymore.
This is going to sound kind of bad but whenever I hear of someone using one of those old WordPress competitors, I just laugh. It’s hard to take them seriously.
WordPress powers 30% of ALL websites. That’s how popular it is.
Use WordPress for your blog, end of story.
Because of how popular WordPress is, most web hosts offer a one-click install for WordPress. It’s super easy.
ACTION STEP: Install WordPress on your host.
Here are the instructions for Bluehost and WPEngine.
One-Click Install on Bluehost
- Log into your Bluehost account.
- Open My Sites on the side menu.
- Click Create Site.
- Enter your blog’s name and tagline. Click Next.
- Choose the domain you want to install WordPress on.
- Choose the directory you want to install it on. Click Next.
One-Click Install on WPEngine
If you’ve decided to go with WP Engine, it comes pre-installed since WP Engine is a hosting company for WordPress specifically, so the process is even simpler.
- Log into your WP Engine account. Click Installs.
- Click Add Install in the nav bar.
- Enter your blog’s name and tagline. Click Create Install.
Step 5: Pick an eye-catching WordPress theme
One of the best parts about WordPress is that it’s really easy to change the way your website looks.
On top of that, you don’t need to know anything about coding.
WordPress uses “themes,” little packages of code that can be swapped in and out. Whenever you change your theme, your site will also change but your blog content stays the same.
This makes it very easy to evolve your site over time without having to rebuild your entire site from scratch.
For now, you’ll need to pick your first WordPress theme.
The number of themes out there makes me dizzy. There are… a lot.
When picking a theme for any of my blogs, I go straight to StudioPress. The themes are a bit more expensive at $130. (Most themes go for $20–50.) But it’s totally worth it.
StudioPress was purchased by WP Engine and WP Engine now includes all the StudioPress themes as part of its hosting package. It’s a nice freebie if you are already planning on hosting your site with WP Engine.
If you want a wider selection of WordPress themes at standard prices, Themeforest is the most popular WordPress theme marketplace. You’ll find just about anything you want in its selection.
ACTION STEP: Purchase a theme and add it to your website.
After you purchase your theme, log into your WordPress blog, go to the Theme section which is under Appearance in the WordPress sidebar menu. Then follow the instructions for adding the theme.
You’ll have to upload the theme files to WordPress and activate the theme from within WordPress. You can find the upload option by going to Themes > Add New, a button towards the top. Then you’ll see this option to upload:
You’ll be able to manage any themes you’ve uploaded to your WordPress blog from your Themes section:
Step 6: Install WordPress plugins
One of the best parts about WordPress is that it’s infinitely customizable. Since it’s open-source, you can change it to do whatever you want.
The easiest way to make changes is with plugins. Plugins are little batches of software you can install within WordPress to get extra functionality. This is how you’ll add a bunch of extra features to your site without having to code anything yourself.
BUT be careful here and try not to go overboard.
Some bloggers will install dozens or even hundreds of plugins on their blog. That can cause a bunch of problems later on.
Not only can plugins cause unexpected conflicts with each other, they become a security liability since it’s unlikely that every plugin owner will maintain the plugin over time. They also become a huge headache to manage.
When you have that many plugins, you’re never sure which plugin is causing a particular problem.
I like to keep my plugins limited to 5–10 amazing plugins.
ACTION STEP: Download helpful plugins
Here are a few of my favorites:
- Akismet — Required for every blog, it automatically filters a ton of comment spam which is a problem for every blogger. This is one of the few plugins that I happily pay to upgrade.
- Yoast SEO — The most highly recommended SEO plugin, it handles a bunch of SEO tasks automatically for you and also makes on-page SEO tasks a lot easier.
- Contact Form 7 — The most popular contact form out there. Set up a contact page on your site and then use this plugin to create a contact form that will email you any time someone fills out the form. Super easy.
- TinyMCE Advanced — A bunch of improvements to the WordPress editor that makes writing in WordPress a lot easier. These days, I usually skip this one. I write all my posts in Google Docs and then format them in WordPress using its default HTML editor.
- WP Super Cache — A good plugin to speed up your site.
- MailChimp for WordPress — More on this below. It’s the easiest way to connect your WordPress site to a MailChimp account, create an email sign up form, and start collecting email subscribers.
- WordPress Popular Posts — Easiest way to add a list of your most popular posts to your blog sidebar. The list will update automatically.
Step 7: Install Google Analytics
Google Analytics is a free website analytics tool from Google. It allows you to do things like:
- See how many people are visiting your website
- Find the demographic info of your visitors
- See what blog posts and pages are receiving the most visits
But it can get very complicated, very quickly.
Which is why we’re going to ignore the majority of what’s in Google Analytics for now.
All you need to do is create a Google Analytics account and install it on your blog.
And while there are plenty of good reasons to install Google Analytics, there are two big ones I’d point to:
First, Google Analytics stores your data over time. When you’re ready to dive in later, you’ll be thankful that you’ve been collecting data since the beginning.
Second, it’s exhilarating to watch people visit your site in the beginning. I remember the first time Google Analytics recorded a visitor on my first blog. I thought it was a mistake. “Someone visited my site? Really? Why would they do that? Who are they? Did they like it?”
Seeing those first visitors come in will give you a huge motivation boost. Even if you only check Google Analytics to see your total traffic, it’s well worth the time it takes to set up.
It’s also pretty easy to set up. Here’s a step-by-step guide to help:
Step 1: Log into Google Analytics
This is simple. Go to Google Analytics and click on Start Measuring.
If you’re not logged into a Google account, it’ll ask you to login to your Google account. If you have one, do so. If not, create one and login with that.
Step 2: Create your Google Analytics Account
On this screen, it’ll ask you to provide an account name. Use the name of your website or blog for this.
Don’t worry about the boxes with the checkmarks for now. You can always change them later.
Once you do that, click on Next at the bottom.
Step 3: Choose what you want to measure
This screen asks you to choose whether you want to measure a website, an app, or a combination of both.
Choose Web since you’re creating a blog.
Then click Next.
Step 4: Fill in the property details
It’ll now ask you to fill in some details about your website including its name, the URL, your industry category, and your timezone.
Once you’ve done that, click on Create at the bottom.
Step 5: Copy and paste the tracking code onto your site
Voila! That’s it. You are now tracking Google Analytics for your website.
Step 8: Set up your email list
Every marketing engine I’ve built for companies has relied on emails at its core.
And there’s a good reason for that: Email lists are the best marketing tool. Period.
Think of your email list as a giant laser ray you can focus on any offer you want. Selling consulting? Pitch your list.
Publishing a new blog post? Pitch your list.
A podcast just interviewed you? Pitch your list.
Of all the marketing channels that have come and gone over the years, nothing compares to the power of a high-quality email list.
Even if you’re not sure what to send your email subscribers, that’s okay. The important thing is you start gathering a list of subscribers and build the foundation early.
ACTION STEP: Create an email list.
Using Constant Contact or other email marketing services, start collecting emails on your blog so that the list is ready for you as soon as you need. It takes time to build a decent size list so your future self will be extremely grateful if you set it up now.
Even a super basic opt-in in your blog sidebar is enough to get you started.
Don’t even worry about sending any emails yet unless you want to. The main thing is that you’re collecting email subscribers from the beginning. Email lists can be a gold mine once you have a few thousand subscribers, and the money really rolls in once you have 10,000 subscribers and above.
Step 9: Pick a blogging cadence
Writing blog posts isn’t a sprint, it’s a marathon. Actually, it’s more like a multi-day backpacking trip.
The best bloggers settle into a consistent writing pace they can maintain for a few years. That’s right, years.
Here are a few posting frequency rules of thumb:
- At the bare minimum, find a way to post once per week. This needs to be a substantial post, too: 2,000 words at least. I recommend you start here.
- Serious bloggers will post 2–3 times per week.
- Larger sites quickly get to 5–7 posts per week. This requires multiple authors.
- The heavy hitters who push things to the limit will do 25–50 posts per week. No joke, this is for large businesses using content marketing as their primary customer acquisition channel. HubSpot is a classic example of this.
Look at this chart of blog posting frequency from Orbit Media’s survey of more than 1,000 bloggers. What do you notice?
A few takeaways: 14% of bloggers post monthly. But let’s get real, monthly isn’t really consistent enough for your readers to anticipate a new blog post from you.
If you post weekly, you’re already posting more regularly than 37% of other blogs — this gives you a huge advantage.
ACTION STEP: Start posting at least once a week.
I know writing isn’t easy. After writing blog posts full time for three months, I always want to throw my MacBook out the window. It’s a grind for all of us. This is why I recommend starting at one post per week.
That still gives you the majority of the week to focus on other aspects of your site while also giving you a break from writing blog posts all the time.
A really great post should take you two days to complete. The first day is for research and outlining, along with as much writing as you can complete. The second day is for finishing the writing, proofreading, and publishing the post in WordPress.
Also, push quality as hard as you can. The key to building a site and traffic over time is to write posts that are more valuable than what other people have already published in your category.
Step 10: Build an audience
There’s a super famous article in blogging circles: 1,000 True Fans.
Basically, getting 1,000 true fans means you can fully support yourself. You can quit your job, work from wherever you like, and be in complete control of your life. All from hitting a very reasonable goal of 1,000 true fans.
With blogging, you’ll build your audience of 1,000 true fans slowly and consistently.
As long as you keep at it, you will get there. Typically, it takes a few years.
ACTION STEP: Use this system to get 1,000 true fans.
Here’s what to focus on in order to get there faster:
- Always post at least once per week. Never skip a week.
- Start posting 2–3 times per week if you can.
- On every post, push on quality as hard as you can. Google the topic and see what other people have done, then ask yourself how you can write something even better.
- Write stuff that hasn’t been written to death already. Find a new take or perspective on your topics that other people haven’t already covered.
- Find your voice and be authentic so people can get to know you. This builds connections with your audience faster. A quick hack for this is to pretend that you’re writing your posts to a close friend.
- To push even harder, get active in other online communities. Post in Facebook groups, subreddits, on Twitter, do podcast interviews, get speaking engagements when you can — anything and everything. Be as helpful as you can be in these communities.
- For all of your content, constantly ask yourself, “How can I make this as valuable as possible?
As your blog audience matures you will want to change your traffic strategies as you grow.
Step 11: Monetize your blog
There are three ways blogs make money.
Yes, only three. They are:
- Infoproducts. Online courses, webinars, e-books, etc.
- Affiliate programs. You work with a brand to promote their products and you get a cut of any sales.
- Freelancing and consulting. You use your blog as a platform to find clients and customers for your own services.