How to Create a Profitable Blog with WordPress (with a Real Example)

HomeBloggingHow to Create a Profitable Blog with WordPress (with a Real Example)

How to Create a Profitable Blog with WordPress (with a Real Example)

Before getting started, we want to let you know in advance that this is a long article. You might need 20 minutes (or even more) to finish reading this article. But we can guarantee that reading this article is worth your time spent if you want to create a profitable blog with WordPress. We create this article based on our experience of growing, which currently earns us $5,000 (and counting) on a monthly basis. We started the project back in late 2019.

A short intro about It is a blog that covers WordPress. More specifically, it covers WordPress page builder plugins such as Elementor and Divi Builder. We earn money from the blog by joining the affiliate programs of Elementor and Elegant Themes (the developer of Divi Builder) — as well other related products including JetPlugins and Bluehost (a WordPress hosting). As said above, earns us about $5,000 per month to date, and we are pretty sure it will earn more in the coming months as we have some plans to grow it to even bigger.

So, are you ready?

A Short Intro About WordPress

WordPress is the most popular content management system (CMS) which you can use to create a blog, e-commerce website, listing website, and other dynamic website types. It powers over 40 percent of websites on the internet. WordPress is available in two versions: hosted ( and self-hosted ( is owned by Automattic. It offers a managed solution to run a WordPress-based website but with some restrictions depending on the plan you use. While is owned by the community (technically nobody owns it). The development of is led by Matt Mullenweg (co-founder).

Anyone can use WordPress no matter the purpose. But which version should you use?

To create a business-oriented blog, we strongly recommend you use the self-hosted version as it offers more flexibility and freedom. As your blog grows (indicated by gaining more traffic), you might need to migrate to a more reliable hosting service. If you use the self-hosted version, you only have one option: upgrading your plan (which usually forces you to spend more money to unlock certain features).

On top of that, using the self-hosted version gives you freedom to customize your blog. You can install any plugin you need or any theme you like.

Here are five key differences between the hosted version and the self-hosted version of WordPress.

Theme InstallDepending on your planYes
Plugin InstallDepending on your plan Yes
Monetization OptionsDepending on your plan Unlimited. You can apply any monetization model
Access to WordPress FilesDepending on your plan Yes
Access to WordPress DatabaseDepending on your plan Yes
Migration OptionNoYes

Simply put, the self-hosted version allows you to have full control over your website.

Once you have understood the differences between two WordPress versions, you can start to create your blog.

Step 1: Set the Monetization Model

If you want to create a business-oriented blog, we strongly recommend you set the monetization model upfront as this will determine the hosting plan selection. When creating, we have set a plan to monetize it via affiliate marketing (Elementor in particular). We thought affiliate marketing was the best fit as it requires no large amount of traffic. Fun fact: generate less than 2,000 daily visitors to date, which is very low 🙂

But we managed to earn $5,000 monthly revenue as we have very targeted traffic. This is the point to create a successful blog.

Affiliate marketing is not the only way to monetize a blog. You can also monetize your blog by installing PPC ad banners (e.g., Google AdSense), offering paid content to members, selling e-books, accepting sponsored content, and so on.

Here are the top five monetization models adopted by professional bloggers:

  • Selling affiliate products
  • Installing PPC ads
  • Selling e-books
  • Accepting sponsored content
  • Offering paid content

You can visit this page to learn more about how to monetize a blog.

Step 2: Pick a Niche and Name for Your Blog

Starting a blog is no different to starting other business types. First, you need to find and set the market (audience) of your blog. In the context of blogging, 500 daily targeted visitors are better than 5,000 untargeted daily visitors.

Please note that you are about to create a blog, not an online magazine (even an online magazine needs a niche). If your topic is too general, it would be harder for your blog to compete on search engines. Also, it takes extra effort to build a loyal reader base (email subscribers in particular).

Back to our example (

Before eventually ending up with a domain name, we initially wanted to register a different domain that represents WordPress at large. But we thought that WordPress is too general topic, so we decided to pick a more specific topic (page builder plugins in this case). Another reason, there have been some more established WordPress blogs that are hard to compete with.

By choosing a more specific topic, the chance of your blog posts appearing on the front page of search engine results is higher as search engines will better understand the topic of your website. To prove this, take a look at the screenshot below.

The screenshot above shows the search queries (on Google) whereby we win the competition. If you search on Google using one of the queries above, you will find the‘s blog posts on the front page (some even on the top list).

Those are just examples. There are many other keywords in which win the competition on search engines.

Can you guess the reason?

It is because is a blog about WordPress page builder plugins and write articles with the topics around Elementor, Divi Builder, and other page builders on a regular basis. As mentioned, the more specific the topic (called “niche” in the marketing world) of your blog, the bigger the chance it will win the competition on search engines.

How to Pick a Niche and Name for Your Blog

Remember the rule once again. The more specific the topic (niche) of your blog is better. Three main reasons for this are:

  • It’s easier to convert the traffic into sales
  • It’s easier to build a loyal reader base
  • The bigger the chance to win the competition on search engines

Once you understand, you can start finding the niche of your blog. How to do so?

You can start by defining the general topic first, then break it down into some more specific topics. — as you have read above — is an example you can use as the reference.

Need more examples?

Say you want to create a photography blog. You can search for some photography derivatives such as landscape photography, travel photography, digital photography, mobile photography, and so on. Find a derivative where you are best at and then pick it as the main topic of your blog. As your blog runs, you can write the broader topics, of course, but your focus should be on the main topic you have picked in advance. And you should win on the topic (on search engines).

Once the topic/niche has been picked, you can continue with the blog name. Then, you can check whether the domain of the blog name is available.

When researching a blog niche, you can use a tool like Google Keyword Planner to figure out the competition level as well as the search volume. If you have enough capital, you can use paid tools like Ahrefs and Wordtracker.

Two main metrics you should notice when researching a blog niche are:

  • Monthly searches volume
  • Competition level

It would be great if you could find a blog niche that has a high monthly search volume with low competition.

Step 3: Pick a Reliable Hosting

Two main terms you need to understand before creating a blog:

  • Domain name
  • Hosting

Domain name is the identifier of your blog. It is the string typed on the address bar of web browser to access your blog. is an example of a domain name.

Meanwhile, hosting (web hosting more precisely) is a server where you place your blog on. Think of web hosting as a house and domain name as the address of the house. In general, there are six web hosting types:

  • Shared hosting
  • VPS (virtual private server)
  • Dedicated server
  • Cloud hosting
  • Managed hosting
  • Colocation

To create a business-oriented blog, we strongly recommend using managed hosting. A managed hosting service allows you to focus on things that matter more for your business such as content creation, design, and marketing. The technical aspects related to website administration such as server maintenance, software updates, backup, security, and server configuration are taken care of by your hosting provider.

Bluehost is one of the prominent web hosting providers that offers managed WordPress hosting plans. One of the reasons why we recommend Bluehost is that it has transparency about the number of visitors you can get.

Bluehost alternatives:

  • A2 Hosting
  • DreamHost
  • Hostinger
  • HostPapa
  • SiteGround

Step 4: Register Your Domain and Install Your Blog

Once you are ready with your blog name and niche, the next step is to register a domain of your blog. In this example, we will show you how to register a domain in Bluehost. In addition to a domain, you will also need a hosting to install your blog. We will subscribe to one of the managed WordPress hosting plans of Bluehost — the BUILD plan. This plan has the following specifications:

  • Capable of handling up to 50,000 monthly visitors (about 1,600 per day)
  • 20 GB storage space
  • Free SSL (HTTPS)
  • Daily scheduled backups
  • Malware protection
  • Caching for better site performance (speed)

The plan costs $19.95 per month with a minimum contract of 3 months. Bluehost offers different prices based on the durations of the contracts.

If you subscribe to its 6-month contract plan, you will get a free domain.

Registering a Domain in Bluehost

First off, visit the Bluehost website. Click the WordPress menu on the top bar and select Managed WordPress.

Select a plan you want to use by clicking the Select button.

On the next step, enter your domain name on the Create a new domain column. Make sure to select the domain extension (.com, .net, .org, etc). Click the Next button to continue.

If your domain is available, you will see a green notification and can continue to the next step. On the Account Information section, fill out the required fields such as name, country, city, email address, and so on.

On the Package Information section, select a plan you want to subscribe to.

On the Payment Information section, add your credit/debit card number and CVV code. If you want to pay via PayPal instead, you can click the More payment options link and select the Pay with PayPal option. Accept the user agreement and click the submit button.

Complete the payment. Once done, you will be redirected to a page where you can create a Bluehost account. Click the Create your account button to create the account.

Create your password and accept the user agreement. Click the Create Account button.

Your account is ready. Click the go to login button to login to the Bluehost dashboard.

Installing WordPress on Bluehost

Now that your account is created, you can start to install WordPress on Bluehost.

Every time you want to login to Bluehost, you can visit and click the Login menu on the top bar.

To start installing WordPress, login to Bluehost and click the Create your website button.

Skip the next two steps until you see the following screen. Select the left option and click the Get started button.

On the next steps, you will be asked basic questions. You can skip these steps to select a theme. You can start with a free theme. Until here, your blog is ready and can be accessed by typing the domain on the web browser.

To manage your blog, you can login to the WordPress dashboard by clicking the Login into WordPress button on the upper right-corner.

In order to make it easier for you to login to the WordPress dashboard, you can add a new user on your WordPress blog. Next time, you don’t need to login to Bluehost every time you want to login to your WordPress dashboard once you have a new account. Instead, you can simply type on web browser and login with your new account.

To create a new account, go to Users -> Add New on your WordPress dashboard.

Enter the username, email address, and name, and password. Select the role for your new user and click the Add New User button.

Once your account is created, you can use it to login to the WordPress dashboard.

Setting Up the SSL

Setting up SSL is crucial before you go further with your blog. If you don’t set it, your blog will be flagged not secure by web browsers.

Bluehost includes free SSL feature (provided by Let’s Encrypt). To use it, login to Bluehost with your account. Once logged in, click the Manage site button.

Next, go to the Security tab and make sure the SSL Certificate: Let’s Encrypt option is enabled.

Note: if you find the SSL is not available message when opening the Security tab, you can contact Bluehost to fix it. You can reach out to Bluehost via live chat or Twitter @bluehostsupport.

After making sure SSL has been enabled, login to your WordPress dashboard and go to Settings -> General.

Edit the default URL by adding the “s” letter on the “http” section. We also suggest you add “www”.

Make sure to click the Save Changes button on the bottom to apply the changes.

Install the Essential Plugins

Before stepping further with your WordPress blog, you need to install some essential plugins first. The essential plugins you need to install are:

  • Page Builder
  • Form Builder
  • Coming Soon Mode
  • SEO Plugin
  • Security Plugin
  • Backup Plugin

The good news is that the managed WordPress hosting from Bluehost has included some essential plugins, including:

  • Jetpack: Security plugin
  • Akismet: Spam protection
  • SiteLock: Malware monitoring
  • CodeGuard: Backup plugin

The essential plugins you need to install yourself are page builder, form builder, coming soon mode, and SEO plugin. Two plugins we recommend are Elementor and Yoast.

Elementor is a page builder plugin that comes with some additional features, including form builder and coming soon mode. Thanks to the features offered by Elementor, you don’t need to install too many plugins on your WordPress blog, which is great.

Elementor comes with the following features:

  • Theme Builder (to create custom layouts for your site parts, will be covered later on shortly)
  • Form Builder
  • Popup Builder
  • Marketing Integrations (can be connected with MailChimp, MailPoet, MailerLite, etc)
  • Etc.

To unlock all those features, you need to use Elementor Pro, which costs you $49 per year.

You can refer to this page to learn how to install a plugin in WordPress.

Enable Comin Soon Mode

While your blog is under development, you can let your visitors know that your blog is not ready yet. To do so, you can enable the coming soon mode. Elementor has a feature to enable coming soon mode on your WordPress blog. You can use its intuitive editor to create a stunning coming soon page.

To enable coming soon mode with Elementor, go to Elementor -> Tools on your WordPress dashboard (make sure you have installed Elementor Pro).

Open the Maintenance Mode tab. On the Choose Mode option, select Coming Soon. Select a template you want to use on the Choose Template option. On the Who Can Access option, you can set who can access your blog during the coming soon mode. Don’t forget to click the Save Changes button to apply the change.

If you want to edit the coming soon page, you can click the Edit Template link under the template name on the Choose Template option. Clicking this link will open the Elementor editor.

Step 5: Design Your Blog

Your WordPress blog consists of the following main parts:

  • Homepage
  • Blog post layout
  • Archive pages layout
  • Header
  • Footer
  • 404 page
  • Search results

Elementor (the pro version) allows you to design and customize all the parts above even if you have coding skills. But first, you need to install a theme to start customizing your blog.

WordPress itself comes with default themes, but we strongly recommend you use a third-party theme instead. Page Builder Framework and Kedence is a great theme to pair with Elementor.

To install a theme on your WordPress blog, go to Appearance -> Themes on your WordPress dashboard.

Click the Add New button to add a new theme.

Type “page builder framework (or kadence)” on the search field. Once you find it, hover your cursor over it and click the Install button.

Activate the theme right away once installed.

Designing the Homepage

Homepage/frontpage is the main page of your blog. By default, WordPress displays the late blog posts on the homepage with the layout depending on the theme you use. For a business-oriented blog, displaying only blog posts on the homepage is not the best practice. You need to add a static element or two to emphasis the main value your blog offers. Take a look at the example below.

The image above is the screenshot of the homepage. As you can see, there is a static section right before the blog posts section. We use this section to place a persuasive sentence as well as a button that points to the main content we offer on the blog.

The default editor of WordPress (Gutenberg) allows you to create a custom page for your blog homepage, but Elementor offers a way better, pleasurable experience of page creation. Plus, there are more elements you can add to your page.

To create a custom homepage with Elementor, first, create a new page (Pages -> Add New). Give your page a name title (e.g., homepage) and edit it with Elementor by clicking the Edit with Elementor button.

Once the Elementor editor opens, you can start creating the page. You can add any element you want — as well as set the layout to your liking. For more detailed tutorials on how to create a blog homepage with Elementor, you can read this post.

Once you are done creating the page, you need to set it as the homepage on your WordPress blog. To do so, go to Settings -> Reading on your WordPress dashboard. On the Your homepage displays section, set to A static page and select the page you have just created on the Homepage dropdown. Make sure to click the Save Changes button to apply the change.

Designing the Blog Post Layout

After your blog is ready, you will be writing blog posts on a regular basis. You might don’t realize this but when you are writing a blog post, you are implementing content marketing practice whereby you offer something via your blog post.

In WordPress, the layout of blog post is controlled by your theme. You have options to customize the layout, but the options are commonly limited. You can create a custom blog post layout using Elementor instead. By creating a custom blog post layout, you can set the layout yourself and add any element according to your needs. Take a look at the example below.

The screenshot above is the blog post layout of, which was created using Elementor. We removed the unnecessary elements and replaced them with more useful elements, including a floating call to action button on the right side which contains an affiliate link. We created a sidebarless blog post layout to allow our readers to focus on the content.

If they are interested in buying a product we cover (Elementor, Divi, etc.), they can simply click the floating button. This simple trick works pretty well so far.

If you have a content-focused blog post layout — instead of ad-focused –, your visitors will appreciate it. To increase the user experience, you can also add a table of contents to long-form articles and other useful elements. Elementor has nearly all elements you need to be added to your blog post layout.

The best thing is that Elementor allows you to create a custom blog post layout for specific blog posts.

For detailed instructions on how to create a custom blog post layout in WordPress using Elementor, you can read this blog post.

Designing the Archive Pages

WordPress has two parameters that you can use to organize your blog posts: category and tag. You can use categories to group your blog posts in broad topics. For instance, if you are creating a blog that reviews media, you might use categories such as Books, Film, or TV. Meanwhile, you can use tags to group blog posts in more specific topics. For instance, you might want to use tags such as science fiction, horror or action adventure.

Both category and tag are called taxonomies in WordPress. By default, WordPress has the following URL structures to access a category page and tag page.


Category pages and tag pages are classified as archive pages in WordPress. Same as blog post, the layout of archive pages are also controlled by the theme you use unless you create a custom layout to replace them. Elementor allows you to create a custom layout for archive pages. Take a look at the following screenshot.

The screenshot above is one of the examples of a custom archive page on As you can see, there is a static section (the top section) that displays the persuasive text — complete with a call-to-action button that contains an affiliate link.

When creating a custom archive page using Elementor, you can add any element for the sake of increasing sales (or any purpose of your choice).

You can read this article for more detailed tutorials on how to create a custom archive page in Elementor.

Designing the Header

Header is one of the crucial parts of a blog. You can use it to place the navigation menu to make it easier for your visitors to navigate to the pages within your blog. You can also place other elements such as a button, a search icon, social media icons, etc.

Elementor also allows you to create a custom header.

But first, you need to set up a menu to be placed to the header. For more detailed tutorials on how to create a menu in WordPress, you can read this post.

Once your menu is ready, you can start to create the custom header. Go to Templates -> Theme Builder on your WordPress dashboard. Hover your cursor over the Header tab on the left panel and click the plus icon.

Elementor offers pre-made header templates you can choose from on the appearing template library window. Simply select the one you like and click the INSERT button to import to the editor. If you want to create the custom header from scratch instead, you can simply close the template library window.

For more detailed tutorial on how to create a custom header in WordPress using Elementor, you can read this post.

Before publishing the custom header, you might want to set the site logo and site icon (favicon). To do so, click the hamburger icon (the three-line icon) on the top-left corner on the widget panel and select Site Settings.

Click the Site Identity settings block on the SETTINGS section.

Click the plus icon on the Site Logo option to upload your logo. To upload your site icon, you can click the plus icon on the Site Favicon option (notice the suggested image dimensions). From the Site Identity settings block, you can also set the title of your blog as well as the description.

Designing the Footer

Footer is another crucial part of a blog. It is a part that lies at the bottom side of your blog. You can use footer to place links to crucial pages of your blog such as contact page, about page, privacy policy page, and so on. You can also add a secondary navigation, email opt-in form, social media icons, and so on. It’s completely up to you to add any element you want.

Elementor Pro also allows you to create a custom footer for your blog. You can refer to this article to learn more about how to create a custom footer in WordPress using Elementor.

Designing the 404 Page

When someone accesses a certain link on your blog but there is no page associated with it, your blog will display an error message. The page that displays the message is called 404 page (also known as HTTP 404, 404 not found, 404, 404 error, page not found).

WordPress has a default function to display 404 error, but the layout — as well as the design — of the page is controlled by theme you use. Elementor Pro allows you to create a custom 404 error page so that you can set the design of the page to match your blog’s scheme (e.g., color scheme).

For more detailed instructions on how to create a custom 404 page in WordPress using Elementor, you can read this article.

Designing the Search Results Page

Search is a crucial feature you need to add to your blog. It allows your readers to find certain content more easily. WordPress has a built-in search feature. Again, the layout and design of the search results page is controlled by the theme you use. Elementor also allows you to create a custom search results page of your blog so that you can set the design yourself or add the elements you need.

For more detailed instructions on how to create a custom search results page in WordPress using Elementor, you can refer to this article.

Step 6: Write Your First Blog Post

Once you are done setting up and designing your blog, you can start writing blog posts. From now on, you will interact with the content editor of WordPress on a regular basis. The content editor of WordPress itself is called Gutenberg (also called block editor).

To write a new blog post, you can simply go to Posts -> Add New. This will open Gutenberg whereby you can write the blog post.

Before you start to write the article, it’s highly recommended to set the category, tags, and featured image. You can find these settings under the Post tab on the settings panel on the left side. You can show/hide the settings panel by clicking the gear icon on the upper-right corner.

Every time you are done writing a blog post, you can click the Publish button. You can also preview your blog post first — by clicking the Preview button before you publish it.

The Bottom Line

If you want to start a new side project or full-time business and think of a blog, then it’s the perfect time to start. With the trend of content creation has shifted from text-based to video (YouTube) and audio (podcast), the chance of being a leader in a certain field/niche is way bigger with a blog.

Blogging is still promising. Even more promising than before thanks to the lower competition.

The advantage of blogging compared to other content creation types such as YouTubing and podcasting is that you have more monetization model options. When starting a blog, you can also set an exit plan such as merger and acquisition or sell your blog once it reaches enough valuation. You can use a tool like Flippa to figure out the valuation of your blog.

If you want to create a business-oriented blog, picking a niche is the most crucial step. Especially if you have no team, you should pick a very specific niche to make it easier for you to nurture your blog. The more specific your blog niche, the bigger the chance it will win the competition on search engines. In order to be successful with your blog, you also need to learn SEO.

No business that runs without capital. So is a blog. You need to spend the budget to start a business-oriented blog. As mentioned earlier, we strongly recommend you use a managed WordPress hosting as it offers many advantages to allow you to focus on things that matter more for your business, content creation and marketing in particular.

We also strongly recommend you use Elementor (or Divi Builder) as it offers more design flexibility. Most importantly, Elementor comes with some useful features such as form builder, popup builder, theme builder, etc (these features will be so much useful to run certain campaigns as your blog grows). With Elementor, you don’t need to install too many plugins on your blog.

How Much You Should Spend to Create a Blog?

Assuming you want to use the .com extension, you need to spend around $12.99 per year for the domain. While for the hosting, the fee varies depending on the hosting provider you use. In Bluehost, for instance, you need to spend $16.95 per month for the hosting (for quarterly bill).

Domain$12.99/year ($1/month)
Hosting$16.95/per month (for quarterly bill)
Elementor Pro$49/year ($4/month)
Total$ 21.95/month

One crucial thing before you start a blog. It takes time for every business to be successful. Your blog is no exception. If you earn nothing in the first three months, you should try for the next three months. If you still earn nothing, you should try for the next three months. And so on and so forth.

Finally, happy blogging and good luck!

hand-picked weekly content in your inbox


related posts