On-Page SEO in the AI Era: The Complete Checklist for AI Search Visibility

AI Overviews, ChatGPT, and Perplexity have rewritten the rules of on-page SEO. Here is the complete modern checklist to rank in both classic search and AI answer engines.

admin· 8 min read

Google's AI Overviews now appear on roughly 15% of all queries. ChatGPT Browse, Perplexity, and Bing Copilot pull live content from your pages and synthesize answers without a single click ever reaching you. If your on-page SEO is stuck in 2019, those systems will skip you entirely — and cite a competitor instead. This checklist covers every signal that matters, from the classics to the new AI-specific layer every modern site must address.

Title Tags and Meta Descriptions

Keep title tags under 60 characters and lead with the primary keyword. AI systems use your title as a strong document-topic signal, so vague brand-first titles hurt both click-through and AI citation probability. Meta descriptions should be 140–160 characters, written as a direct answer fragment — AI crawlers often lift the description as a candidate snippet when the opening paragraph is too dense.

Heading Hierarchy: H1 Through H3

Use exactly one H1 per page, matching or closely paraphrasing the title tag. Structure H2s as the major topic sections and H3s as supporting sub-points. AI models parse this outline to build their internal "chunk map" of a document — a flat heading structure collapses that map and reduces citation likelihood. Each H2 should be answerable as a standalone question; that is the atomic unit AI retrievers prefer.

Semantic HTML and URL Structure

Wrap your post content in <article>, place navigation inside <nav>, and use <main> as the page landmark. Semantic tags allow AI crawlers to isolate the primary content block and discard boilerplate. For URLs, keep them short, lowercase, and hyphenated — e.g., /blog/on-page-seo-ai-era — and mirror the URL path in your BreadcrumbList schema.

Internal Linking and Image Alt Text

Internal links distribute topical authority and help AI crawlers build a knowledge graph of your site. Link from supporting posts to pillar pages using descriptive anchor text — not "click here." For images, write alt text as a sentence that describes the image in context, e.g., alt="Bar chart showing 43% increase in AI Overview impressions from Q1 to Q3 2024". Multimodal AI models index alt text as document content.

Core Web Vitals and Mobile-First

Google's page experience signals — LCP under 2.5 s, INP under 200 ms, CLS under 0.1 — remain hard ranking factors. AI crawlers also time out on slow pages; a 6-second LCP means the crawler may parse an incomplete DOM. Audit with PageSpeed Insights monthly. Mobile-first indexing is the default: test every layout breakpoint and ensure tap targets are at least 48 × 48 px.

Cumulative Layout Shift above 0.1 is particularly damaging for AI parsing: content that shifts after initial render may be captured mid-reflow, producing garbled snippets in AI answers.

Canonical Tags, Open Graph, and Twitter Cards

Set a self-referencing canonical on every page to prevent duplicate-content dilution. For social sharing, populate og:title, og:description, og:image (1200 × 630 px), and the equivalent twitter:card set. These tags feed previews in Slack, LinkedIn, and — increasingly — AI chat interfaces that surface linked content with rich previews.

JSON-LD Structured Data

Structured data is the single highest-leverage on-page change for AI visibility. Implement the following schema types for a blog post:

{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "Article",
      "headline": "On-Page SEO in the AI Era",
      "datePublished": "2025-01-15",
      "dateModified": "2025-01-15",
      "author": { "@type": "Person", "name": "Jane Smith" },
      "publisher": {
        "@type": "Organization",
        "name": "Acme Blog",
        "logo": { "@type": "ImageObject", "url": "https://example.com/logo.png" }
      }
    },
    {
      "@type": "BreadcrumbList",
      "itemListElement": [
        { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://example.com" },
        { "@type": "ListItem", "position": 2, "name": "Blog", "item": "https://example.com/blog" },
        { "@type": "ListItem", "position": 3, "name": "On-Page SEO in the AI Era" }
      ]
    },
    {
      "@type": "FAQPage",
      "mainEntity": [
        {
          "@type": "Question",
          "name": "What is llms.txt?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "A plain-text file at /llms.txt that tells AI crawlers which pages are high-quality and how to traverse your site."
          }
        }
      ]
    }
  ]
}

The FAQPage schema is particularly powerful: Google's AI Overviews and Perplexity both preferentially cite pages that contain explicit Q&A markup because it maps directly onto how answer engines structure their outputs.

robots.txt, XML Sitemaps, and llms.txt

Ensure your robots.txt does not accidentally block GPTBot, PerplexityBot, or ClaudeBot if you want AI citation. Submit a fresh XML sitemap monthly; include <lastmod> dates so crawlers prioritise recently updated content. The emerging llms.txt standard (analogous to robots.txt but for LLM crawlers) lets you list your most authoritative pages in Markdown format at /llms.txt and /llms-full.txt. Tools like Perplexity have already confirmed they read it.

Publish a /llms.txt file that lists your pillar pages as Markdown links with one-sentence descriptions. This acts as a curated index for AI crawlers that lack a full sitemap parser.

Entity and Topic Clustering

Modern search indexes are entity graphs, not keyword indexes. Every page should declare its core entity (a person, concept, product, or place) and link outward to authoritative definitions — Wikipedia, Wikidata, or your own glossary. Build topic clusters: one pillar page covers the broad concept, while 5–10 supporting posts cover subtopics and funnel internal links back to the pillar. AI systems learn your site's topical authority from this graph structure, not just from individual page keywords.

E-E-A-T Signals

Google's quality raters — and by extension AI training pipelines — weight Experience, Expertise, Authoritativeness, and Trustworthiness heavily. Concretely: display a named author with a bio and credentials, show a publication and last-updated date on every post, link to primary sources, and earn backlinks from authoritative domains in your niche. Add an Organization schema block on your homepage with sameAs links to your LinkedIn, Crunchbase, and Wikidata entries. These anchor your brand as a known entity.

Answer-First Writing and Chunk-Level Retrievability

AI retrievers chunk documents into ~300-token passages before ranking them. Each chunk must be self-contained: it should state its topic, deliver its answer, and not depend on context from a preceding paragraph. The practical rule is the inverted pyramid — lead every section with the direct answer, then support with evidence. Avoid long preambles. Use short paragraphs (3–5 lines), numbered lists for sequential steps, and bullet lists for parallel items. This structure maps cleanly onto how AI models extract and re-render information.

The most helpful content directly and fully addresses the user's question without making them search within the page for the answer.

— Google Search Rater Guidelines, 2024

How to Measure AI Citations

Traditional rank tracking does not capture AI visibility. Use these methods: (1) Prompt sampling — manually query ChatGPT, Perplexity, and Gemini with your target questions weekly and record whether your domain appears in citations. (2) Server log analysis — filter for GPTBot, PerplexityBot, and anthropic-ai user agents and track which pages they crawl most frequently. (3) Google Search Console — the "AI Overviews" filter in the Performance report shows which queries trigger your site's appearance in AI-generated answers. Combine these signals to build a monthly AI citation share metric.

The on-page SEO checklist has not shrunk — it has expanded. Classic fundamentals like title tags, heading hierarchy, and Core Web Vitals still gatekeep rankings, but AI search adds a second layer: structured data, chunk-friendly writing, entity declaration, llms.txt, and answer-first formatting. Treat every section of every post as a standalone answer, and you will satisfy both human readers and the AI systems increasingly deciding which content surfaces first.

Audit Your Site with Our Free SEO Checklist

Frequently Asked Questions

Does on-page SEO still matter if AI Overviews reduce clicks?

Yes — more than ever. AI Overviews pull their content from pages that already rank in the top 10. Strong on-page SEO is the prerequisite for being cited. Pages that get cited also still receive referral clicks when users want more depth.

What is llms.txt and do I need one?

llms.txt is a plain-text Markdown file placed at your domain root that lists your most important pages for AI crawlers. It is not yet a universal standard, but Perplexity, You.com, and several other AI engines already read it. Adding one costs 30 minutes and has no downside.

How much does JSON-LD structured data help with AI citations?

Significantly. FAQPage and Article schema give AI models explicit signals about what your page is, who wrote it, and what questions it answers. Studies tracking AI Overview sources consistently find structured-data-rich pages overrepresented relative to their raw traffic share.

What does 'chunk-level retrievability' mean in practice?

AI retrieval-augmented generation (RAG) systems split pages into ~300-token passages and score each passage independently for relevance. If your answer is buried in paragraph 12 after 400 words of background, that passage scores lower than a competitor's page that opens with the answer. Write so that every 200–300-word block is independently useful.

Should I block AI crawlers with robots.txt?

Only if you have a specific legal or business reason to do so. Blocking GPTBot or PerplexityBot prevents those systems from ever citing you. For most publishers seeking organic visibility, allowing AI crawlers is the correct default.

How often should I update on-page elements to maintain AI visibility?

Review your top 20 pages quarterly. Update dateModified in your Article schema whenever you make substantive edits — not cosmetic ones. AI crawlers re-index pages with recent lastmod dates more aggressively. Refreshing statistics, examples, and internal links every 6–12 months is the practical minimum for staying competitive in fast-moving topics.

Frequently asked questions

What is on-page SEO in the AI era?

On-page SEO in the AI era means optimising a single page for two audiences at once: classic ranking algorithms and answer engines such as Google AI Overviews, ChatGPT Search and Perplexity. On top of the traditional title tag, meta description and heading structure, it adds answer-first writing, machine-readable structured data, verifiable E-E-A-T signals and server-rendered HTML that an AI crawler can read without executing JavaScript.

Which structured data types should a blog post use?

Four cover almost every article: Article or BlogPosting for the post itself, BreadcrumbList for its position in the site hierarchy, FAQPage when the page actually shows a question-and-answer block, and Organization or Person as the publisher. Every property must describe something a human visitor can see on the page — markup that does not match visible content is a schema guideline violation and can cost you rich results entirely.

Is FAQPage schema still worth adding?

Yes, though not for the reason it was in 2020. Google narrowed FAQ rich results in August 2023 so the expandable accordion now shows almost exclusively for authoritative government and health sites. The markup still pays off because it hands answer engines clean, unambiguous question-answer pairs to quote, and AI Overviews, ChatGPT and Perplexity parse structured data even when the blue-link result stays plain.

What is llms.txt and do I need one?

llms.txt is a plain Markdown file at the root of your domain that lists your most important URLs so a language model can find and summarise them without crawling the whole site. It is a community proposal, not an official standard, and no major model provider has confirmed it uses the file. It takes minutes to publish and does no harm, so treat it as cheap insurance rather than a ranking factor.

How do Core Web Vitals affect AI search visibility?

Largest Contentful Paint, Interaction to Next Paint and Cumulative Layout Shift remain a light ranking signal in classic search, but the bigger risk for AI visibility is upstream: most AI crawlers fetch raw HTML and do not run JavaScript. If your main content only appears after hydration, or the page is slow enough to time out, an answer engine may never see the text it would otherwise quote.

How should I write so AI engines quote my page?

Write answer-first. Open each section with a direct 40-60 word answer to the question in the heading, then expand with detail. Phrase H2 and H3 headings as the questions people actually type, keep one idea per paragraph, include concrete numbers, dates and named sources, and state clearly who wrote the piece and when it was last updated.