What is a complete free on-page SEO checklist for 2026?

A complete on-page SEO checklist for 2026 covers 28 checks across 9 groups: URL and title, meta description, headings, body content, images, internal links, schema, speed and mobile, and indexing. Fix every one of them on a page and it ranks on merit, with nothing obvious left for a competitor to out-execute. Once you know the order, one page takes about 20 minutes end to end. Start by building a clean title and meta description with my free Meta Tag Generator.

Every week I get a message that reads the same way: pages published, nothing ranking, no clear reason why. Nine times out of ten the problem has nothing to do with backlinks or budget. It is on-page fundamentals nobody ever checked off before hitting publish. So here is the exact checklist I run every client page against before I touch links or a content refresh: 28 checks across 9 groups, in the order I actually work through them. You can finish one page in about 20 minutes once you know the sequence, and a full site in an afternoon. On one Pune dental clinic, fixing this exact list of on-page issues (title tags, schema, internal links, nothing exotic) took an organic keyword from position #59 to a top-5 spot in two months, with no new backlinks involved. If you would rather have a page scanned automatically first, my free website SEO checker runs most of this checklist for you and hands back a report you can act on immediately. No signup, no upsell.

Group 1: URL and title (checks 1 to 3)

Your URL and title tag are the first things Google reads on a page and the first thing a searcher sees in the results. Get these three right and every page starts from a stronger baseline before a single word of content gets evaluated.

A pass on this group looks concrete, not abstract: Baner Physio Care runs a sports injury page at a URL such as /sports-injury-physiotherapy-baner/, with the title tag reading "Sports Injury Physiotherapy in Baner, Pune | Baner Physio Care," 54 characters, keyword first, unique across the whole site. Nobody has to guess what the page covers from the URL or the blue link alone, and that clarity is doing ranking work before Google has read a single sentence of the actual content.

  • 1. Keyword-first URL slug. Done when the URL is short, lowercase, hyphenated and keyword-first, with no dates or query strings, like /on-page-seo-checklist/ instead of /2026/07/post?id=482. Verify by looking at the address bar, or run the page through the free website SEO checker, which flags parameter-heavy URLs. It matters because the URL is what a searcher sees under your blue link, and a clean one earns a trust click before ranking is even in question.
  • 2. Title tag under 60 characters. Done when the primary keyword sits near the front, the tag stays under 60 characters so it does not get cut off in the results, and every page carries exactly one, unique across the whole site. Verify with view-source on the <title> tag, or build it properly with the free Meta Tag Generator, which counts characters as you type. It matters because Google still treats your title as the strongest single relevance signal on the page, and a truncated or duplicate one caps click-through no matter how well you rank.
  • 3. No duplicate titles sitewide. Done when no two pages on your site share the same title tag, especially similar service or location pages. Verify in Search Console under Pages, or crawl your sitemap through the SEO checker page by page and scan for repeats. It matters because duplicate titles tell Google two pages are interchangeable, which splits ranking signals between them instead of letting either one win.

Verify this group by opening view-source on the live page and reading the <title> tag by hand, or run the URL through the free website SEO checker, which flags duplicate and oversized titles across the whole site in one pass. The mistake I see most often here is a CMS default left untouched, a title still reading "Home" or "Our Services" on a page that was clearly built to target one specific service and one specific locality.

Group 2: meta description (checks 4 and 5)

The meta description does not move rankings directly, but it decides whether someone clicks your result once you are already on the page. Two checks, both worth getting right every single time.

Picture what a pass actually looks like. A real estate broker in Kharadi writes a description for a 2BHK rental listings page that reads: "Verified 2BHK flats for rent in Kharadi from Rs 18,000/month. No brokerage on 40+ listings, updated weekly." It stays under 155 characters, names a real number instead of a vague claim, and matches exactly what the page delivers, so a click lands on what the searcher expected instead of bouncing straight back to the results.

  • 4. Meta description under 155 characters. Done when it stays under 155 characters, states a concrete benefit or number, and includes the keyword without forcing it. Verify with view-source, or write it inside the free Meta Tag Generator so you see a live character count and a search-result preview as you type. It matters because Google rewrites descriptions often, but a well-written one still wins the click when it survives, and click-through is a signal Google watches closely even where it is not a direct ranking factor.
  • 5. Description matches the page. Done when the description accurately reflects what is actually on the page, with no bait and no promise the content does not keep. Verify by reading it back after finishing the page, not before, since intros change while you write. It matters because Google increasingly rewrites descriptions that do not match on-page content, and a mismatched one produces clicks that bounce straight back to the results page.

Verify by viewing source on the live page, or write the description inside the free Meta Tag Generator, which shows a live character count and a search-result preview as you type. The mistake I see most in this group is a description that oversells, promising "lowest prices in Pune" on a page that covers exactly one locality, which earns a click that leaves within seconds once the page does not deliver on the promise.

Group 3: headings (checks 6 to 8)

Google reads a page top to bottom and expects a predictable shape: one H1 that mirrors the query, H2s for sub-topics, H3s inside them. A page that skips this structure reads as disorganised to both a crawler and an AI Overview trying to summarise it.

On a page that passes, the structure is obvious at a glance. Kothrud Yoga Studio's prenatal yoga page carries a single H1, "Prenatal Yoga Classes in Kothrud, Pune," followed by H2s for "Batch timings," "What to expect in your first class" and "Instructor certification," with H3s underneath only where a sub-point genuinely needs one. A visitor, or an AI Overview summarising the page, can skim that outline in five seconds and know exactly what the page covers before reading a single paragraph of body text.

  • 6. Single H1 per page. Done when exactly one H1 contains or rephrases the primary keyword, never repeated and never swapped for a decorative logo. Verify with view-source searching for <h1, or run the free SEO checker, which flags pages with zero or multiple H1 tags. It matters because Google still leans on the H1 to confirm what a page is about, and more than one dilutes that signal while zero leaves Google guessing.
  • 7. Logical H2/H3 hierarchy. Done when H2s divide the page into genuine sub-topics, H3s sit inside the H2 they support, and no level gets skipped from H1 straight to H4. Verify in your CMS outline view, or scan the heading list the SEO checker returns for the page. It matters because a clean hierarchy is how Google and an AI Overview parse the structure of your answer, and a flat wall of H2s with nothing underneath reads as unorganised to both.
  • 8. Primary keyword in a heading. Done when your main keyword, or a natural variation, appears in the H1 and at least one H2, without stuffing it into every heading on the page. Verify by highlighting your headings and checking them against the target keyword from your keyword research. It matters because headings carry more topical weight than body text, so this is one of the cheapest relevance signals you can set once and forget.

Check this with your CMS outline view, which usually renders headings as a nested list, or scan the heading list the free SEO checker returns for the page. The mistake I see most in this group is two H1 tags on the same page, often because a page builder inserts one automatically in the header block and the content editor adds a second one inside the body without realising the first one already exists.

Group 4: body content and intent (checks 9 to 12)

Content is where most small business pages fall apart, and rarely because the writing is bad. The structure and depth are wrong for what the searcher actually wants. This group fixes that.

Here is what passing this group looks like in practice. A dermatology clinic in Viman Nagar runs an acne treatment page at around 1,400 words, opening with a direct 55-word answer covering what the treatment involves, the typical cost and how many sessions it takes, before the page moves into a longer explanation and FAQs further down. That is the same shape of fix that took one Pune dental clinic from position #59 to a top-5 ranking in two months: nothing exotic, just enough real depth placed in the right order so the page actually answers the query it targets.

  • 9. Word count matched to intent. Done when there are enough words to answer the query properly and nothing padded in for the sake of length, roughly 600 to 900 for a service page and 1,200 to 2,500 or more for a guide. Verify with the word count in your CMS, or check what the top 3 ranking pages for your query run to and match or reasonably exceed their depth. It matters because thin content under 400 words on a competitive query rarely holds a ranking even when everything else on this list is done right.
  • 10. Direct answer in the opening paragraph. Done when the first paragraph answers the core query in roughly 40 to 70 words before you add context or backstory. Verify by reading only your first paragraph out loud and asking honestly whether it alone answers what someone typed in. It matters because this is the exact block Google AI Overviews and featured snippets pull from, and it is also the block most likely to get a page cited inside a ChatGPT or Perplexity answer.
  • 11. Readability at grade 8 to 9. Done when sentences and paragraphs stay short (2 to 4 lines), bullets appear where a list genuinely helps, and jargon gets explained the first time it shows up. Verify by pasting a paragraph into a free readability checker, or simply reading it aloud and noticing where you run out of breath. It matters because a page that reads like a legal document loses readers before it ever gets a chance to rank, and that reader behaviour feeds back into how Google treats the page over time.
  • 12. Visible freshness signal. Done when a published date is visible on the page, and, once you update it, an updated date that reflects a real content change rather than a cosmetic timestamp bump. Verify by checking the post-meta line on the live page against the dateModified value in the page's Article schema. It matters because Google and AI answer engines both weight recency for anything time-sensitive, and a stale, uncorrected date quietly signals that a page has been abandoned.

Verify word count against the top 3 ranking pages for your exact query rather than a fixed number in isolation, since a contact page and a pillar guide should never be held to the same length. The mistake I see most in this group is padding, adding several hundred extra words of generic filler to hit a round number instead of adding a genuinely useful section, which readers and Google both tend to recognise within the first two sentences.

Group 5: images and alt text (checks 13 to 15)

Images are usually the heaviest thing on a page and the most neglected from an SEO standpoint. Three checks fix most of what goes wrong.

What passing looks like: an interior design studio in Kalyani Nagar publishes a modular kitchen project gallery where every photo is a compressed WebP file under 180 KB, named something like modular-kitchen-kalyani-nagar-oak-finish.webp instead of a camera default, and carries alt text describing the actual finish and layout shown rather than repeating the keyword across every single image.

  • 13. Descriptive alt text on every meaningful image. Done when alt text describes what the image actually shows, includes the keyword only where it is honestly relevant, and is left empty rather than missing for purely decorative images. Verify with view-source searching for alt=, or run the SEO checker, which lists every image on the page and flags the ones missing alt text entirely. It matters because alt text is what a screen reader speaks, what Google Images indexes on, and a small but genuine relevance signal on the page itself. My guide to what alt attributes actually do covers the difference between good alt text and stuffed alt text if you want the longer version.
  • 14. Compressed images in a modern format. Done when images use WebP or AVIF, stay under 200 KB for a hero image, and are sized to the dimensions they actually display at rather than a full-resolution camera file. Verify by checking the file size before upload, or run PageSpeed Insights, which flags any image costing you Largest Contentful Paint. It matters because I have watched a single 4 MB PNG single-handedly push mobile LCP past 4 seconds, which caps Core Web Vitals no matter how good the copy is.
  • 15. Descriptive file names. Done when the filename reads on-page-seo-checklist.webp rather than IMG_2947.png, with the keyword included where it genuinely describes the image. Verify by checking the filename in your media library before upload, since most CMS platforms will not let you rename cleanly after the fact. It matters because it is a free, permanent relevance signal that costs nothing extra to get right the first time. My image SEO optimization guide walks through compression, formats and alt text together in more depth.

The fastest way to check this group at scale is the free SEO checker, which lists every image on a page and flags the ones missing alt text or running oversized. Otherwise confirm file size before upload, since most CMS platforms will not let you recompress an image cleanly after the fact. The mistake I see most in this group is a hero image uploaded straight from a phone camera at 4 or 5 MB, which on its own can push mobile load time past what Core Web Vitals will pass.

Internal links are the most underused lever on any small site. They pass authority, tell Google which pages you consider important, and hand a reader a natural next step.

A pass here is easy to spot once you know what to look for. A chartered accountant's practice in Shivaji Nagar links its GST filing service page to the pricing page, the FAQ page and a related blog post on GST deadlines, each with anchor text like "GST filing deadlines for 2026" instead of "click here," and reachable within two clicks from the homepage rather than buried four levels deep inside a services dropdown.

  • 16. 3 to 8 contextual internal links per page. Done when the page links out to 3 to 8 other relevant pages, placed naturally inside the content rather than dumped in a list at the bottom only. Verify with view-source, counting <a href> tags pointing to your own domain, or run the SEO checker, which maps internal links per page. It matters because internal links pass authority to the pages you want to rank and give Google a path to actually find them. My internal linking strategy guide covers how to decide which pages deserve the most links pointing in.
  • 17. Descriptive anchor text. Done when anchor text describes the destination page, such as "free website SEO checker", instead of a vague "click here" or "read more". Verify by scanning the page and reading only the linked phrases out of context, since each one should make sense on its own. It matters because Google uses anchor text as a relevance signal for the page being linked to, so a vague anchor wastes a free ranking opportunity every time.
  • 18. No orphan pages. Done when every important page is reachable within 3 clicks of your homepage through navigation, footer or contextual links from other content. Verify by picking any service or blog page and counting how many other pages link to it; zero means it is orphaned. It matters because a page with no internal links pointing to it is nearly invisible to Google's crawler and gets almost none of your site's authority, regardless of how good the content is.

Verify by counting outbound links to your own domain in view-source, or run the SEO checker, which maps internal links per page and flags anything sitting close to zero. The mistake I see most in this group is a new service page published and linked from nowhere except the main navigation menu, which technically makes it reachable but gives it almost none of the contextual link authority that actually helps a page rank.

Group 7: schema (checks 19 to 21)

This is where on-page SEO quietly overlaps with AI search visibility. Schema tells Google, and increasingly ChatGPT and Perplexity, exactly what your entities are.

This is what a pass looks like in the field. A multi-speciality clinic in Aundh carries LocalBusiness schema with the correct address, phone number and opening hours, Person schema for each listed doctor with their actual qualifications, and BreadcrumbList schema matching the visible navigation, all of it validated with zero warnings instead of copied from a template and left half filled.

  • 19. Core schema types present. Done when Article, LocalBusiness, Person and BreadcrumbList schema are added as relevant to the page, each with complete and accurate fields rather than a half-filled template. Verify with view-source searching for application/ld+json, or paste the URL into Google's Rich Results Test. It matters because schema is quietly essential for showing up in AI Overviews and AI-generated answers, not just blue links. My schema markup guide covers each type in plain English if JSON-LD looks unfamiliar.
  • 20. FAQPage schema matches the visible FAQ. Done when every question and answer inside your FAQPage schema appears word for word in a visible FAQ section on the page, with nothing existing only in the markup. Verify by pasting your JSON-LD into a validator and comparing it line by line against the visible text. It matters because Google has taken action against sites where FAQ schema did not match visible content, so a mismatch is a real risk and not just wasted effort.
  • 21. Schema validated before publishing. Done when every JSON-LD block on the page parses without errors and passes Google's Rich Results Test with zero warnings. Verify by running the URL through the free website SEO checker, which parses every JSON-LD block on the page and flags missing required fields. It matters because a single stray comma or missing closing brace can silently invalidate an entire schema block, and you would never notice from looking at the rendered page.

Verify with view-source searching for application/ld+json, or paste the URL into Google's Rich Results Test, which parses each block and lists specific errors and warnings by name. The mistake I see most in this group is FAQPage schema still listing questions that no longer appear anywhere in the visible page, usually left behind after a content edit, which is exactly the kind of mismatch Google has taken action against sites for in the past.

Group 8: speed and mobile (checks 22 to 25)

This is where on-page becomes technical, and it is the group most owners skip. In 2026 you cannot separate the two. HTTPS, mobile usability and Core Web Vitals are ranking factors, and every one of them is measured page by page.

A pass on this group is felt more than read. A restaurant in Koregaon Park has its menu page loading in under 2 seconds on a mid-range Android phone over 4G, a WhatsApp reservation button sized comfortably above the 48-pixel minimum, and no layout shift while the food photos load in. On Indian mobile networks specifically, that is often the difference between someone booking a table and someone bouncing back to the search results before the page has even finished loading.

  • 22. HTTPS with a valid certificate. Done when every page loads over HTTPS with a valid, non-expired certificate, and both the http:// and www variants redirect to a single canonical origin. Verify by checking for the padlock in the address bar, and try loading the http:// version manually to confirm the redirect. It matters because browsers label non-HTTPS sites "Not secure", which scares visitors off before they read a word, and Google has treated HTTPS as a baseline ranking signal for years.
  • 23. Core Web Vitals passing on mobile. Done when LCP sits under 2.5 seconds, INP under 200 milliseconds, and CLS under 0.1, measured on the actual URL and not just the homepage. Verify with PageSpeed Insights on the specific page, reading the mobile tab and the field data section when it is available. It matters because these are direct ranking signals, and on Indian mobile networks the gap between a 2-second load and a 6-second one is often the gap between a lead and a lost visitor.
  • 24. Mobile-friendly layout. Done when text is readable without zooming, buttons and links measure at least 48 by 48 pixels, and no page causes horizontal scroll on any screen width. Verify by opening the actual page on your own phone and trying to complete the main action, tapping a button or filling a form, with one thumb. It matters because Google ranks your site off the mobile version specifically, so a desktop-only check tells you almost nothing about how Google actually sees the page.
  • 25. Viewport meta tag present. Done when <meta name="viewport" content="width=device-width, initial-scale=1.0"> sits in the <head> of every page. Verify with view-source searching for "viewport". It matters because without it, mobile browsers render a shrunk desktop layout instead of a responsive one, which fails the mobile-friendly check before anything else on the page gets evaluated.

Verify with PageSpeed Insights on the specific page rather than the homepage, reading the mobile tab and the field data section when Google has enough real-world traffic on that URL to show it. The mistake I see most in this group is testing only on a desktop browser during development and never opening the live page on an actual phone, which misses tap targets, layout shift and load time problems a desktop screen simply does not reproduce.

Group 9: indexing (checks 26 to 28)

The last group is what decides whether Google ever gets the chance to rank the page at all. Every other check on this list is wasted effort if this group fails.

A pass here is unglamorous but absolute. A law firm in Camp has every service page listed in sitemap.xml, that sitemap submitted and processing without errors in Search Console, and URL Inspection returning "URL is on Google" for every page meant to rank, with no leftover noindex tag left from when the site sat on a staging server during a redesign.

  • 26. Meta robots allows indexing. Done when <meta name="robots" content="index, follow"> sits on every page you want ranked, with no accidental noindex left over from a staging push. Verify with view-source searching for "robots", or check the Indexing report in Search Console for pages marked "Excluded by noindex tag". It matters because I have seen entire sites stuck on noindex for weeks after a staging push, quietly invisible to Google the whole time nobody thought to check.
  • 27. Self-referencing canonical tag. Done when every page carries a canonical tag pointing to its own clean URL, or to the one preferred version where duplicate variants exist, such as print pages, tracking parameters or pagination. Verify with view-source checking the <link rel="canonical"> tag, or use URL Inspection in Search Console to see which URL Google actually considers canonical. It matters because without it, Google may pick the wrong version of a duplicate page to rank, or split authority between versions that should count as one. My guide to canonical URLs covers the common ways this goes wrong.
  • 28. Submitted, crawled and indexed. Done when the page is listed in your sitemap.xml, that sitemap is submitted in Search Console, and URL Inspection shows "URL is on Google" rather than "Crawled, currently not indexed". Verify by pasting the exact URL into Search Console's URL Inspection tool. It matters because none of the other 27 checks count for anything if Google never actually indexes the page. Understanding what crawling in SEO actually means helps explain why a technically perfect page can still sit unindexed for weeks.

Verify by pasting the exact URL into Search Console's URL Inspection tool, or checking the Indexing report for the count of pages "Excluded by noindex tag." The mistake I see most in this group, and the most expensive one on this entire list, is a sitewide noindex tag left on from staging, which quietly keeps an entire freshly launched site invisible to Google for weeks before anyone thinks to check.

You do not need every check perfect on day one. You need every check present. A page with all 28 boxes ticked at a B grade will out-rank a page with 12 perfect checks and 16 missing ones, every single time.

Prioritising the 28 items when you have one hour

Most site owners do not have 20 minutes free for every page today, especially with 15 or 20 pages all needing work at once. If you only have one hour total, spend the first block of it on Group 9 alone, meta robots, canonical tags and indexing, across every page on the list, before touching a single title tag. A perfectly optimised page Google has not indexed is invisible in the results, so fixing indexing across ten pages beats perfecting one page nobody will ever see.

After indexing, spend whatever time is left on Group 1 and Group 4 together, title tags and the opening paragraph of body content, working down the list in order of traffic or lead value rather than alphabetically or by publish date. These two groups carry the most direct weight on whether a page ranks and whether it earns a click once it does, and both are quick to fix once the SEO checker report is already open in front of you, usually five minutes a page.

Everything else on this list, schema, image compression, internal link counts, is real work and it does compound over time, but it rewards a page that is already indexed and already carries a working title. Fixing checks 19 through 25 on a page still sitting on noindex is effort spent on a page that nobody, human visitor or Google crawler, is going to see anyway.

How to run this checklist on one page in 20 minutes

Working through 28 checks by reading a list is slow. Working through them in a fixed order, with the right tool open for each group, is not. This is the exact sequence I use on a client page, start to finish, in about 20 minutes.

Step 1: scan the page with the free SEO checker (3 minutes)

Enter the URL into my free website SEO checker and read the colour-coded report before changing anything by hand. It checks title, meta, headings, schema, alt text, links, canonical, viewport and HTTPS in one pass, which turns 28 separate manual checks into one punch list of what is actually broken.

Run it on a page like ShineWorks Auto Detailing's ceramic coating service page in Baner and it typically flags all of this on the first pass: a title tag still pulling the CMS default of "Untitled Service," a missing meta description, and two product photos carrying no alt text at all. None of that is exotic, but this three-minute scan tells you exactly where the rest of the 20 minutes should go instead of guessing.

Step 2: fix the title, meta description and URL (4 minutes)

Work through Groups 1 and 2 using the report from step 1. Rebuild the title and description with the free Meta Tag Generator so you can see the character count and search-result preview as you edit. If you are unsure what makes a title actually work, my meta tags for SEO guide covers the mechanics in more depth.

On that same ceramic coating page, the original title read "Untitled Service" and told Google nothing about the actual service or the city. Rebuilding it to "Ceramic Coating in Baner, Pune, Paint Protection from ShineWorks," with a description naming the starting price and same-day turnaround, took about four minutes with the Meta Tag Generator open, and gave the page something worth clicking in the results for the first time.

Step 3: check headings and the opening paragraph (3 minutes)

Confirm one H1, a clean heading hierarchy, and that the first 100 words directly answer the query. If you have not picked a clear target keyword for the page yet, sort that out first; my keyword research for beginners guide is the fastest way in.

The same page originally opened with two paragraphs about the company's history before it mentioned ceramic coating even once. Moving the direct answer, what the treatment involves, what it costs and how long it lasts, into the first 60 words, and replacing a generic "Our Services" H1 with "Ceramic Coating in Baner," took about three minutes and fixed both the reader's patience and the page's AI Overview eligibility in the same move.

Step 4: fix images, internal links and schema (5 minutes)

Add alt text to any image missing it, compress the heaviest image on the page, add 3 to 8 internal links if the page is running light, and validate the schema block with Google's Rich Results Test. This is usually the group with the most small, fast fixes stacked together.

Five minutes went into compressing three uncompressed before-and-after photos from around 3 MB each down to under 150 KB in WebP, writing alt text describing the actual paint correction shown in each one, linking to the pricing page and the contact form from inside the body copy, and adding LocalBusiness schema with the correct Baner address, which had been missing from the page entirely.

Step 5: confirm Core Web Vitals and mobile usability (3 minutes)

Run PageSpeed Insights on the page and read the mobile tab. If LCP is failing, it is almost always the hero image from step 4 that needs a second look. Then open the page on your own phone and confirm nothing requires zooming or horizontal scrolling.

PageSpeed Insights on the mobile tab showed LCP sitting at 3.8 seconds before the image fix in step 4, and 2.1 seconds after it, which is usually exactly this pattern, one oversized hero image doing most of the damage on its own. Opening the page on an actual phone also caught a WhatsApp button sitting under 40 pixels, too small to tap reliably with a thumb, which got resized on the spot.

Step 6: confirm indexing in Search Console (2 minutes)

Paste the URL into URL Inspection and confirm it reads "URL is on Google". If it does not, fix whatever it names as the reason and request indexing again. This step is the only one that tells you whether the previous five actually mattered yet.

URL Inspection on the ceramic coating page came back "Crawled, currently not indexed," which usually means Google found the page and decided it was not yet worth indexing, rather than never finding it at all. Requesting indexing after making the fixes above, rather than before, is what actually moves a page like this from crawled to indexed within a few days instead of sitting in limbo for weeks.

Fifteen or so of these checks are one-time fixes you will never revisit. The rest (freshness, schema accuracy, Core Web Vitals) deserve a recheck every few months. That is the whole system, and it is how a solo freelancer in Pune ships SEO work at what a full-time in-house team would call agency quality, without carrying agency overhead.

On-page SEO is entirely organic. It costs time, not a monthly ad budget, which is exactly why it is worth doing properly instead of skipping straight to Google Ads for small business as a shortcut. If you are weighing the two against each other, I have written the full comparison separately in SEO vs SEM: what's the actual difference, and a more honest look at the payoff timeline in is SEO worth it in 2026.

Frequently asked questions

How is this 28-point checklist different from a general SEO audit?

A full SEO audit usually covers a whole site: crawl budget, backlink profile, and site architecture, alongside on-page factors. This checklist is deliberately narrower. It is every on-page factor you can fix on a single page without touching links, hosting or site-wide structure, and you can run it in about 20 minutes. For a whole-site view once every page passes this list individually, my free website SEO checker is the natural next step.

Do all 28 checks apply to every single page on my site?

Almost all of them. The exceptions are context-specific: a contact page does not need 1,200 words to satisfy the word count check, and a page with no purely decorative images can skip part of the alt text check. Title, meta description, headings, canonical tag, HTTPS, mobile usability and indexing apply to every page with no exceptions at all.

How often should I re-run this checklist on a page that's already live?

Every six months for evergreen pages, and immediately after any redesign, CMS migration or theme update, since that is exactly when a stray noindex tag or a stripped meta description slips in unnoticed. I re-check my own highest-traffic pages every time I refresh the content, and I update the dateModified value in the schema so the freshness signal stays honest.

What's the fastest way to check dozens of pages instead of one at a time?

Run your sitemap through the free website SEO checker page by page, or export your URL list from Search Console and work through it in order of highest traffic first. Fixing title tags and meta descriptions across 20 existing pages in an afternoon usually moves rankings faster than publishing one more blog post.

Which checks matter most if I only have time to fix a few things today?

Start with meta robots, the canonical tag and indexing, because a page Google has not indexed cannot rank no matter what else is perfect. After that, fix the title tag, confirm a single H1, and check that the word count actually matches search intent. Those five checks carry the most direct weight, and everything else compounds once they are solid.

Related guides

If you would rather hand this over (running the checklist across a full site, fixing the reds and shipping schema), get in touch. I take a handful of Pune and remote clients each quarter, and it is the same 28 checks under every engagement.

Follow Shreyas in Google

Get new guides in your Google Search & Discover feed.