On-page SEO gets dismissed as basic by people who have moved on to chasing algorithmic edge cases. That is a mistake. In my experience, the majority of ranking problems I diagnose on client sites come back to on-page fundamentals that were never properly implemented: unclear title tags, duplicate meta descriptions, heading structures that make no logical sense, and content that does not actually address what the target keyword searcher needs. Fixing those things reliably moves rankings in a way that chasing the latest algorithm theory rarely does.

Title Tags

Your title tag is the most direct signal you give search engines about what a page is about. It is also the first thing a searcher reads in a result. A good title tag puts the primary keyword near the front, accurately describes the page content, and fits within roughly 55-60 characters so it does not get truncated in search results. It should also differentiate the page — if your title looks identical to the three results above yours, there is no reason for someone to click yours specifically.

  • Lead with the primary keyword where it reads naturally, not as an obvious insertion
  • Keep it under 60 characters to avoid truncation on most screens
  • Every page needs a unique title — duplicate titles are a crawl quality liability
  • Avoid keyword stuffing — one clear focus term is more effective than three competing ones

I’ll add a nuance that gets missed: the title tag that ranks best is not always the title tag that converts best in the SERP. I’ll sometimes see a page ranking in position three with a technically correct, keyword-front-loaded title that gets a fraction of the clicks a more specific, benefit-oriented title two positions lower would get. Title tag work is both a ranking exercise and a click-through-rate exercise, and treating it as only the first one leaves traffic on the table even after the ranking problem is solved.

Heading Structure

The H1 should clearly state what the page is about and appear exactly once. Subsequent headings (H2, H3) should organize the content logically and reflect the subtopics and questions a reader would expect to find addressed. This is not only a user experience issue — search engines use heading structure to understand page organization and the relationship between content sections. A page with six H1 tags and no H2s reads as poorly structured to both crawlers and humans. It is one of the first things I look at in any audit, usually within the first sixty seconds of opening the page source.

The most common heading mistake I see isn’t multiple H1s — most CMS platforms prevent that by default now. It’s headings chosen for visual size rather than logical hierarchy. A designer wants a certain phrase to look bigger, so it gets wrapped in an H2 even though it isn’t actually a section break, and a genuine subsection two paragraphs later gets left as bold text because nothing looked visually right there. CSS should control size. Headings should control structure. Conflating the two is how you end up with a page that looks fine and reads as chaos to anything parsing the HTML.

Content That Matches Search Intent

This is where most on-page optimization fails. You can have a perfect title tag and heading structure, but if the content itself does not match what searchers are actually looking for when they type that query, the page will not rank. I check intent by looking at the top five results for any target keyword before writing or optimizing a page. That tells me whether the SERP wants a how-to guide, a comparison, a short definition, or a detailed technical reference.

  • Match the format of your content to the dominant format in the top results
  • Cover the subtopics and questions that appear in related searches and People Also Ask
  • Answer the primary question directly and early rather than burying it
  • Use specific examples, data points, and firsthand detail where relevant — thin generalities do not rank in competitive SERPs

A pattern I see constantly: a business rewrites a page to be ‘more comprehensive’ by adding length without adding new information. Word count is not the signal people think it is. If the top five results for a query average 800 words and answer the question cleanly, publishing 2,400 words that restate the same three points five different ways does not out-rank them. It usually performs worse, because the actual answer gets diluted and takes longer for a reader — or a crawler building a summary — to locate.

Image Optimization and Page Performance

Images without descriptive alt text and images that are not compressed are two of the most common on-page issues I find in audits. Alt text serves an accessibility function but also provides additional topical context to crawlers. Uncompressed images inflate page load times, which is both a ranking signal and a user experience problem. Every image on a page should have a meaningful alt attribute and should be served in a modern format like WebP at an appropriate size for how it is displayed on screen.

I still find hero images on client sites that are 4-6MB straight out of a camera or stock library, resized down to 600 pixels wide in the browser but never actually compressed or resized on the server. That single file can add a full second or more to page load on a mobile connection, and it is a five-minute fix once someone notices it. It is worth an occasional pass through your site’s largest image files even if nothing else about the page has changed.

Schema Markup as Part of On-Page SEO

Structured data is on-page work. Adding the right schema to each page type — Article, FAQ, Service, LocalBusiness, Person — helps search engines interpret content more precisely and opens up eligibility for rich results. This is an area I have specialized in for over a decade, and it consistently provides lift in click-through rates even when it does not directly affect ranking position. If you are not implementing schema, you are leaving click-through rate gains on the table regardless of where you rank.

The mistake I see most with schema on otherwise solid on-page pages is markup that describes something slightly different from what’s actually on the page — a FAQ schema referencing questions that were removed from the visible content months ago, or Review schema pulling from a testimonial that no longer appears anywhere on the page. That mismatch between structured data and visible content is a trust problem for search engines, not just a technical inconsistency, and it’s worth auditing schema every time you touch a page’s content, not just when you first add it.

Content Depth Without Duplication

A related mistake shows up when a business has several pages that all target closely related keywords — three service pages, say, that each cover a variant of the same core offering with 80 percent overlapping content. Individually each page looks fine. Collectively, search engines have a hard time deciding which one deserves to rank for the shared terms, and the result is often that none of them rank as well as a single, clearly differentiated page would. On-page SEO isn’t just about optimizing one page in isolation — it’s about making sure every page on the site has a distinct enough job that it isn’t competing with its own siblings.

I’ll walk through a site’s full page inventory before touching an individual page’s on-page elements, specifically looking for this kind of internal overlap. It’s a slower first step, but optimizing a page’s title tag and headings does very little if the real problem is that two other pages on the same domain are quietly cannibalizing its rankings.

What a Realistic Timeline Looks Like

On-page changes are some of the fastest SEO work to implement and some of the slowest to show results, which surprises people. Rewriting a title tag takes minutes. Seeing whether it moved the needle takes weeks, sometimes longer for a competitive term, because search engines need to recrawl the page, reassess it against the query, and let ranking systems stabilize around the change. I tell clients not to judge an on-page fix by what happens in the first few days — and not to panic and revert a change because rankings dipped slightly before they moved, which sometimes happens as a page gets re-evaluated.

What I do check quickly is whether the change got indexed and crawled at all. If a title tag change hasn’t been picked up after a couple of weeks, that’s a crawl budget or indexation issue worth investigating on its own, separate from whether the new title is actually better.

If you want a thorough on-page audit with specific recommendations for your site, that is a core part of how I structure SEO consulting engagements. It is also worth reviewing how on-page work connects with your internal linking structure, since the two reinforce each other in how authority flows through your site.