← Blog · Home

On-Page SEO Checklist: Title, Meta, H1 Without Ranking Myths

Most founders do not need another ranking myth — they need a blunt on-page checklist they can finish before lunch.

SEOAudit focuses on signals you control in the HTML: title, meta description, H1, image alt, internal links, canonical, viewport, Open Graph, and JSON-LD.

Google Search Central documents how title links and snippets are chosen; meta descriptions help but are not a contract for the exact SERP text.

A single H1 that matches user intent beats three decorative H1 tags competing for attention.

What this is not: a full-site crawler, a backlink suite, or a guarantee that fixing WARN items will move you to position one.

The signals, in the order a crawler meets them

Title tags still carry weight for relevance and click-through. Keep them between 50 and 60 characters so they do not truncate in results. Lead with the primary term, then the brand, separated by a dash or pipe. "On-Page SEO Checklist — SEOAudit" reads better than "Home | Welcome | SEOAudit | Best Tool".

Meta descriptions do not rank. They earn the click. Write one sentence that states what the page delivers and why it is worth the visit. If you leave it blank, Google assembles its own from page text, and you lose that control.

One H1 per page. Screen readers, crawlers, and readers all expect a single page title in the heading hierarchy. Multiple H1 tags are not a penalty, but they dilute the signal you intended to send. Use H2 and H3 for structure underneath.

Image alt text is not decoration. It is the only description a crawler and a visually impaired reader receive. Describe the image's function, not its filename: "screenshot of the SEOAudit WARN panel" beats "image1.png".

Internal links and canonical tags

Internal links pass relevance and help crawlers discover the rest of the site. A blog post that links to your pricing page with the anchor "on-page SEO audit" teaches the crawler what that page is about. Generic "click here" anchors waste that signal.

The canonical tag tells search engines which URL is authoritative when the same content exists at two addresses. Set it once per template and verify it after a redesign — broken canonicals during a migration are a common traffic-drop cause.

Open Graph and JSON-LD

Open Graph tags control how the page appears when shared on social platforms. They do not affect rankings, but a missing og:image produces a bare text card that depresses share click-through.

JSON-LD structured data lets search engines read product, FAQ, or article metadata directly. Mark it up only for content that exists on the page. Invented schema is a manual-action risk and a trust problem with your own team.

Pass criteria at a glance

SignalPass criterion
Title50–60 chars, primary term first, brand last
Meta descriptionOne sentence, under 155 chars, matches page intent
H1Exactly one, mirrors the title's intent
Image altPresent on every content image, descriptive
CanonicalSelf-referencing and consistent across templates
Viewportwidth=device-width present
Open Graphog:title and og:image set on shareable pages
JSON-LDOnly for content that exists on the page

Three myths the checklist will not save you from

Keyword stuffing the meta description does not help rankings and hurts the click. Exact-match domains carry no ranking benefit over a clean brand domain. Publishing a blog post does not compensate for a slow, broken site — Core Web Vitals and crawlability decide whether the content gets indexed at all.

The checklist flags on-page hygiene. It cannot measure authority, link quality, or query intent. Treat a clean pass as table stakes, not a ranking guarantee.

How to run it without wasting an afternoon

Paste the rendered HTML of the page you want to check. Read the WARN items first — they mark the highest-impact fixes. Fix one, re-run, and confirm the line moves from WARN to PASS. Stop when the remaining items are cosmetic.

Keep a short changelog of what you changed and when. Six months from now, when rankings shift, that note tells you whether the cause was your edit or an algorithm update.

What to verify before you trust a PASS

A PASS means the pasted HTML matched the rules. It does not mean Googlebot sees the same DOM. Client-side rendered pages can differ from the source you pasted. Cross-check coverage and enhancements in Search Console, and re-run after any template change.

A worked example: the title tag

Suppose a page sells a CSV validator. A weak title reads "Tools — Home — ACME". A stronger one reads "CSV Validator — Check Files for Free | ACME". The second leads with the query term, states the benefit, and keeps the brand at the end. SEOAudit flags the first as WARN because the primary term is buried and the title exceeds 60 characters with filler words.

The fix is not to repeat the keyword five times. It is to state, in order, what the page is and who it helps. Crawlers and humans both parse that faster than a stuffed string.

Which JSON-LD type to use

A product page uses Product plus Offer. An article uses Article with author and datePublished. A FAQ block uses FAQPage only when the questions and answers are visible on the page — not hidden in an accordion the crawler cannot read. Mismatched schema confuses the rich-result parser and can cost the enhancement.

Further reading

FAQ

Does a PASS guarantee rankings?

No. It only means the pasted page matched checklist rules. Rankings depend on authority, links, and query intent, which an on-page check cannot measure.

Should I ignore Search Console?

Never. Use both.

Honesty note: educational decision-support only. No guarantee of rankings, compliance, or ship safety.

FAQ

Does a PASS guarantee rankings?

No. It only means the pasted page matched the checklist rules. Rankings depend on authority, links, and query intent, which an on-page check cannot measure.

Should I ignore Search Console?

Never. Use both. Search Console shows what Google actually indexed; the checklist only confirms the HTML you pasted.