SiteAuditLint checklist library
What this checklist covers
An on-page SEO checklist covers everything you control on a single page: search intent, title tag, meta description, URL, headings, topical coverage, internal links, images, structured data, and passage level clarity for AI search.
It is organized into 12 sections: Search Intent, Title Tag, Meta Description, URL, Headings, Content, Internal Links, Images, Structured Data, Open Graph, AI Search and Final Review. Each check lists exactly what to verify and a priority, so you can work through the highest impact items first.
For background on the concepts behind these checks, see On-page SEO course, On-page SEO checks, Optimize content for answer engines.
Who it is for:
Download the on-page seo checklist
Use the interactive version below, or download it to share with your team, attach to tickets, or work through offline.
On-Page SEO Checklist
Work through each check
0 of 14 checks complete
Search Intent
Title Tag
Meta Description
URL
Headings
Content
Internal Links
Images
Structured Data
Open Graph
AI Search
Final Review
Progress is saved in this browser only.
Detailed explanations
Each section below explains what to check, why it matters, the problems you will usually find, how to fix them, and how to confirm the fix.
Search Intent
What to check:
- Match search intent. Page format matches what ranks for the query.
Why it matters: Search intent decides which format ranks. A guide will not rank for a query where Google shows product pages, and vice versa.
Common problems:
- Wrong content type for the query
- Mixed intent pages trying to rank for everything
- No clear primary query
- Ignoring the format of current results
How to fix it: Review the current results for the query, match the dominant format, and focus each page on one primary intent.
How to verify: Compare your page type and structure to the top results before publishing.
Learn more: SEO basics, Rankings explained, Keyword research for AI search.
How SiteAuditLint helps: it checks search intent across every crawled URL instead of one page at a time and lists exactly which URLs are affected.
Title Tag
What to check:
- Write the title tag. Unique, includes the primary topic, readable length.
Why it matters: Title tags and meta descriptions shape how your page appears in search results and influence click through rate. Titles remain a strong relevance signal.
Common problems:
- Missing or duplicate titles across templates
- Titles truncated because they are too long
- Boilerplate meta descriptions repeated site wide
- Titles that do not match the search intent of the page
How to fix it: Write unique, descriptive titles with the primary topic near the start and meta descriptions that summarize the page and give a reason to click.
How to verify: Crawl and filter for missing, duplicate, and over length titles and descriptions, then spot check how they render in search results.
Learn more: Titles lesson, Meta descriptions lesson, Duplicate title tags, Missing meta descriptions.
How SiteAuditLint helps: it checks title tag across every crawled URL instead of one page at a time and lists exactly which URLs are affected.
Meta Description
What to check:
- Write the meta description. Summarizes the page and encourages clicks.
Why it matters: Title tags and meta descriptions shape how your page appears in search results and influence click through rate. See the earlier section on this topic for common problems.
How to verify: Crawl and filter for missing, duplicate, and over length titles and descriptions, then spot check how they render in search results.
How SiteAuditLint helps: it checks meta description across every crawled URL instead of one page at a time and lists exactly which URLs are affected.
URL
What to check:
- Set the URL. Short, descriptive and lowercase.
Why it matters: Clean URLs are easier to understand, share, and maintain. Changing URLs later creates redirect overhead and risks ranking loss.
Common problems:
- Uppercase letters and underscores
- Session IDs or unnecessary parameters
- Dates or IDs in URLs that will need to change
- URL changes after launch without redirects
How to fix it: Use lowercase, hyphenated, descriptive URLs and keep them stable.
How to verify: Export all crawled URLs and review patterns for parameters, case issues, and length.
Learn more: URLs lesson, SEO friendly URLs, Fixing incorrect URL formats, Uppercase URL issue.
How SiteAuditLint helps: it checks url across every crawled URL instead of one page at a time and lists exactly which URLs are affected.
Headings
What to check:
- Set the H1. One H1 that states the topic.
- Structure H2 to H6. Subheadings follow a logical outline.
Why it matters: Headings outline the page for users, search engines, and AI systems extracting passages. A clear H1 states the topic, and logical H2s make sections easy to cite.
Common problems:
- Missing H1 on templates
- Multiple H1s from shared components
- Headings used for styling rather than structure
- Skipped levels that break the outline
How to fix it: Use one H1 that states the topic, then H2 and H3 in a logical order. Fix shared components that output extra H1s.
How to verify: Crawl and filter for missing, duplicate, and multiple H1s, then review the heading outline on key templates.
Learn more: Headings lesson, H1s lesson, Multiple H1 tags, Why articles need H2 to H6.
How SiteAuditLint helps: it checks headings across every crawled URL instead of one page at a time and lists exactly which URLs are affected.
Content
What to check:
- Cover the topic fully. Covers entities, attributes and questions related to the topic.
- Add original information. Includes data, examples or insights not found elsewhere.
Why it matters: Search engines reward content that fully satisfies intent and adds information not already available. Thin, duplicated, or generic content is filtered out or outranked.
Common problems:
- Thin pages with little unique value
- Manufacturer or templated copy repeated across pages
- Missing coverage of related subtopics and questions
- No original data, examples, or experience
How to fix it: Consolidate thin pages, rewrite duplicated copy, cover the entities and questions users expect, and add original information.
How to verify: Review word count and duplicate content reports, then compare coverage against top ranking pages for the target query.
Learn more: Thin content, Optimize content for answer engines, Keyword vs entity optimization, Thin content issue.
How SiteAuditLint helps: it checks content across every crawled URL instead of one page at a time and lists exactly which URLs are affected.
Internal Links
What to check:
- Add internal links. Links to and from relevant pages with descriptive anchors.
Why it matters: Internal links distribute authority, define site architecture, and help crawlers discover content. Broken links waste crawl budget and frustrate users, while orphan pages are almost invisible to search engines.
Common problems:
- Links to deleted pages returning 404
- Links pointing to redirected URLs instead of final destinations
- Orphan pages with no internal links
- Generic anchor text like click here on important links
How to fix it: Fix or remove broken links, update links to point at final URLs, link to orphan pages from relevant hubs, and use descriptive anchor text.
How to verify: Crawl the site and review the broken links, redirecting links, and inlinks reports. Compare sitemap URLs against crawled URLs to find orphans.
Learn more: Internal links lesson, Fix broken internal links, Orphan pages, Internal link analysis.
How SiteAuditLint helps: it checks internal links across every crawled URL instead of one page at a time and lists exactly which URLs are affected.
Images
What to check:
- Optimize images. Compressed, sized correctly, with alt text.
Why it matters: Images influence page speed, accessibility, and image search visibility. Alt text gives context to search engines and screen readers.
Common problems:
- Missing or keyword stuffed alt text
- Oversized images slowing pages
- Broken image URLs
- Images loaded only via CSS backgrounds when they carry meaning
How to fix it: Compress and size images correctly, serve modern formats, write descriptive alt text, and fix broken image sources.
How to verify: Crawl images, filter for missing alt text, 4xx responses, and file sizes above your budget.
Learn more: Images lesson, Image SEO audit, Missing alt text issue.
How SiteAuditLint helps: it checks images across every crawled URL instead of one page at a time and lists exactly which URLs are affected.
Structured Data
What to check:
- Add schema. Relevant schema type added and validated.
Why it matters: Structured data helps search engines and AI systems understand entities on the page and can unlock rich results. Invalid or misleading markup is ignored or can trigger manual actions.
Common problems:
- Syntax errors in JSON-LD
- Required properties missing for the chosen type
- Markup describing content not visible on the page
- Schema removed during a template change
How to fix it: Use JSON-LD, include required and recommended properties, and keep markup consistent with visible content.
How to verify: Validate key templates with the Rich Results Test and Schema Markup Validator, then monitor enhancement reports in Search Console.
Learn more: Schema markup for AI, Invalid schema issue, Missing schema issue.
How SiteAuditLint helps: it checks structured data across every crawled URL instead of one page at a time and lists exactly which URLs are affected.
Open Graph
What to check:
- Add social tags. Open Graph and Twitter tags set.
Why it matters: Open Graph and Twitter tags control how pages look when shared. Missing tags produce poor previews and lower engagement.
Common problems:
- Missing og:image
- Titles and descriptions not set
- Images with wrong dimensions
How to fix it: Set og:title, og:description, og:image, and Twitter card tags on every shareable template.
How to verify: Test pages in social debuggers and crawl for missing Open Graph tags.
Learn more: Missing Open Graph issue, On-page SEO checks.
How SiteAuditLint helps: it checks open graph across every crawled URL instead of one page at a time and lists exactly which URLs are affected.
AI Search
What to check:
- Write citable passages. Clear answers in short self-contained paragraphs.
Why it matters: AI search tools such as ChatGPT search, Claude, Perplexity, and Google AI Overviews rely on crawlers to retrieve and cite content. Blocking them, or relying on JavaScript they cannot render, removes your pages from AI answers.
Common problems:
- OAI-SearchBot blocked when ChatGPT search visibility is wanted
- Blanket blocks copied from a template without a policy decision
- Key content only available after JavaScript runs
- No monitoring of AI crawler activity in server logs
How to fix it: Decide a policy per crawler, separating training crawlers like GPTBot from search and user retrieval crawlers, then encode it in robots.txt and keep content server rendered.
How to verify: Test robots.txt against each AI user agent and check server logs for AI crawler requests and response codes.
Learn more: AI crawlers lesson, AI citations lesson, AI crawlers vs search crawlers, Fix 403 errors blocking AI crawlers.
How SiteAuditLint helps: it checks ai search across every crawled URL instead of one page at a time and lists exactly which URLs are affected.
Final Review
What to check:
- Run final page review. Page returns 200, is indexable and canonical.
Why it matters: A checklist is only useful if findings are prioritized, assigned, and verified. Process steps turn a list of issues into fixed issues.
Common problems:
- Findings without owners or deadlines
- Low impact issues fixed before critical ones
- Fixes never verified with a re-crawl
- No record of what changed and why
How to fix it: Score each issue by impact and affected URL count, assign an owner, and require a verification crawl before closing.
How to verify: Re-crawl after fixes and confirm the issue count for each item has dropped to zero or an accepted level.
Learn more: Audit process lesson, Prioritization lesson, SEO audit prioritization, How to report technical SEO issues.
How SiteAuditLint helps: it checks final review across every crawled URL instead of one page at a time and lists exactly which URLs are affected.
Common mistakes
Writing titles for keywords rather than intent
Multiple H1s from page builders
Covering the head keyword but missing related entities and questions
No internal links to new pages
Images without alt text or compression
When to run the checklist
- Before publishing new pages
- When refreshing underperforming content
- When a page ranks on page two
- During content audits
How to verify fixes
- Save a baselineCrawl the site before making changes so you have a record of every status code, canonical, directive and title.
- Fix by priorityStart with High priority checks and issues that affect templates, since one fix there resolves many URLs. See how to prioritize audit findings.
- Re-crawl the same scopeUse the same start URL, crawl limit and settings so the results are comparable.
- Compare the crawlsConfirm the issue count dropped and that no new problems appeared elsewhere. Audit comparison does this field by field.
- Confirm in Search ConsoleUse URL Inspection and the indexing reports to check that Google sees the change. Our indexing tests lesson covers the process.
SiteAuditLint workflow
From manual checklist to automated checks
Most checks in this list run automatically in a SiteAuditLint crawl. Use audit comparison to diff crawls and scheduled audits to monitor for regressions.