How to optimize content for topics versus keywords 2** Revised on 7th of June

Did you know that the average length of content in the top 10 search results is over 2,000 words?

Why is that?

Longer content is typically more valuable content.

Articles that are valuable get lots of links.

If they get lots of relevant links they will do well in search results.

We’re writing more about topics than keywords now.

What’s the difference between writing an article about keywords as opposed to a topic?

A topic is a little broader than keywords.

If you were creating content about tickets prices in sports stadiums you wouldn’t create an article for ticket prices in the upper stands, tickets prices in the seated areas, corporate tickets etc.  You’d write one piece of content about the topic ‘ticket prices in sports stadiums’.

Have a look at articles on Wikipedia.  They are very detailed articles that contain as much relevant content as possible related to the topic.

As you’re writing more about topics you’ll end up with less articles but more detail in your articles.

Google understands context better…

You don’t always have to exact matches of keywords for Google to index your content as it understand context better.

Let’s say you decide to write about the top Twitter analytics.

You’re not going to mention Twitter analytics all the time but, if you’re writing a detailed article about this topic, you’d expect to see words and phrases like: Twitter statistics, Twitter reports, retweets, shares, engagement, mentions of Twitter analytics tools etc.

So, you’re writing a post about the full topic and you consider all the keywords for that topic.

But your article is still focussed on the ‘Twitter Analytics’ keywords… i.e. your topic.

Get it?

Google gets smarter all the time, and it now understands that, when you talk about one topic, there can be lots of relevant words and phrases.

So even if you don’t have the exact match keywords Google is better at understanding what the searcher wants.

This Google search is for ‘social media class’, and you can see from the search results that Google understands that, in this context, the word ‘class’ can be swapped for the word ‘course’:

understanding the context of search terms
Google is getting better at understanding the context of search terms

What this means is that you don’t have to repeatedly use a single keyword phrase any more – it doesn’t look natural, it reads strangely, and Google doesn’t like it.  Instead, use a mixture of keywords that are relevant to your topic and Google will get the message!

Treat headings in blog posts like mini blog post titles to help you rank for themClick To Tweet

What changes with the on page optimization?

On page optimization is the process of optimizing your content on your site (i.e. a blog post) to help Google index your content.

When you create your article about a topic you naturally include lots of detail which will have lots of related terms to the core topic.   One of the ways of telling Google about the core topic is through the ‘meta title’.  This is the first line that appears in the search results.

For any other keywords that are an important part of this topic I’d generally have a sub-heading on the page which includes these keywords.  Google will look at a sub-heading as more important than content.  Think about your sub-headings like mini blog post titles.

To read more about on page optimization Brian from Backlinko has a great article – On page optimization

How do I find all the keywords that are related to a topic?

Here is a range of places to find related terms to create that ‘topic article’:

Google Keyword Planner

Google Keyword Planner allows you to enter in keywords and displays keywords that Google thinks are related, as well as related topics.

For example, if I put in ‘blog topics’ I see keywords like:

  • Blog ideas
  • Topic generator
  • Blog ideas for writers
  • Vlog topics.

Google Trends

Google used to show related searches at the end of the search results page but they have now replaced this with ads!

An alternative approach is using Google trends.  Go to Google trends and type in your topic you will see topics related to that topic and also queries.

The topic I searched for below was ‘car insurance’.

car insurance
Google trends topics

For the related queries include these are sections within your post if it make sense.


Semrush is an awesome SEO tool and if you enter in the topic you want to rank on it will show you the related keywords to this topic.  Here’s the related keywords to blog topic!

Related keywords

Google search results

When you search through Google for the topic you want to rank for Google shows you the articles it thinks are best suited for that query.  This means it’s likely these articles will have related keywords in them that you could use.


Google is looking for detailed content based around a topic, not just focussed on a particular set of keywords.  When you create great content around a topic you are more likely to get valuable links

It likes to link to high-quality, authoritative content and you can demonstrate you provide this by writing in-depth content on your topic.

Pick the right topic and you’ve a much better chance of getting ranked.

Do you ever get stuck for blog topics ideas?  Which of these ideas will you use to help?

Similar Posts You Might Also Like...
[wpforms id="21612" title="false" description="false"]
<div class="wpforms-container wpforms-container-full" id="wpforms-21612"><form id="wpforms-form-21612" class="wpforms-validate wpforms-form" data-formid="21612" method="post" enctype="multipart/form-data" action="/blog-topics/" data-token="2dc800b2efff3327900b69ae4f20e0bb"><noscript class="wpforms-error-noscript">Please enable JavaScript in your browser to complete this form.</noscript><div class="wpforms-field-container"><div id="wpforms-21612-field_1-container" class="wpforms-field wpforms-field-name" data-field-id="1"><label class="wpforms-field-label wpforms-label-hide" for="wpforms-21612-field_1">Name <span class="wpforms-required-label">*</span></label><input type="text" id="wpforms-21612-field_1" class="wpforms-field-large wpforms-field-required" name="wpforms[fields][1]" placeholder="Name" required></div><div id="wpforms-21612-field_2-container" class="wpforms-field wpforms-field-email" data-field-id="2"><label class="wpforms-field-label wpforms-label-hide" for="wpforms-21612-field_2">Email <span class="wpforms-required-label">*</span></label><input type="email" id="wpforms-21612-field_2" class="wpforms-field-large wpforms-field-required" name="wpforms[fields][2]" placeholder="Email Address" required></div><div id="wpforms-21612-field_6-container" class="wpforms-field wpforms-field-text" data-field-id="6"><label class="wpforms-field-label wpforms-label-hide" for="wpforms-21612-field_6">Website</label><input type="text" id="wpforms-21612-field_6" class="wpforms-field-large" name="wpforms[fields][6]" placeholder="Website" ></div><div id="wpforms-21612-field_5-container" class="wpforms-field wpforms-field-textarea" data-field-id="5"><label class="wpforms-field-label wpforms-label-hide" for="wpforms-21612-field_5">Enquiry <span class="wpforms-required-label">*</span></label><textarea id="wpforms-21612-field_5" class="wpforms-field-medium wpforms-field-required" name="wpforms[fields][5]" placeholder="Enquiry" required></textarea></div><div id="wpforms-21612-field_11-container" class="wpforms-field wpforms-field-captcha" data-field-id="11"><label class="wpforms-field-label" for="wpforms-21612-field_11">Custom Captcha <span class="wpforms-required-label">*</span></label> <div class="wpforms-captcha-math"> <span class="wpforms-captcha-equation"> <span class="n1"></span> <span class="cal"></span> <span class="n2"></span> <span class="e">=</span> </span> <input type="text" id="wpforms-21612-field_11" class="wpforms-field-medium wpforms-field-required a" data-rule-wpf-captcha="math" name="wpforms[fields][11][a]" required> <input type="hidden" name="wpforms[fields][11][cal]" class="cal"> <input type="hidden" name="wpforms[fields][11][n2]" class="n2"> <input type="hidden" name="wpforms[fields][11][n1]" class="n1"> </div> </div></div><div class="wpforms-field wpforms-field-hp"><label for="wpforms-21612-field-hp" class="wpforms-field-label">Phone</label><input type="text" name="wpforms[hp]" id="wpforms-21612-field-hp" class="wpforms-field-medium"></div><div class="wpforms-recaptcha-container wpforms-is-recaptcha"><div class="g-recaptcha" data-sitekey="6LeM6ZgUAAAAAEkxPMgcFFoPipPfMkqzgcGXJioV" data-size="invisible"></div></div><div class="wpforms-submit-container"><input type="hidden" name="wpforms[id]" value="21612"><input type="hidden" name="wpforms[author]" value="5"><input type="hidden" name="wpforms[post_id]" value="12243"><button type="submit" name="wpforms[submit]" id="wpforms-submit-21612" class="wpforms-submit bc-form-button-blue" data-alt-text="Sending..." data-submit-text="Send" aria-live="assertive" value="wpforms-submit">Send</button></div></form></div> <!-- .wpforms-container -->