Back to blog

64 Technical SEO Checks for AI Search 【GEO】

HTTP status, noindex, canonicals, robots.txt, structured data, and author information: a detailed guide to 64 technical SEO checks that matter for GEO.

Published:
Updated:
Reading time
6 min read

What technical SEO covers

Technical SEO is the work of making sure search engines and AI crawlers can access a page, understand its content, and identify the URL that represents it. A better title or heading cannot compensate for an accidental noindex, a blocked crawler, an incorrect canonical, or a broken redirect.

Some checks apply across a site, such as robots.txt and XML sitemaps. Others depend on the page, such as its title, canonical URL, or structured data. An article, product page, homepage, and multilingual page do not need the same markup.

Page basics 12 checks

  • Title tag: The title exists, reflects the page topic, and is an appropriate length for the page language.
  • Meta description: A concise description gives search engines a useful summary of the page.
  • H1: One H1 identifies the main subject of the page.
  • Heading structure and hierarchy: H2 through H6 divide the content into topics without skipping heading levels in a way that breaks the document outline.
  • Image alt text: Meaningful images have text alternatives that describe their content.
  • HTML lang attribute: The primary language is declared on the html element.
  • Link structure: Readers and crawlers can reach related internal pages and supporting external sources.
  • Internal nofollow links: Crawlable internal links do not carry an unintended nofollow attribute.
  • Favicon: The site has an icon that browsers and search results can use for identification.
  • Skip link: Keyboard users can bypass repeated navigation and reach the main content.
  • Form labels: Inputs have a label, aria-label, aria-labelledby, or another accessible name.
  • Accessible button names: Buttons, including icon-only controls, expose their purpose to assistive technology.

Google recommends title links that accurately describe page content. See Google Search Central guidance on title links.

Access and indexability 12 checks

  • Page status: A public page returns a 2xx HTTP status.
  • HTTPS: The production page is served over HTTPS.
  • Canonical URL: A canonical link exists, uses an absolute URL, and points to the final URL after redirects.
  • Redirects: Internal links and sitemaps use the final URL directly rather than relying on a redirect.
  • Sitemap declaration: robots.txt points to an XML sitemap.
  • Meta refresh: The page does not use a legacy meta-refresh redirect in place of an HTTP redirect.
  • Preconnect: A preconnect hint is present only where measurement shows that an early external connection is needed.
  • Response compression: HTML is delivered with Brotli or gzip compression where available.
  • Cache-Control: The HTML cache policy fits the page’s update frequency and degree of personalization.
  • Indexing controls: Neither robots meta tags nor X-Robots-Tag headers apply an unintended noindex.
  • Viewport: A viewport meta tag supports mobile rendering.
  • Character encoding: The document declares its charset.

A canonical is a signal, not an instruction that Google must follow. Redirects, canonicals, internal links, and sitemaps should agree. Google’s canonicalization guide explains the relationship.

Language support and crawlers 5 checks

  • hreflang: Multilingual pages identify their alternates, include a self-reference, and use x-default when a default page is appropriate.
  • Web App Manifest: Use a manifest when the site is intended to function as a progressive web app.
  • Googlebot access: robots.txt does not unintentionally block Googlebot.
  • OAI-SearchBot access: robots.txt does not unintentionally block the crawler used for ChatGPT Search.
  • GPTBot policy: The allow or disallow rule for model-training access matches the publisher’s policy.

OAI-SearchBot and GPTBot have different roles. OpenAI documents them separately in its crawler guidance.

Social sharing metadata 13 checks

  • Open Graph preview: The core Open Graph fields are sufficient to generate a share preview.
  • og:title: A title is available for shared links.
  • og:description: A description is available for shared links.
  • og:image: A share image is available.
  • og:url: The shared page URL is declared.
  • og:type: A page type is declared.
  • og:site_name: The site name is declared.
  • og:locale: A locale is declared where relevant.
  • twitter:card: A card type is declared for X.
  • twitter:title: A title is available for X.
  • twitter:description: A description is available for X.
  • twitter:image: An image is available for X.
  • twitter:site: The site account is declared when one exists.

Social metadata does not directly determine rankings. It does determine how accurately a URL is represented when someone shares it.

Structured data 12 checks

  • JSON-LD: JSON-LD is present, parses without errors, and uses schema.org types that match the visible page.
  • Organization logo: When the publisher needs to be identified, Organization markup uses the real organization logo rather than a product or app image.
  • SoftwareApplication image: SoftwareApplication markup includes an image when it represents a real app or service image.
  • Topic entities: about or mentions supplements a page only when it has a clear real-world subject.
  • SoftwareApplication required properties: When pursuing a software rich result, name and offers.price match the visible offer.
  • SoftwareApplication ratings and reviews: Ratings or reviews are included only when they are genuine and visible on the page.
  • WebSite schema: A homepage can use WebSite markup to identify the site name.
  • SearchAction: SearchAction reflects a real internal search feature.
  • BreadcrumbList: Breadcrumb markup reflects breadcrumbs that readers can actually see on a non-homepage.
  • FAQPage: Every marked-up question and answer is visible on the page.
  • Article or BlogPosting: Article pages identify the headline, author, publication date, and modification date consistently with the visible page.
  • Product schema: Product markup is used on product pages and matches the product information shown to readers.

Structured data describes content already on the page. It does not create content, and meeting eligibility rules does not guarantee a rich result. See Google’s structured data introduction.

Information for AI search 10 checks

  • Content structure: Headings and paragraphs make the argument and its supporting detail easy to follow.
  • Initial HTML content: Important copy is available without JavaScript interaction.
  • HowTo markup: HowTo is used only to supplement steps that are actually displayed.
  • Author information: A Person or meta author identifies who created an article.
  • Publication and update dates: Dates show when information was published and meaningfully updated, and match structured data.
  • Organization schema: The homepage identifies the organization responsible for the site.
  • Publisher and company links: Readers can reach an author profile, company information, or contact page.
  • Contact and legal links: Contact, privacy, terms, and related trust information are available.
  • sameAs links: Official organization or author profiles are attached to the correct entity where useful.
  • Term definitions: Specialist terms are explained with dl, dfn, an FAQ, or another suitable format.

Google says that its AI features do not require special new markup or files. The foundation remains technical accessibility and useful, original content. See Google’s guidance for AI features.

For a closer review of Organization, Person, and sameAs information, see our guide to entity optimization for AI search.

Fix priority

An unintended block on a public page comes before every other improvement. If a crawler cannot access the page, better copy and additional structured data will not reach it.

  1. Access blocks: Fix HTTP errors, unintended noindex directives, X-Robots-Tag headers, and robots.txt blocks affecting Googlebot or OAI-SearchBot.
  2. URL conflicts: Fix canonical URLs, redirects, sitemaps, and internal links that point to competing URLs.
  3. Unreadable content and page topic: Fix initial HTML content, titles, H1s, headings, language declarations, and structured data.
  4. Unverifiable publishers: Add author information, meaningful dates, organization details, and links to company or legal information.
  5. Page-specific settings: Review multilingual annotations, social metadata, page-type schema, and accessibility details.

Article markup belongs on an article, Product markup belongs on a product page, and hreflang belongs on a multilingual site. Adding markup that does not match the page is not an improvement.

How to audit 64 checks yourself

Checking all 64 items manually means moving between the HTML, HTTP headers, robots.txt, structured data, and page copy. Even a thorough review takes time because the evidence lives in several places.

Please Cite Me! audits the technical condition of a URL in one place, including access, crawl controls, canonicalization, social metadata, structured data, and information for AI search. It shows page-specific issues and how to address them.

Start an audit with Please Cite Me! →

About the author

Yuma Okamoto

Yuma Okamoto

Developer of Please Cite Me! and CEO of Abeam Tech Inc.

University of Tokyo graduate focused on web product development, SEO, and information architecture for AI search, with a particular interest in how web content is understood and cited by search engines and AI.

X / @okamoto_yuma_

Frequently asked questions

Do all 64 checks apply to every page?

No. Article markup belongs on article pages, Product markup belongs on product pages, hreflang applies to multilingual sites, and SearchAction applies only when the site provides internal search. Use the checks that match the page and its visible content.

Does removing noindex guarantee search visibility?

No. Removing noindex is one condition for indexing, not a guarantee of visibility. The page must also be accessible, allowed by robots.txt, clear about its canonical URL, and useful for the relevant search.

Does more structured data guarantee an AI citation?

No. Structured data should accurately supplement visible content. It does not determine whether an AI system cites a page. Accessible source content, clear answers, and evidence still matter.

Please Cite Me!

Audit your page for AI search

Please Cite Me! reviews a public page's technical access and editorial clarity, then turns the evidence into a prioritized report.

Audit a page