Are you spending hours of your life meticulously crafting blog posts that no-one reads?

Today I’m sharing the exact blog post publishing workflow I used to grow a website to over 5,000 daily visitors and generate six figures USD in annual revenue.

Affiliate disclaimer: I sometimes link to products and services to help cover the costs of running this blog. There’s NEVER any extra cost to you – and I ONLY recommend products that I’ve used personally and think are awesome. Thanks for your support! ❤️

My 14 Step Process For Writing SEO Friendly Blog Posts

#1. Select target keyword

Writing SEO friendly blog posts starts with keyword research.

Every blog post you publish should be organized around a main target keyword. For example, this post targets the keyword “how to write SEO friendly blog posts”.

This is a critical step for every blog post you write. I can’t stress that highly enough. I see countless website owners publishing posts with no keyword targeting whatsoever.

If you don’t target a specific keyword, then Google’s bots will struggle to understand the topic of your post. That means your post is less likely to show up in search results – leaving it invisible and your time wasted.

So how to choose a suitable target keyword? Here’s what I focus on when choosing mine:

  • How much search volume it has
  • How relevant it is to my business goals
  • What the search intent is
  • How competitive the keyword is
  • Whether any small sites are ranking for it on page 1

The best way to find all this information is by using a professional SEO tool like Semrush.

This powerful SEO tool has a huge databases of keywords, complete with all the associated data you’ll need to make smart decisions about which keywords to use and how to use them (e.g. for building topic clusters).

If you want to try Semrush out for free, here’s an exclusive 30-day trial for you.

Grab my 30-day Semrush free trial

Once you’ve narrowed down your target keyword, it’s time to start creating an outline for your blog post.

#2. Create an outline

Creating an outline is one of the best ways to beat writers block and keep your blog posts clearly organized.


I write my blog post outlines using a handy free tool called Dynalist. It’s ultra simple, but offers a clean and fast outlining process. Just plug in your main headings and work from there.

When creating my outlines, I start by adding the main H2 headers for the post. These give the post a clear structure, while also being relevant for SEO.

Here’s a screenshot of an outline I made in Dynalist for a past blog post. The top level headers become the H2s in WordPress, while the next level down become the H3s.

How to write SEO friendly blog posts using Dynalist

Under each heading, I add a bullet point summary of the key points I want to include. I might move the headers around, depending on how I feel, until I’m happy with the final outline and ready to draft the post itself.

#3. Gather research materials

Depending on the topic, I’ll either write based on my own experience, or draw on desk research from across the web. Most of my blog posts are a combination of the two.


When writing your posts, it’s a great idea to bring in as much of your personal experience and expertise as possible. Google loves it when authors do this, because it supports the mission for providing users with helpful content.

So where do I get these research materials from?

Well, the easy way is simply to Google the keyword and have a look at the other posts ranking on page 1. Some bloggers will stop there and simply create a post that mashes up everything else ranking on the front page.

But that’s not a recipe for quality content. Google prefers to rank articles that provide something unique.

Here’s how I do it. First, I use the other posts on page one as a guide to know what basics I should include in my own post. I make sure those are included, then I go off piste and look for additional materials to add extra value to my post.

Here are a few of the typical places I look for research materials:

  • Reddit and Quora
  • Specialist forums in the niche
  • Specialist Facebook groups
  • Reputable news outlets (e.g. BBC, Reuters, France 24, the Guardian)
  • Academic research papers
  • Government websites and official reports
  • Industry reports

#4. Write a compelling introduction

All blog posts should start with a brief but compelling introduction to draw the reader in.

Don’t launch into a long boring waffle, but instead kick things off with a bold statement of the problem that the blog post will solve. I like to use the Problem-Agitate-Solution (PAS) copywriting framework.

Also, I usually include a brief snapshot of my relevant expertise or experience, to give the reader confidence that I know what I’m talking about.

For SEO friendly blog posts, you should include your main target keyword in the first couple of paragraphs. Make sure it fits in naturally, and don’t force it if it doesn’t. It’s OK to change the grammar to make the text flow properly. Google is smart enough to know that it’s the same keyword.

#5. Draft the text

Now we get to the main part of the process, writing the text itself. If you’ve completed the previous steps properly, you should have a good foundation for writing an SEO friendly blog post.

Here’s how I do all of mine.

First, I copy paste my outline from Dynalist into WordPress, so all the headings are on the page. That gives me immediate structure and stops me staring at a blank page. Because I’ve got plenty of material to draw on, I almost never get writers block.


I always use voice typing to create my articles. Not only is it much faster than typing by hand, it also makes sure my text comes out sounding exactly the same as how I talk. Using a conversational style is the most reader friendly way and it’s the best fit for my blog posts.

Next, I voice type suitable text under each header until I’ve fleshed out all headers. I make sure the text is divided into easy to read chunks (usually two to three lines), to avoid any large walls of text.

I add lists in bullet point or numbered format wherever necessary. This is helpful for the reader, as it makes it easy for them to skim. Using this approach, I work my way through my outline until everything is complete.

#6. Add external links

Whenever you include a source in your blog post, you should also include a link to its website.

The best way to do this is simply by highlighting the part of the text that’s most relevant to the content of the external link. This is known as contextual linking. These links should flow naturally as part of your website content.

So go through your blog post and make sure you include external links in the text where needed.

#7. Write a strong conclusion

Don’t neglect the concluding paragraph or waste it on a boring summary of the blog post.

It’s an excellent place to tell the reader what they should do next. What exactly you ask depends on your business goals and what you have to offer.

For example, you might ask them to:

  • Download a relevant lead magnet
  • Join your mailing list for more insights like this
  • Schedule a call with you
  • Sign up for a free trial of a product
  • Read another relevant article

#8. Add internal links

Once the whole blog post is completed, I go back through it and add 3 to 5 internal links to other relevant blog posts on my website.

This is an important step, because it helps to give Google more context about the topic of my post, and how it fits in with the rest of my site.

#9. Make sure target keyword is in the right places

I sometimes do this at the same time as writing, but I also do a final check after writing is complete to make sure the keyword is properly inserted where it needs to be.

You should include your main target keyword in the following parts of your blog post:

  • Title (as close to the start as possible)
  • URL slug
  • First or second paragraph
  • One of the H2 headers
  • Scattered a few times throughout the text itself

That should be enough to let Google know what the blog post is about. Make sure you don’t ‘keyword stuff’ (i.e. overuse it) and don’t force the keyword into places where it doesn’t naturally fit. Google hates that.

#10. Add a custom image

In WordPress, every blog post should have a featured image. This shows up when you share the post and gives some context about the topic. I may also use several images in the body of the text, but it depends on what the blog post is about.

Canva is my absolute favorite tool for creating custom images easily. Not only is it a total dream to use, it’s also been a real game changer for me in producing content for my blog, as well as my wider business.

For my blog posts, I first look for a relevant photo among Canva’s huge library of stock images. I then add some kind of fun graphic element on top of the photo to make it unique. Finally, I use one of Canva’s filters to give the final image a distinct look. This whole process typically takes me less than five minutes.

#11. Hit publish (and celebrate!)

Once the image is uploaded, the blog post is ready to go live. I give it a final check using the preview feature in WordPress, then hit publish to make it visible on my site.

But that’s not the end of it. I still have a couple of things left to do, to make sure my blog post has the best chance possible of ranking in search.

#12. Give the new post some ‘link juice’

You remember the earlier step where we added links to other blog posts from the new one?

Well, we also have to do the same process again, this time linking to the new blog post from several existing ones. This passes some internal “link juice”, makes sure the new blog post isn’t considered an “orphan”, and shows Google which topic area the article sits in.

I usually aim to link to the new post from 3 to 5 existing blog posts on my site.

#13. Manually submit the post to Google

This is a neat little trick to get the post indexed by Google more quickly. It gets your new post added to a priority queue and (supposedly) picked up faster.

Go to Google Search Console (you should have already set this up for your blog), and paste the URL of your new blog post into the “inspect any URL” search box at the top of the page. Then click the “Request indexing” button to submit the page for indexing.

#14. Share the post

It’s good for SEO if your new blog post gets some clicks in the early days of its life.

So I generally share the new post to all my social media channels. I also share it in an email to my email list.

And that’s it.

Final Thoughts…

Thanks to this process (and other key factors, such as keyword research), many of my new blog posts now rank on page 2 of the search results within a matter of days.

When that happens, I know it won’t be long before they hit page 1, bringing in all that tasty traffic. 🎉

I hope that following my process for writing SEO friendly blog posts helps your own posts to achieve similar results. You can also check out my article on blogging best practices for further advice to keep you on track.

Want my help with getting your blog posts ready to rank?

Similar Posts