If you’ve invested time and effort writing an epic piece of content, don’t forget about on-page SEO. It helps google to understand what your page is about and show it to as many people as possible in the search results.
Even better, many on-page improvements are super quick and easy to do.
Follow this checklist for perfect on-page SEO every time:

If you’re looking for a reusable interactive checklist to use time and time again, here are a few other formats
Let’s run through everything real quick.
Google says it’s best to use words that are relevant to your content in page URLs, so you don’t want random gobbledygook urls like domain.com/734/834753956756 if you can avoid it. It’s better to use something short and descriptive like domain.com/mens/shirts.

It only takes a few seconds to change this in most content management systems:

If you’re not sure what words or phrases to use, the main keyword you’re targeting is usually a good bet. That’s what we do on the Ahrefs blog 90% of the time.
For example, our target keyword for this post is “on page SEO checklist,” so that’s what the post’s URL is:

Few best practices to keep in mind:
- Avoid repeating words. If your page is about mens shirts and it’s nested in the /mens/ subfolder, you don’t need to repeat the word “mens.”
domain.com/mens/shirts/is better thandomain.com/mens/mens-shirts/ - Avoid dates. If a searcher comes across
domain.com/blog/2020/fashion-tips/in 2024, they’re going to assume it’s out-of-date even if you updated the content yesterday. Sodomain.com/blog/fashion-tips/would be better. - Avoid being too specific. If your URL is
domain.com/blog/20-best-fashion-tips/, it’s going to look weird if you add more tips to your post later on. Using the less specificdomain.com/blog/best-fashion-tips/gives you more future freedom.
Google says that title tags are often the main piece of information searchers use to decide which result to click on. If yours is boring and dull, you’re probably not going to get as many clicks as you could—even if you rank.
It’s the same story for meta descriptions, which Google often uses for the descriptive snippet.

There’s no one-size-fits-all approach for title tags, but the ABC formula is a decent starting point for blog posts:

For your meta description, my best advice is to try to expand on your title tag to give searchers more detail and context.
If you’re struggling or just want a fast solution, give our free AI title tag generator and meta description generator a shot. Tell the tools what your page is about and your desired writing tone and they’ll generate a few options.

Remember to keep them both short and swee, too. If they’re too long, they’ll get cut-off in search. This looks odd and makes them less compelling. You can use a free tool like this one to check for truncation before publishing, or Ahrefs’ Site Audit to find all the issues on your site.
Google recommends using one H1 tag per page. It makes sense to use this for your page title as H1 is the highest level heading there is.
Most content management systems do this automatically, but you can double-check your title is indeed a H1 for free using Ahrefs SEO toolbar. Just click the Content tab:

If the copy you’d expect to be wrapped in a H1 tag isn’t, hit up your developer!
People want what you promised them in your title and meta description, so don’t kick things off with a load of fluff. Get straight to the point and give the reader what they came for in the first sentence.
There’s no one-size-fits-all way to do this. It all depends on what searchers are looking for.
For example, when people search for “toxic backlinks,” they’re overwhelmingly looking for a definition above all else. That’s why I made the very first paragraph of my article the definition:

But when people search for “best snow blower,” they just want a recommendation—so that’s what Wirecutter gives them in the first paragraph:

Sidenote.
I think Wirecutter’s opening paragraph could be even better because there’s no point in that first sentence. If you’re searching for “best snow blower,” you already know the benefits of the product. You just want to know which one is best!
Google’s John Mueller said that the search giant uses headings to help better understand the content on a page. This is why you need to make sure they’re clear and descriptive.
It’s easy to miss the mark here. We’ve even been guilty of it ourselves.
For example, look at these two subheadings from our list of blogging tips:

Do you have any idea what those mean at first glance?
Me neither. And many of the other subheadings in our post were also unclear.
If you suspect the same might be true for your subheadings, try this: ask ChatGPT to rewrite them for clarity.

This is exactly what Sam did for our post, and it made them much clearer in seconds.
For example, “Create a ‘Do 100’ project” became “Start a ‘write 100 blog posts’ project”:

Make sure your subheadings have proper hierarchy, too. It helps Google to understand the structure and makes it easier to skim for readers.

Search intent is the reason behind the search. Unless your page aligns with intent and gives searchers what they’re looking for, your chances of ranking high are slim to none.
To show just how important this is, look at this graph:

This shows our ranking position for the keyword “backlink checker” over time. You can see that in late 2018, we suddenly went from struggling to rank higher than position #5 to consistently ranking #1.
How? By optimizing our page for search intent.
Here’s what the page looked like before:

Here’s what it looks like now:

Minor design tweaks aside, there’s one important difference: there’s now a free backlink checker embedded. Before it just asked visitors to start a trial of our SEO software.
By catering to what searchers actually wanted, we improved the page’s rankings and its estimated search traffic from ~18K to ~215K monthly visits. That’s a 12X improvement!

But how did we know what searchers wanted?
Back then, we had to do a manual analysis of the top search results. While you can still do that, it’s much easier just to click the “Identify intents” button in Keywords Explorer:

This uses the power of AI to analyze the top search results and tell you what searchers are looking for.
Broadly aligning your content with search intent isn’t enough. It should also cover the topic in full to tell searchers everything they want to know. This can help it rank for more keywords and bring more traffic as a result, too.
To find what searchers are looking for, look for common subtopics among top-ranking pages.
There are a few ways you can do this.
Manually check the top-ranking pages
Search for your target keyword in Google, open a few top-ranking pages, and eyeball them for commonalities.
For example, many top results for “best running shoes for flat feet” give a budget option:

Check the keyword rankings of top-ranking pages
Pages often rank for keywords related to the subtopics they cover. If you see many top pages ranking for these keywords, it’s probably an important subtopic to cover.
Here’s how to find these keywords:
- Go to the Competitive Analysis tool in Ahrefs
- Enter your page’s URL in the “This target doesn’t rank for” field. (If you haven’t published your page yet, enter the URL you plan to use.)
- Enter the URLs of a few similar top-ranking pages in the “But these competitors do” fields
- Look for keywords that represent subtopics
For example, the top three results for “best running shoes for flat feet” also rank in the top 10 for many keywords related to men and women’s shoes:

This tells you that the best picks for men and women is an important subtopic to include.
Find subtopics with the help of AI
It’s currently in beta, but the new AI Content Grader in Ahrefs finds “missing” subtopics. It does this by comparing the content of the three top-ranking pages for your target keyword to your content.
To use it, just enter your target keyword and your page’s URL. (If you haven’t published your page yet, enter the URL you plan to use).
For example, here’s one of its suggestions for the keyword “best running shoes for flat feet”:

Information gain is a measure of how unique your content is. Google describes a mechanism for scoring this in a patent granted in June 2022.
Two months later, in August 2022, Google launched the helpful content update, which they described as “part of a broader effort to ensure people see more original, helpful content written by people, for people, in search results.”
Are these two things related? Nobody knows. But what we do know is that Google cares about the originality of your content, and almost certainly has mechanisms in place for identifying it.
This means that covering what other top-ranking pages cover isn’t enough for a well-optimized page. It also needs to bring something new and valuable to the table.
For example, my colleague Chris collected data on how folks deal with low-quality backlinks for his post on removing backlinks:
