On-Page SEO

On-page SEO: a complete guide to page optimisation

On-page SEO: complete guide to page optimisation

On-page SEO covers everything you control on the page itself: titles, tags, content, URL structure, internal links, images, and speed. We break down each element and show how to build a page that Google understands and users actually want to read.

On-page SEO is the optimisation of every element on the page itself: tags, content, URL structure, images, internal links, and loading speed. Unlike off-page SEO (backlinks, external mentions), on-page is entirely within your control. That makes it the most accessible and fastest-to-verify area of optimisation.

The on-page SEO map: eight optimization zones, each one entirely within your control.
On-page SEO doesn't replace links and doesn't compensate for weak content. Its job is to help Google understand the page's topic, query match, and value to users. Without solid on-page foundations, even a well-linked page performs below its potential.

What is on-page SEO and what does it cover

When Google evaluates a page, it analyses dozens of on-page signals. These fall into three groups: technical signals (tags, URL, speed), content signals (text, headings, keywords, E-E-A-T), and UX signals (structure, navigation, user engagement).

~200

Ranking factors

Google uses around 200 ranking factors, most of which have an on-page component

0.1 s

LCP impact

A 0.1 s LCP increase reduces e-commerce conversions by 8% (Google/Deloitte)

53%

Mobile bounce rate

Of users abandon a page that takes longer than 3 seconds to load on mobile

Top 3

Organic CTR

The first three positions capture ~60% of all clicks — on-page affects every one of them

Title and meta description: first impressions in search

The title tag is the weightiest on-page signal. It's the primary field Google uses to determine the page topic, and the first thing a user sees in search results. The meta description is not a direct ranking factor, but it affects CTR: a compelling description increases click-through rates, which indirectly improves rankings.

Title writing rules

  • Length 50–60 characters — Google truncates longer titles at roughly 580 pixels
  • Primary keyword closer to the start — first words carry more weight
  • Unique title on every page — duplicates reduce Google's understanding of site hierarchy
  • Omit the | brand suffix if the domain is already clear from the URL
  • Sentence case, not Title Case — not penalised algorithmically, but more readable
  • Avoid keyword stuffing: "SEO services SEO optimisation SEO London" is a red flag

Meta description writing rules

  • Length 140–160 characters — Google rarely displays more, even on desktop
  • Include the primary keyword — Google bolds matches with the user's query
  • Unique for every page — duplicate descriptions reduce site-wide CTR
  • Specific call to action: "Learn how to…", "Read the guide…", "Compare…"
  • Avoid special characters and quotation marks — they're sometimes stripped on display
Google rewrites the title tag in roughly 58% of cases (Zyppy, 2021). It substitutes alternative text from the H1, link anchor text, or the page content itself. If your title is frequently rewritten, it's a signal of mismatch between the tag and the page's actual content.

Heading structure H1–H6

Headings are the hierarchical map of a page — for Google and for the user. H1 signals the topic; H2 divides it into major sections; H3–H4 add further detail. A well-structured heading tree helps Google understand the semantics, and helps skimmers quickly find what they need.

H1 — one per page

The H1 should be unique on the page and contain the primary keyword. It doesn't need to be word-for-word the same as the title, but the topic must align. Optimal length is under 70 characters.

H2 — article sections

H2 divides the page into thematic blocks. Include semantically related queries and synonyms in H2s — they reinforce the page's topical relevance without duplicating the H1.

H3–H6 — detail layers

H3 and below add detail to H2 subsections. Don't skip levels (H2 → H4) — breaking the hierarchy makes it harder for crawlers to parse the content structure and disrupts page navigation.

Common mistake: the H1 is visually prominent in the design but is actually a styled div or span in the HTML. Google reads HTML tags, not visual font size. Verify the actual markup via "View page source" or browser developer tools.

Content and keywords

Google has moved from "keyword density" to "how well does this page solve the user's task?" This is the fundamental shift in on-page SEO. Keywords still matter — but as topic signals, not as density-manipulation mechanics.

Content quality by Google's standards

With the Quality Raters' Guidelines and the Helpful Content Update series, Google has formalised content quality standards. Evaluators assess pages against E-E-A-T criteria: Experience, Expertise, Authoritativeness, and Trustworthiness.

CriterionWhat it means in practiceHow to implement
ExperienceThe author has first-hand experience with the topicReal-world examples, case studies, screenshots of actual data
ExpertiseDepth and accuracy of informationSpecific figures, citations from primary sources, no generic platitudes
AuthoritativenessAuthor and site authority in the nicheAuthor bio, external mentions, links from other authoritative sources
TrustworthinessAccuracy and transparencyPublication date, cited sources, named author, up-to-date data

Keyword usage

Correct keyword usage in 2026 means semantic coverage of the topic, not mechanical density. Include the primary query in the H1, first paragraph, at least one H2, and a few times throughout the body. For long-form pages, add synonyms and LSI terms to broaden the semantic field.

  • Primary query: H1, first paragraph, one or two H2s, URL, title, image alt text
  • Synonyms and variations: distributed naturally throughout, without concentration
  • Related terms: broaden topical coverage (LSI, NLP-adjacent terms)
  • Don't repeat the same query in every subheading — it reads artificially and hurts readability
  • Optimal keyword density: ~1–2% for the primary query (no hard rule exists)
  • Check for cannibalization — is there another page competing for the same query?
"Helpful content" by Google's definition is written for people, not for search engines. Ask yourself: if this page didn't exist, would real users lose something valuable? If not, the page likely won't pass the Helpful Content filter.

URL structure

A URL is a one-shot signal: Google reads it once on first crawl and uses it to understand the topic and hierarchy. A well-crafted URL reflects site structure and includes the target keyword.

Human-readable words

Use words, not IDs: /blog/onpage-seo beats /p=4821. Words in the URL signal the topic and help users understand where a link will take them.

Hyphens as separators

Separate words with hyphens (-), not underscores (_). Google treats hyphens as word separators; underscores join words into a single string.

Keep it short

Shorter URLs are preferred by both Google and users. Remove stop words (prepositions, conjunctions) and keep only meaningful terms.

Logical hierarchy

The URL should reflect structure: /blog/category/article-slug. More than three levels of nesting signals navigation complexity. Avoid /page/subpage/subsubpage/article.

Never change a URL without a 301 redirect. Changing a page's address without redirecting loses all link equity and historical rankings. If a URL must change, set up a 301 redirect from the old address to the new one, and update all internal links pointing to it.

Internal links are one of the most underused on-page tools. They distribute PageRank between pages, help Google discover and crawl content, and create topical clusters that strengthen the authority of a section.

Anchor text for internal links

The anchor text of an internal link is a direct signal to Google about the target page's topic. Unlike external links, you control 100% of the anchors on your own site. Use descriptive anchors containing keywords from the target page.

Anchor typeExampleRecommendation
Exact match"title tag optimisation"Use in moderation — 20–30% of links
Partial match"how to write an effective title"Optimal — natural and informative
Branded"learn more at seohead.tech"Acceptable, but carries no semantic signal
Generic"here", "click", "link"Avoid — provides no topic information
  • Link to related pages from topically close articles — strengthens cluster structure
  • Key service and category pages should receive more internal links than supporting content
  • Add new pages to the internal link graph immediately from existing content
  • 3–10 internal links per page is a reasonable guide for informational content
  • Don't add links just to inflate the count — every link should serve the user
  • Audit for broken internal links regularly: they waste crawl budget and create poor UX

Image optimisation

Images offer a double benefit: properly optimised, they speed up page load (improving Core Web Vitals) and attract traffic from Google Images. Unoptimised, they slow the site and increase server load.

Alt text

Alt is a description of the image for Google and for visually impaired users. Describe the content specifically and include the target keyword where appropriate. Don't fill alt mechanically with a single keyword repeated across all images.

Format and compression

WebP is the preferred format: 25–35% lighter than JPEG at comparable quality. AVIF is even lighter but browser support is incomplete. Compress images before uploading without visible quality loss.

File name

The file name is another topic signal: onpage-seo-guide.webp is clearer than IMG_3847.webp. Use hyphens and English words that describe the content.

Dimensions and lazy loading

Always specify width and height attributes — this prevents Layout Shift (CLS). Add loading="lazy" to images below the fold to avoid slowing the initial page load.

Page speed and Core Web Vitals

Since 2021, Core Web Vitals have been official Google ranking signals under Page Experience. They measure three dimensions of user experience: loading speed of visible content (LCP), interactivity (INP), and visual stability (CLS).

MetricWhat it measuresGood thresholdPoor threshold
LCP (Largest Contentful Paint)Load time of the largest element in the viewport≤ 2.5 s> 4.0 s
INP (Interaction to Next Paint)Response delay to user interaction≤ 200 ms> 500 ms
CLS (Cumulative Layout Shift)Total visual element movement during load≤ 0.1> 0.25

Key speed optimisation areas

  • LCP: optimise the hero image (WebP, preload), use a CDN, eliminate render-blocking resources
  • INP: reduce JavaScript size, use code splitting, defer non-critical scripts
  • CLS: set explicit dimensions on images and ad slots, avoid injecting content above the fold dynamically
  • TTFB: optimise server response time, use caching, upgrade to HTTP/2 or HTTP/3
  • Use PageSpeed Insights and Chrome DevTools to diagnose specific issues
  • Check speed regularly — every theme or plugin update can degrade metrics
Core Web Vitals are measured on real user data (CrUX), not lab tests. PageSpeed Insights shows both. For SEO, the CrUX Field Data matters — that's what Google uses in the ranking algorithm.

Structured data on the page

Schema.org structured markup lets Google not just index a page, but understand its type: article, recipe, product, FAQ, review. This unlocks Rich Results — enhanced snippets that increase CTR and make your listing stand out in search.

Most useful markup types

Article / BlogPosting

For blogs and news. Provides Google with author, publication date, and topic. Can activate the Top Stories carousel for fresh content.

FAQPage

Expands questions and answers directly in search results. Significantly increases the space occupied in the SERP, boosting visibility.

Product

Shows price, availability, and rating in the snippet. One of the highest-CTR Rich Result types for e-commerce.

Review / AggregateRating

Star ratings in search results. Significantly increase CTR: studies show 15–30% improvement in click-through rates.

Structured data is not a direct ranking factor — it doesn't lift positions on its own. Its value is in improving CTR through Rich Results and helping Google better understand the page. Some studies show indirect ranking benefits through improved engagement signals.

On-page audit: checklist

Before optimising a page, you need to understand its current state. A systematic on-page audit reveals specific issues and helps prioritise what to fix first.

Technical elements

  1. Check indexability: the page is open to crawling (robots.txt, noindex) and accessible at the canonical URL
  2. Verify the canonical tag is correct: no conflicting canonical, no duplicates with query parameters
  3. Check the title — unique, 50–60 characters, contains the primary keyword
  4. Check the meta description — unique, 140–160 characters, no duplicates
  5. Check hreflang if the site is multilingual
  6. Ensure the URL is clean: no extra parameters, no uppercase letters, hyphens instead of spaces

Content and structure

  1. One H1 per page, containing the primary keyword, aligned with the title topic
  2. Heading hierarchy is logical: H2 → H3, no skipped levels
  3. Content covers the topic fully: answers all related user questions
  4. No keyword stuffing, no hidden text, no content duplicated from other pages
  5. Internal links placed with descriptive anchors
  6. All images have alt text and are optimised for size and format

Performance and UX

  1. PageSpeed Insights: LCP ≤ 2.5 s, INP ≤ 200 ms, CLS ≤ 0.1
  2. Page is mobile-friendly (Google Mobile-Friendly Test)
  3. Structured markup is correctly implemented and validated via Rich Results Test
  4. No broken links (404s), and outbound links point to live, relevant resources
  5. Page loads over HTTPS with no mixed content warnings
Prioritise your audit by traffic. Start with the top 20 pages by organic traffic in Google Search Console — those will deliver the highest return on optimisation time. Pages with no organic traffic should be addressed last, or reconsidered for whether they should exist at all.

Frequently asked questions about on-page SEO

One page should focus on one primary topic — one keyword or a tight cluster of closely related queries. In practice: 1 primary query + 3–5 semantically related variations. Trying to rank for 10 unrelated topics on a single page is ineffective; create separate pages instead.
It depends on content type. News articles go stale quickly. Informational guides ("how to do X") should be reviewed every 6–12 months: update statistics, add current examples, remove outdated advice. Google doesn't rank pages higher just because they were edited — the content needs to genuinely improve.
Not directly. Google sets no minimum word count for ranking. What matters is topical completeness, not word count itself. A focused 500-word page that fully answers the query can outrank a 3,000-word piece padded with filler. Let the user's task determine the appropriate format and length.
The title tag is more important for Google's ranking signal — it's the primary and most heavily weighted topic signal for the page. The H1 matters more for the user once they've already landed on the page. They should align on topic but can differ in phrasing. The title is often shorter and more SEO-tuned; the H1 can be longer and more conversational.
It depends on the type of duplication. Technical duplicates (parameterised URLs, www/non-www, http/https versions) are better handled with canonical tags, not noindex. Fully identical pages should be consolidated with a 301 redirect or noindexed. Thin content (too short or low-value) should be improved or removed rather than hidden from indexing.