Starting a programming blog is a great way to share your expertise and get your voice heard. It also offers you a chance to build a nice side income.
These days blogging is more competitive than ever before. Running a successful programming blog involves a lot more than purchasing a domain and setting up the site.
This is a free ultimate guide on how to start a successful programming blog.
I’m Artturi Jalli, the founder of codingem.com—a coding blog that attracts over 500,000 monthly visits and has generated $10k+ monthly revenue for the past 6+ months.
I’ve been a full-time blogger for 2+ years now. Today I show you how to achieve my success.
This guide teaches you important concepts such as:
- Why you should start a programming blog.
- What to expect from a programming blog.
- How to grow the audience the right way.
- How to monetize the blog.
And much more.
This post has affiliate links at no cost to you!
Quick Overview: The 9 Steps to Starting a Successful Programming Blog
I highly recommend reading this guide with patience and time.
However, if you are looking for a quick guide to launching the blog, feel free to jump to a section of your choice.
- Choose a Niche
- Select a Domain & Hosting Plan
- Install WordPress
- Choose a Theme
- Create the Important Pages
- Configure Your Site
- Start Writing Content
- Promote Your Site
- Monetize the Site
Let’s get into it!
Why Read This Guide?
Running a programming blog is different than running a blog in other niches.
When I started this very blog at the beginning of 2021, there was no useful information on how to start a programming blog.
Of course, there are tutorials that help you set up a basic WordPress site. And there are tons of guides on how to make money with your site.
But a programming blog is a different animal. The traditional blogging tutorials are off by a mile when considering a programming blog.
For example, traditional money-making methods like affiliate marketing don’t work on programming blogs.
When you start a programming blog, you have to have a passion for programming.
No, you do not need to be an expert.
As a matter of fact, you can be a beginner coder and still run a successful programming blog.
But the amount of work you need to put into the blog is unbearable if you don’t like coding.
This guide teaches you what traditional blogging guides don’t.
Why Start Programming Blog?
A programming blog can help other developers save time in looking for answers.
As you must know, Google is the programmer’s best friend. When you run into issues, you can use Google to find answers.
There are great forums like Stack Overflow, Quora, and Reddit. These are the go-to resources for a developer in trouble. However, these forums are not always the most beginner-friendly sources of information.
Also, the actual documentation of a programming language is usually impossible to understand.
Then you have some great programming blogs. In these blogs, the developers put in hours to simplify difficult topics.
Sadly, there are not enough programming blogs to cover all the difficult topics in the space.
As a potential programming blogger, this is a great chance for you! Your programming blog could provide help to countless developers looking for explanations.
For example, your blog could be the first ever to explain C pointers so that a human can understand.
Anyway, there are many reasons why someone would like to start a programming blog.
- Building an online portfolio.
- Teach and help other developers.
- Leave public notes.
- Learn by teaching.
- Side hustle.
- Freelance gigs
- Affiliate marketing
And much more.
Before starting a programming blog, let’s inspect these options a bit closer. It is important to understand the benefits before getting started.
Build an Online Portfolio
Perhaps the most obvious reason to start a programming blog is to get your voice heard across your industry.
When you write a bunch of technical articles of high quality, you get to showcase your:
- Programming skills.
- Writing skills.
- Passion for programming.
When you are looking for a job, you can share a link to your programming blog in addition to sending your GitHub link and CV.
This certainly gives a great impression!
Also, people who are otherwise interested in you can easily check your blog.
Teach & Help Other Developers
Every developer knows how hard it is to find the right kind of information.
Usually, a forum like Stack Overflow does a great job of answering questions about basic tasks and errors.
However, as a beginner, it can be really confusing to read forum threads like the ones in Stack Overflow.
Programming blogs can help to fix this problem by writing well-thought and clearly expressed blog posts about topics that are unclearly explained otherwise.
There are lots of topics that are really poorly covered and there is lots of room for new programming bloggers to share their expertise.
In the programming space, there are endless topics that need better explanations and examples.
Leave Public Notes
If you find it useful, others will too!
Learning something new usually involves writing notes. As a programmer, you probably write an example program with a bunch of notes/comments.
But what if you made these notes public?
This is a great way to help others learn the topic you just learned.
Sharing the notes and project introduces a new perspective that can make someone understand the concept that they otherwise wouldn’t.
I think the best time to teach someone else is right after you have learned it. This is because the topic is still fresh in your mind and you remember what caused confusion and frustration.
Even if you had 0 readers, these public notes still help you as you can refer to them later on.
Learn by Teaching
You don’t need to be an expert to start a programming blog.
A wise man once told, “You haven’t learned it before you can teach it”. To learn a new concept thoroughly, you should teach it to someone else.
A programming blog is a perfect place to do this. When you are learning a new concept, write a blog post about it. Try to address the parts that caused the most confusion as clearly as possible. This way you strengthen your learning while providing others assistance.
Programming Blog as a Side Hustle
A programming blog can be a great side hustle or even the main source of income.
If you write articles for a long enough period of time, you start to see your audience grow.
With a big audience, you can make money in many ways.
The traditional way to make money with a programming blog is by showing ads in your blog posts.
Also, if you want to do freelance coding gigs, what could be a better place to promote them than your own blog?
Lately, affiliate marketing has turned into one of the main income streams of blogs. With a programming blog, you can become an affiliate and promote programming courses, hardware, jobs, and more.
The idea behind affiliate marketing is you insert links to your website and when someone clicks it and makes a purchase, you get a small commission.
But remember, making money with a blog requires months, usually years of hard work!
Is Programming a Lucrative Niche for a Blog?
Programming is not the most lucrative niche.
As a matter of fact, niches like lifestyle, travel, technology, and similar are way more lucrative.
Obviously, it depends on how you define a programming blog.
In this guide, we assume it is a blog with programming how-to articles, such as “Recursion in Python”.
This type of content is not lucrative because:
- The traffic is cold. Programmers are looking for quick answers when they are in trouble. No one is going to make a purchase on an article.
- The traffic originates from developing countries. Ad revenue from developing countries like India is low. Developing countries are commonly the main traffic source for a programming blog.
- Developers use AdBlockers. More and more people are using ad-blocking tools. Chances are a developer reading your article is blocking the ads and thus your revenue stream.
Commonly, you hear blogs make around $1,000 for every 30,000 visits. And properly monetized blogs on a good niche might make even 10 x more!
But this is far from the truth on a programming blog.
With 30,000 visits to a programming blog, you will make at most $200-300 in the best-case scenario. So unless you have hundreds of thousands of visits, you are not going to make a real income on a programming blog.
Own Blog vs Blogging Platforms
Writing on a blogging platform such as Medium.com is definitely something you should consider if you have not written blog posts before.
This is because, on a blogging platform, you can just sign up and start writing. Most of the platforms also allow you to write for free, so you do not need to spend a buck.
But more importantly, building the audience is easier on a platform compared to running your own blog.
For instance, on Medium, there are hundreds of thousands of software developers.
This means it is possible your very first article goes viral!
Before starting your own blog, I recommend testing a blogging platform like Medium.com to make sure you actually enjoy writing. I wrote my first ~100 programming articles on Medium and had some really nice results.
In case you want to give it a try, here is a complete guide on writing on Medium.
Remember, blogging on a platform is much easier than starting your own blog. This is because the audience is already there and your stories can go viral on the first day.
In my experience, compact articles on trending topics with compelling titles, subtitles, and images tend to perform well.
But on your own blogging website, you should focus on writing long-form evergreen content that is searched on Google.
As a comparison, I typically write 500-1000-word Medium posts and 1000-5000-word blog posts on my own blog.
Pros of Blogging Platforms
- Big “built-in” audience
- Easy to start
- Easy to use
- Publish for free
- No technical responsibilities
Cons of Blogging Platforms
- No control over the site
- The audience does not remember you
- Your earnings are shared between you and the platform
- Restricted affiliate marketing
Pros of an Own Blog
- Full control
- Keep 100% of the earnings
- Relatively easy to start
- The audience remembers you better
Cons of an Own Blog
- No built-in audience
- A bunch of technical responsibilities
- Domain costs
- A lot of keyword research
- Only long-form content works
How to Build a Programming Blog Using WordPress
WordPress is being used on 35% of websites. This makes it the most popular choice for building a website.
In this guide, you learn how to build a programming blog website with WordPress.
There are some easier alternatives to WordPress. However, using WordPress is the best choice in a long run.
Step 1: Pick a Niche
Even though programming itself is a niche, you need to narrow it down.
If you write about 10 programming languages at the same time, it will take 10 times longer to become an authority in any of those languages.
But why does authority matter? Or what does it even mean?
In a nutshell, authority means Google trusts your articles and shows them higher in the search results. This naturally leads to more traffic. You’ll learn more about this concept a bit later in this guide.
To become an authority on a topic, you need to pick a niche and write a ton of articles about it.
Here are some niche ideas:
- A particular software development branch, such as mobile app development.
- How to become a job-ready developer.
When you pick a niche, make sure that at least these criteria are met:
- You are interested in the niche.
- There is demand.
- There is not too much competition.
Once you have written about 30-50 blog posts around your niche, you will start seeing the traffic go up.
At this point, you can continue in the same niche. Also, you can also broaden the scope to another niche.
You are going to learn more about how to do keyword research and competition analysis later on.
However, before moving on to writing blog posts, you need to build the actual site first.
Step 2: Get a Domain & Hosting Plan
The first thing you need before being able to launch a website is a domain.
A domain is the address of your website. It is the part after www. in the URL or after @ symbol in the email address.
For example, codingem.com is the domain of this website.
Coming up with a short, catchy, and memorable domain name is important.
The domain name can be related to your niche, but it really does not have to.
It is common to see programming bloggers use their first name + last name combo as the domain name.
Then when it is time to broaden the scope of the blog, you have no restrictions to move on to something entirely different than programming.
You can use a tool like Domain Wheel to come up with an available domain name.
Also, choose a popular domain name extension like .com, .org, or .net.
To get a domain name, you need to use a domain hosting provider.
After you have chosen the plan, it is time to choose your domain. Enter the domain name into this field:
After choosing the domain, fill in the rest of the form to purchase the domain. In this step, you create a HostGator account too. You will need it later on.
Once you have completed this step, you have your own domain.
But a domain isn’t enough. You also need to host a website on that domain. In the next step, you are going to learn the most popular way to host a website by using WordPress.
Step 3: Install and Launch WordPress
In this guide, you are going to use WordPress to build the website. WordPress is the most popular choice for creating websites. It’s relatively easy to use and fully customizable.
When you registered your domain in HostGator (and created the HostGator account), you can head over to your HostGator dashboard. Click on the “Hosting” tab on the left-hand side of the screen.
In this view, click on the cPanel button in the packages section.
This opens up your HostGator control panel where you can install WordPress (for free) to your blog.
Click on “WordPress Installer” in the cPanel window:
Now, choose the domain name you just purchased and click “Next”.
Then enter the Blog Title and other website information in the form below:
Then accept the terms of service and click “Install”. This installs the WordPress website to your domain.
Once this step is completed, you can log in to your website’s admin view. The credentials should appear in the window once the installation completes. Grab the credentials and click “LOGIN”.
This opens up the login view to the admin page of your website. The WordPress login looks like this:
Enter your login credentials to the login form and click “Log In”.
When you have logged in, you see the WordPress dashboard. This is the admin view of your website. In this view, you can choose a theme, tweak settings, and most importantly start writing blog posts.
By the way, now you have a website under the domain you purchased a moment ago. To view the site, just enter the domain name into the URL bar.
Also, when you are logged in as the site admin, you can view the actual site from the dashboard by following these steps:
- Move your mouse over the top left corner where it says your site’s name.
- Click on Visit Site.
This opens up your website the way it looks to anyone who visits it. (Besides there is an admin toolbar because you are logged in to the site.)
Pretty cool, right?
Meanwhile, you could already start writing blog posts for your brand new blogging site, let’s pick another theme for your site.
Step 4: Choose a Theme
Right off the bat, you shouldn’t spend too much time on the design.
After building a big audience, you can invest time or money in the design of your website.
At this point, the easiest way to create a professional-looking site quickly is by using a built-in WordPress theme. The WordPress themes are awesome and they are designed by real designers. As a matter of fact, they are so good I use them as-is on most of my sites.
To choose a theme for your site, navigate to your WordPress dashboard (your.site.com/wp-admin) and select Appearance > Themes > Add New.
Now type something into the search bar to find cool themes. The most common themes are the Twenty-something themes.
For example, here is what I typically do for new blogs:
- Search for “Twenty-twenty”.
- See themes for 2020, 2021, and 2022.
- Pick one of these themes and click Install.
- After the installation has been completed, click Activate.
Now you have successfully activated a nice-looking theme on your blog.
To see the theme in action, visit your website. Now the site looks entirely different from what it looked the first time you checked it.
It already looks nice, doesn’t it?
As the next step, you can customize the theme.
To do this:
- Visit your site (with a logged-in admin).
- Hover over the UI elements.
- You should see a blue edit icon appear.
- Click the icon to make some changes.
Use this strategy to change any text/images you don’t like.
For example, you can change the:
- Background image
- Footer settings
Do you want a quick logo for your blog? I recommend checking these AI-based logo generators. They are awesome!
Also, tweak the basic settings of your site on the left-hand side of the customization view.
In these settings, you can choose site titles, logos, favicons, and more.
But remember, don’t spend too much time worrying about these settings. You can tweak them later on as you start gaining traction with your blog.
Awesome! Now you have a website with a decent look. As a next step, you need to start creating content for the site.
If you want to spend time customizing the site, feel free to check this 1.5-hour guide. But remember to come back here because we have a lot more to cover!
Step 5: Create the Important Pages
Once your site looks good, it is time to create a couple of important pages for the future.
To create these pages, you need to know how to create a new page in the first place. To create a new page, navigate to the WordPress dashboard and click Pages > Add New.
This opens up a new view that looks like this:
This is the editor’s view of the new page.
Put the name of the page as the title.
Then add some content where it says “Type / to choose a block”.
Once your page is done, hit publish in the right top corner.
The About page is one of the most visited pages on your website (after the blog content).
By specifying an about page, you are able to tell your story to the audience.
Here are some things you can consider sharing on your about page:
- Who you are?
- Why does your blog exist and what is your mission?
- How can readers relate to you?
- Why should the readers read your blog posts?
After all, people want to read articles that are written by a person, not by a robot.
Thus, you should give a face to your blog by talking about the points above.
A contact page should be plain and simple.
Ideally, a visitor should instantly see the email address (or another contact method) from the page.
Thus, all you need is to list your contact email address.
For instance, my contact page is really plain and simple.
You can also add your social media handles to the contact page.
When your audience grows, you can create a contact form and an FAQ page for frequently asked questions.
Last but definitely not least, you should create legal pages.
But no worries, you do not have to spend an entire day writing those pages.
Also, remember to keep the Privacy Page up to date. You must do this when you start using other WordPress plugins or tracking tools, such as Google Analytics or MailChimp.
Add the Important Pages to the Navigation Menu
Once you have created the important pages, you need to place them in the navbar.
This way your future readers will be able to find the information with ease.
To do this, head over to your WordPress dashboard and select Appearance > Menus. This opens up the edit view of the current navigation menu.
Add the About and Contact pages to the main menu.
After completing this step, visit the site to see that the menu now has these new pages.
The legal pages do not need to be added to the main menu. Instead, they can live in the footer menu.
To modify the footer menu, head over to Appearance > Menus, and pick another menu.
Then repeat the actions you did with the main menu.
Once you have completed this step, your site has all the necessary information. Now you are one step away from starting to write the blog posts.
Step 6: Configure Your Site
Before you learn how to write blog posts, you need to make small technical tweaks to the blog.
Change the URL Structure
Keep the blog post URLs simple.
To make this easy, let’s change the permalink structure of your website.
Notice! Do not change the permalink structure if you have written blog posts. This will change the URLs of all the pages on your website. In a sense, it will delete all your pages and add them back with a different URL.
To change the URL structure, head to your WordPress dashboard and select Settings > Permalinks. Now you should see a view that looks like this:
Choose the Post name as your URL structure and save the settings.
Now your blog post URLs are the title of your blog post.
This is great because this way your URL is as short and descriptive as possible.
Awesome, now you are ready to start writing blog posts!
Step 7: Start Writing Content
This is the most time-consuming part of having a programming blog.
Writing the content will take 99.9% of the time.
Make sure you write content smartly not to waste time and resources.
This section teaches you the technical side of writing blog posts in WordPress. You will also learn how to come up with topics that will build your audience.
Feel free to read the Top 20 Best AI Copywriting Software. Although I don’t use these in a programming blog, you may find some creative time-saving use cases for them.
How to Create a Blog Post in WordPress
From now on, you are not going to create new pages for your site.
Instead, you are going to start writing blog posts.
In WordPress, a page is not the same as a blog post.
The way WordPress treats pages in some contexts is different from blog posts.
To create a blog post, head over to your WordPress dashboard, and select Posts > Add New.
This opens up a blog post editor.
This editor is what you are going to be using when writing your blog.
To learn how to format your blog posts with the editor, you should start experimenting with it by writing an article or two.
But what should you write about? How long does it take for the article to start getting views?
The following sections will teach you all you need to know to build an audience and write content that ranks.
How to Write Content That Ranks?
A page that does not appear on Google’s first page does not exist.
To rank high, you need to write the best article on the topic.
Usually, this also means the article must be the longest one.
The level of content and competition is easy to check by looking at all the other pages on the top 10 search results.
If you think about it, Google and other search engines are products that try to provide the best possible answer to the reader.
The more comprehensive the article, the higher the chance for it to rank high.
If you write an article that covers 50% of the topic, why would Google or any other search engine recommend it to anyone?
You guessed it, they don’t.
So make sure to write the most comprehensive article.
How to Good Topics Using Google’s Own Data?
Unfortunately, Google does not share information about the number of searches for a particular search term.
Thus, there is no way to tell it.
But what you can do instead is use Google search to your advantage.
If you are using Google Chrome, open up the Incognito mode and go to Google.
If you are not using Chrome, open up Google such that the search history does not affect the suggestions.
Now, in Incognito mode, you can start typing something into the search box and see suggested results.
These suggestions are the best guesses of what Google thinks you are about to search. In other words, these topics are sought after. The suggestions are thus really great article candidates.
To write about one of these, please open up the search results for that particular keyword.
Now inspect each and every page in the top 10 results. Make sure to cover all the information found in all the top 10 results. In a sense, you combine the info from all the top result pages and explain it in your way.
This way you are able to produce an article that:
- Has some search volume
- Is well-researched
- Is comprehensive and long-form enough
If any article in the top 10 is more comprehensive (and longer) than your article, chances are you do not get the #1 spot in the rankings.
Write Content That Solves a Problem
Let’s face it, no one is searching for a side project you built over the weekend.
To grow your audience, you need to write content that solves a problem.
This is actually what most bloggers get wrong.
You should not write about topics that you like. Instead, you should write about topics that people search for.
Unless you want a blog with 0 visitors, you have to write about something that solves an actual problem.
As a programmer, a problem could be an error or difficulty in understanding a common topic.
A great way to come up with topics is by answering questions you have looked for in the past. The more beginner-level the content, the bigger the potential audience. Notice that in this case, the competition is also higher.
Use Plain English
You may have noticed I do not use fancy words or phrases.
That is not a coincidence.
If you try to outsmart your readers, they will leave.
When you are looking for information, you want it to be as easy to understand as possible.
Do not use fancy words to try to sound smarter.
Instead, write for an 8th grader.
This is good for you and your audience because
- You can produce content more easily.
- The audience understands the message more quicker.
Use Short Paragraphs
These days a lot of people read articles on mobile devices.
Nothing is worse than an endless paragraph that covers the entire screen. It is called the wall-of-text effect. You should avoid it at all costs.
Use short chapters and short sentences. Add 3-4 sentences per chapter at most. This way you avoid the wall-of-text effect no one likes.
Use Illustrative Images
Use illustrative images in your articles.
Generally speaking, you should add one image per 150 words.
With programming articles, this usually does not make sense. Instead, you should include an image whenever it can complement the content and make understanding the topic easier.
It is pretty easy to create decent-looking illustrations with free tools like AutoDraw.
Do not spend more than 15 minutes per illustration!
If you do not make money through your blog, you should not invest in the illustrations too much.
Here is an example illustration from one of my articles:
Add Internal Links
Internal linking makes your website stronger.
A technical reason is that Google bots and other search engine crawlers use links to discover content. If your article does not link to one or more of your site’s articles, chances are Google does not find it. Thus, there is a chance the article does not appear on Google.
A more humane reason for interlinking is to add value to your readers with links to articles. This makes them stay longer on your site.
But do not overdo the interlinking! Only place links where they fit naturally.
Add External Links
Similar to internal links, external links are just as important to your site.
When an article has external links, Google and other search engines can see that you back up the facts with content from other sites.
This makes your site more trustworthy and increases your chances of ranking.
With external links, you also provide value to your readers by providing them with additional resources.
Do not overdo external linking either. Only place links to sites that are helpful for the reader and a good match to the content.
Example Content That Ranks: Python Floor Division
Let me show you an example of what it takes to rank high.
Here is an article about the Python floor division operator (//).
If you are someone who knows Python, the floor division operator’s behavior could be expressed in a single sentence.
“The floor division divides two numbers and rounds the result down to the nearest integer.”
But if you wrote this to the article, it probably would not rank, because there is a lot more to it.
If you search for “Python floor division” in Google, my article appears at the top of the rankings.
But the length and the level of detail in the article may surprise you.
The length of the article is almost 2,000 words!
This is because I wrote a complete guide on the topic.
This includes flooring positive and negative numbers, relationship with modulo, the __floordiv__ method, and much more. In addition, I used some illustrative images.
If you take a look at any top 10 results on the topic, the content is way less informative than mine.
This is why Google treats my piece as the best article on the topic, and thus shows it at the #1 spot.
This is the kind of content you need to produce to build an audience. And yes, it takes time. Especially if you are unfamiliar with the topic.
Step 8: Promote Your Blog Posts (Optional)
To increase your Google traffic, you do not need to promote your programming blog. I have never done so.
However, if you have some following, to begin with, it can be a nice little traffic boost to your blog.
But if you do not have thousands of followers, you are not going to see any significant traffic to your site.
Also, promoting on social media has little to no impact on Google rankings.
Regardless of whether you promote your articles or not, Google will eventually find them. If your article is of high quality, Google might place it at the top of the rankings. But remember, this takes months or even years.
Here are some ideas that can work for you.
One of the Google ranking factors is called “social signals”. This means article shares on social media have a positive impact on Google rankings. If you manage to get people to share your stories, that can be beneficial to your blog.
Whenever you publish a new article, you can share it on social media like LinkedIn, Twitter, or similar.
Remember to use a bunch of accurate tags. This helps people find your stories.
Also, remember to use catchy featured images. The featured image appears as the “thumbnail” of the article in a social media post.
The catchier the featured image, the more likely someone is to click the article. Also, the readers are more likely to share an article with a great featured image.
Forums like Stack Overflow, Quora, or Reddit are life savers. When it comes to finding information in an applicable format, these forum answers come in super handy.
One way to promote your blog is by answering forum questions and linking to a relevant post.
For example, say you have written a comprehensive article about “Index Out of Bounds in Python”. To get some publicity, head over to a forum like Stack Overflow and find threads around the topic. Leave your helpful answer and provide a link to the complete article.
However, you should keep in mind most popular questions are answered thoroughly. Even if your answer is great, there is a chance no one will ever read it.
Also, the click-through rate from an answer to a blog post is small.
One way to get your voice heard is by sharing your thoughts on another platform.
Many programming blogs accept guest posts.
The idea of a guest post is you propose a topic, write an article, and publish it on another domain.
An easy way to find guest posting opportunities is:
- Open up Google.
- Search for “Programming guest post” or similar.
- Open up promising-looking pages.
- Apply and submit an article to the platform.
Don’t forget to add backlinks to your blog where it fits naturally. This way you strengthen your blog in Google’s eyes. Google likes it when your blog has other referring domains (in the same niche).
Step 9: Monetize Your Programming Blog
If you do not care about monetizing your programming blog, it is absolutely fine.
But commonly one reason to start a blog is to make some extra income.
But don’t even consider monetization before you reach 50,000 – 100,000 monthly visits.
After reaching those numbers, you can start thinking about the monetization game. At this point, it is enough to know what options you have.
The easiest way to monetize a blog is by showing ads on your site.
Instead of using ad networks like Google AdSense, you should use a more sophisticated and well-paying ad network like Newor Media.
Newor Media uses header bidding algorithms to optimize the ads and revenue for your audience. However, you need at least 30,000 page views a month to be eligible to join.
How Much Can You Make with Ads on a Programming Blog?
It should be possible for a programming blog to make around $0.01 – $0.005 per visitor with ads.
So for instance a programming blog with 100,000 monthly visits should be able to make around $500 – $1000 from ads.
But it depends on many factors such as:
- The ad network being used
- The quality of the content
- The number of ads
- The origin of the traffic
- The length of the content
So do not be surprised to earn less than $0.01/visit.
However, because this income is completely passive, every penny counts!
Also, remember that displaying ads is one way to make money with a programming blog.
Let’s talk about other methods to make money with your programming blog.
When you have a big audience, you can promote your own skills to it.
If you have tens or hundreds of thousands of visitors every month, you can only imagine how many fresh business owners there are.
These people may need help in:
- Building software
- Building a website
- Writing technical content
As a programmer and blogger, you can offer these skills to your audience.
Furthermore, you do not need to sell yourself because the content speaks for itself.
Another option to make money with a programming blog is by doing paid collaborations.
When you have a big audience, companies in the software development space may want to do a sponsored post on your site.
A sponsored post means either you or the company in question writes an article about their product or service. Then you publish it on your site for a fee.
Another option is to place a custom banner ad of a sponsor into your blog posts.
Once again, before anyone approaches you with sponsorship in mind, you need to have a big audience.
Get a Job
Similar to how you can promote your skills to do freelance gigs, you can showcase them to get a job.
As a programming blogger, you can seek a job as a:
- Software Developer
- Technical writer
If you have a big audience, chances are recruiters and new founders will approach you.
Affiliate Marketing (with Caution)
This list would not be complete without mentioning affiliate marketing.
As you may have heard, affiliate marketing is generally the best way to make money with a blog. Usually, the passive income stream from affiliate marketing is much higher than from showing ads.
But be cautious! Affiliate marketing does not work well on programming blogs.
Affiliate marketing means placing affiliate links on a blog. If someone makes a purchase via one of the affiliate links, you earn a commission, which is usually 5-50%.
For instance, if you place an affiliate link to a $50.00 book with a 25% commission rate, every time someone clicks the link and makes a purchase, you get $12.50.
As a programming blogger, you could promote programming courses and boot camps to your audience.
But here is the problem with this strategy.
When someone is looking for programming-related answers, they are likely:
- Doing a programming exercise on a programming course.
- Working on a work computer.
Promoting a programming course to someone who is already on a course makes no sense.
Also, someone who is working has already taken a bunch of courses in the past. Even if they wanted to purchase the course, they would not do it on a work computer.
This also makes sense from a logical standpoint. If someone is searching for “How to solve IndexOutOfBounds error” they are not looking to purchase a freaking course!
To make affiliate marketing effective, you should take a different approach. So much so that I would not call it a programming blog anymore. Instead of writing programming tutorials, you should target a “hot” audience that is looking for a product.
For example, a great affiliate article topic would be “10 Best Python Courses”, where each course is an affiliate link to a third-party course.
But the problem is that a topic like this is highly competitive. To rank high, you should write 5000-word long articles about courses you have not even taken yourself.
This is really boring, to say the least.
If you have a big enough reader base, you can consider placing exclusive content behind a paywall.
But remember, paywalled content has Google ranking implications.
Furthermore, you need to have built a loyal audience that comes back to your blog to read your articles.
In that sense, paywalled content is a monetization strategy, but you should not use it before you have a huge audience.
E-Books & Programming Courses
If you like to write a lot, you can consider publishing an e-book or a programming course and promoting it on your site.
But before you waste time on this, you need to be 100% certain your audience is going to buy your product.
One way to test how well your audience converts is to promote someone else’s book (affiliate marketing) and see how it performs on your site.
This requires a big and loyal audience, so this should not be your first monetization strategy.
Also, if you are not sure your audience wants that book, there is the potential to waste huge amounts of time.
Selling programming merch is one of the ways to make an extra buck on a programming blog.
For instance, you can sell t-shirts with programming quotes or something funny.
Also, you can sell notebooks, stickers, coffee mugs, and so on.
And no, you do not need to create or even store these physical products yourself.
Instead, there are companies that you can partner with. These companies then create and ship those products on your behalf.
Of course, these businesses take a cut of your earnings, but it is still a better option than creating/storing the products yourself.
Before you can sell merch to your blog’s audience, you need to have a lot of returning users and a huge audience.
One of the easy-to-setup ways to make money with your blog is by accepting donations.
For example, you can embed a PayPal donation form in your blog in a matter of minutes.
However, people do not donate for you to make you rich. Instead, they donate to help keep your blog up and running.
Thus, you should clearly state that a donation is solely spent on producing more valuable content.
Donations also require you to have a big audience of people who frequently read and benefit from articles.
Now you understand the monetization of a programming blog.
Hopefully, you also learned why it makes no sense to implement monetization strategies before you have a big audience.
With the information you have learned, you should be able to build a successful blog.
However, there is still a lot more to cover. These include:
- Life-saving plugins.
- How long does it take to build an audience?
- How to track your audience stats.
And other burning questions related to programming blogs.
So even though you could stop reading here, I recommend to keep on reading!
How Long Does It Take to Rank on Google?
It takes frustratingly long to rank on Google and there is nothing you can do about it.
Usually, a beginner can expect it to take months to rank on Google.
Also, if you pick too competitive topics, chances are you will never rank. And even if you pick less competitive topics, it will still take months or even a year to rank on Google.
Some search engines might rank your content faster. However, because 92% of the searches come from Google, it is the most important traffic source.
Here is a screenshot of my own blog’s performance for the first 6 months.
As you can see, the visits shot up around 5 months after starting my blog. Before that, I produced a ton of content with practically no results.
So be patient!
How to Track Visitors
Understanding your audience is important.
As a beginner blogger, you are interested in the development of:
- The number of Google search impressions.
- The number of visitors.
- The number of page views.
You should check these metrics at least once or twice a month to get an idea of how your page is performing.
- To get an insightful overview of your website traffic, set up Google Analytics on your page.
- To track Google performance, in particular, set up Google Search Console.
You can use Google Analytics to generate comprehensive reports on your audience. The audience data includes other search engines like Bing, Yahoo, Duckduckgo, or Baidu.
For example, you can see the location of the audience. You can watch trends, user behavior on the site, bounce rates, and much more.
On Google Search Console, you get to see how your pages are doing in Google’s search results.
Unlike Google Analytics, Google Search Console solely focuses on Google traffic reports.
For example, you get to see what pages are indexed and how the pages perform.
Both Google Analytics and Google Search Console help you understand your traffic and trends.
In the first couple of months, there is not going to be a whole lot of activity. However, after 6 months or so, you should see a “hockey-stick effect” like the one in the above screenshot.
I recommend setting both up right away.
Here are great guides to do so:
- How to Setup Google Analytics on WordPress Site
- How to Setup Google Search Console on WordPress Site
Also, feel free to search for more comprehensive guides on these tools. When you have a big audience, there are lots of stats you might find useful.
Block Your Own Visits from Analytics!
Remember to use a plugin or block your own visits from appearing in Google Analytics.
If you visit your site daily, you are skewing the analytics to suggest you have daily traffic even though you don’t.
If you use Google Chrome, you can use the Block Yourself from the Analytics extension. When you have installed the extension, click the icon on the extensions and add your site there:
Now go to your site and take a look at the extension icon. The icon should show a red cancel icon that shows it is blocking the current site.
What About SEO?
SEO or Search Engine Optimization is one of the buzzwords in the blogging space.
It refers to a set of actions that are used to increase the chances of a website or blog post ranking higher on Google.
But as it turns out, you do not need to worry about this stuff.
The main goal of Google is to automatically find the best article for a search query.
As you can imagine, Google is good enough at this so it does not need your assistance. All you need to do is write the best article around a topic. Google takes care of the rest.
What I am trying to say is you should not listen to SEO advice, especially at the beginning. It is misleading and shifts your focus on things that do not matter.
But why does everyone talks about SEO?
Because it is an easy way to make money for people who talk about it. SEO tools are super expensive, some $1,000.00 per month. They have good affiliate programs that people like to promote and get paid for.
The reality is you do not need to focus on SEO because you are not writing for robots. You are writing for humans.
I was stuck on growing my blog until I ditched all the SEO advice and focused on writing articles.
One of the only useful terms with SEO associations is Domain Authority (DA).
This is a measurement of how “trustworthy” and “authoritative” a website is in Google’s eyes.
Domain authority (or domain rating) is a term that is used everywhere in the blogging space.
Mature websites with a big audience, a lot of content, and countless referring domains are trusted more by Google than new sites with no audience and content.
A site with high domain authority is referred to as an authority site. An authority site has a loud voice in Google search results.
Sites like w3schools.com, programiz.com, or geeksforgeeks.org have tons of content, millions of monthly visits, and a ton of websites that link to their sites.
These are examples of authority sites in the programming blogging space.
If you want to outrank one of these sites in the Google results, you need to write a 10 x better guide.
Useful WordPress Plugins for Programming Bloggers
As you may already know, WordPress has useful add-ons called plugins.
Most of the great plugins are free to install.
To install a WordPress plugin, navigate to your WordPress dashboard and go to Plugins > Add New.
This opens up the WordPress plugin store view.
You can use the top right search bar to search for a specific plugin.
To take a plugin into use, click Install Now. After the installation completes, click Activate.
Each plugin you install behaves differently. You can view the plugin’s manual pages (by clicking the plugin in the above view) to learn how to use the plugin.
Usually, a new plugin creates a new entry to the dashboard on the left-hand sidebar or into the settings section.
Luckily, the best WordPress plugins are easy to use.
A word of warning: Only use plugins with great ratings that are updated frequently! Also, do not install any excess plugins as they tend to slow down your website.
Here are a bunch of useful WordPress plugins you may want to use.
Enlighter: Embed Code Snippets Into Your Articles
To build a successful programming blog, you need to be able to display code on your site.
Displaying code does not mean copy-pasting code into the text as-is. Instead, you need a syntax highlighter to make the code look nice. Furthermore, the code should be something a reader can easily copy to their clipboard to run the script themselves.
To display code, you need a plugin like Enlighter.
This plugin knows the syntax of all of the most common programming languages.
You can easily place code in your articles no matter which programming language you are using.
You can install the Enlighter plugin via the WordPress plugin store:
Now, to use this in your blog posts, all you need to do is click the plus icon on the blog post editor:
This opens up a code block where you can write or preferably copy-paste some example code.
By default, the Enlighter plugin uses generic highlighting of your code.
To highlight a specific programming language, you can select the language as follows:
In the article the code looks like this:
You can also customize the theme of the code enlighter.
To do this, go to the WordPress dashboard, choose Enlighter > Appearance, and choose a theme.
For further customization, you can set the Appearance to Theme Customizer and then go to make customizations in Enlighter > Theme Customizer
Site Kit by Google
To connect your website with Google Analytics and Google Search Console, use Google’s Site Kit plugin.
This plugin creates a nice visual dashboard of your analytics in WordPress. You can use this dashboard to take a quick look at the most relevant metrics on your site.
With WordPress, there is always a risk of the site going down.
Thus you should keep a backup of your site not to lose all your work.
As a beginner, I managed to mess my theme up/accidentally delete content on a couple of occasions.
Luckily, I had backups.
To take frequent and automatic backups, use the UpdraftPlus plugin. You can find it in the WordPress plugin store.
When you have activated the plugin, the setup is straightforward. Just run through the setup wizard and you should be all set.
Remember to set a frequent interval for the backups, such as once per week.
Yoast: Enforce SEO Best Practices in Your Articles
Disclaimer: You do not need to use an SEO plugin or even know what SEO is to write content and build an audience.
If you are an SEO freak, you can use a plugin like Yoast to enforce SEO on your articles.
This tool comes with a bunch of warnings and SEO errors you can consider fixing.
However, sometimes fixing these errors leads to robot-like content. You should take the warnings and errors with a grain of salt.
Also, you don’t need a plugin like Yoast to rank high on Google.
Yoast also lets you customize the URL slug, meta title, and meta description. These appear on the Google results page, so you may want to choose those. Albeit Google usually does a great job at choosing them automatically.
Programming Blog FAQ
Here are some burning questions you may have when it comes to programming blogs.
Do You Need to Be an Expert to Start a Programming Blog?
It does not matter whether you are an expert or not. If you just learned something, feel free to write an article about it to teach it to others. Remember, if you are not an expert, do not pretend to be one!
Dishonesty is something you don’t want to incorporate with blogging. People will realize whether you are honest or not.
How Long Does It Take to Build an Audience of 100,000 Visits/Month?
For me, it took 6 months of writing 8 hours a day. So it’s a full-time job, but you can definitely do it too!
But this assumes you do great keyword research and always write better articles than the top 10 search results.
If you do not take these into account, it will take significantly longer.
To take home, in the best-case scenario, a 6-month period of full-time work can be enough to get your blog going. But if you do not work smart or if you only spend 1-2 hours a day, it will take years.
How Much Money Can You Make with a Programming Blog?
I’m making a full income with my programming blog. But it took me around a year of full-time work to build an audience big enough to get ad revenue.
I like to tell people not to start a programming blog to make money! There are lots of “easier” niches to make money from.
But if you are passionate about programming and want to help the community that has given so much to you, I’m sure a coding blog is one of the best options for a side hustle.
Most programming blogs are community-driven non-profit sites whose goal is to make software developer’s life easier.
Your programming blog should be a useful resource and free resource for a software developer who is looking for information on the internet.
But also do not falsely believe your programming blog could not make money!
You can implement monetization strategies on a programming blog. Just don’t expect significant results with less than 100,000 monthly visits.
Remember, the sky is the limit. All the big sites like GeeksForGeeks, StackOverflow, and Quora started small.
Perhaps your programming blog is just a blog at first but then you expand it to a full-on business. For example, you can launch e-books and courses. You can also do affiliate marketing with programming-related products.
So yes, you can make money with a programming blog, but you need to have hundreds of thousands of readers, good monetization strategies, and a lot of time to write/update the content.
How to Make Affiliate Marketing Work on a Programming Blog?
On the internet, everyone says affiliate marketing is an easy way to make money. But this gives you a false sense that it’s also a quick way to make money.
While there is absolutely nothing too complex in affiliate marketing, it takes a long time to learn and implement. This is partly because search engines take months or up to a year to rank your affiliate content. The trial and error phase is thus long and you have to be patient.
Unfortunately, a programming blog is a different animal when it comes to affiliate marketing.
It’s really really hard to sell anything to a developer that is quickly passing by looking for a quick answer to a question. How many times have you bought something from a programming tutorial?
To make readers click your affiliate links, you need to build a loyal audience that trusts your reviews and opinions.
Another way to make affiliate marketing work is by targeting an audience of software developers that is “hot”. In other words, you should target readers that are about to purchase something.
For example, “Best Python programming courses in 2022” is a great topic (although competitive) for an article.
If you think about it, when someone searches for “the best programming courses”, they are ready to make a purchase. But don’t be fooled here! Even though the visitors are already warmed up and ready to make a purchase, the conversion rates are still surprisingly low.
Traditionally, you can reach 0.5-2% conversion rates with this type of content.
Example. Say you get a 10% commission on a $50.00 coding course and your “Best programming course” article gets 10,000 views/month. In this case, you might make something between:
- Worst-case scenario: 0.005 x 10,000 x $50,00 x 0.1 = $250
- Best-case scenario: 0.01 x 10,000 x $50,00 x 0.1 = $1,000
This would be a great side income from one article. But remember, there is a lot of competition. To rank for something like “Best Python courses”, you need to be trusted by search engines.
In other words, you need to have a lot of content and visits around the programming niche. If you only publish one single article with Python course links in it, Google and other search engines won’t rank it.
What Is Organic Traffic?
Organic traffic refers to traffic from search engines.
To get organic traffic, all you need is a blog post that ranks high on Google and other search engines.
It is often considered the best type of traffic you can get. This is because it is free and can last for years.
Many businesses also write on their blog. The reason for this is to attract organic visitors to their business page. A portion of this traffic will then convert to paying customers.
The strategies taught in this guide lead to organic traffic over time.
Do I Need to Do Backlink Outreach?
Building backlinks by asking for them means you are gaming the system. Google will find your page without backlinks too.
I haven’t done any backlink building to my blog with almost 200,000 visitors per month.
As time goes by, you are going to receive backlinks naturally. This means people link to your articles because they are actually useful. Not because you paid or asked for them.
Backlink outreach is also time-consuming. You need to send thousands of emails to get a handful of links.
Use this time to write more articles instead.
Is SEO Really Useful?
It takes forever to rank on Google. A brand-new site with a ton of content still might not see traffic in 6 months. This leads to frustration. With the lack of patience, bloggers want to build an audience quickly.
This is where the useless SEO advice comes in.
The SEO “experts” online try to sell you pricy tools and courses to build your audience. They convince you with their own stats. After reading the SEO guide or two, you get the impression that your site lacks an audience because of poor SEO practices.
But the truth is Google is slow in ranking your content no matter what you do.
It is normal to have 50 quality articles without any traffic for the first couple of months. Just keep on working and you will see the results!
Worrying about SEO is useless. Instead, you should focus on writing content that solves a problem better than anyone else.
Also, if you implement state-of-the-art SEO strategies on your blog, you run the risk of ruining your entire business. What if Google changes the algorithm overnight? All your strategies and content become obsolete, and you might drop out of rankings in a day. That’s not something you want. Remember to build your blog naturally. Forget about keywords or other search engine optimizations. Write for humans, not for robots!
Today you learned how to start a successful programming blog.
To put it short, write content that thoroughly answers questions people are looking for.
To get started, you can use a blogging platform like Medium.com. Or you can purchase a domain and a hosting plan and create your own website.
Beginner bloggers can get overwhelmed with useless SEO advice.
Remember, as a beginner:
- Do not pay for SEO services or tools.
- Do not beg for backlinks.
- Do not spam on social media.
In general, do not do any “tricks” to gain an audience. Google will find your pages eventually. All you need to focus on is writing. Nothing else matters.
Do not spend time on design, logo, or similar before you have built an audience.
Remember to keep learning. Read other blogging guides, listen to podcasts, and watch Youtube videos.
- I’ve got all my advice from IncomeSchool. I highly recommend watching their free videos. They do not try to sell you useless tools or advice.
Thanks for reading.
Give Me Feedback
I want to make this resource as useful as possible!
If any part was unclear, if there was a mistake, or if anything else, let me know.
You can contact me via firstname.lastname@example.org.