Free GEO + SEO check

Check your site’s readiness for ChatGPT, Gemini, Claude and Perplexity

Get your score and top 3 fixes for AI search.

Free · about 20 seconds · full report by email

  • ChatGPT
  • Gemini
  • Claude
  • Perplexity
  • Google

Evidence-backed checks. No card required.

Sign in to unlock your fix guide

By continuing, you ask us to email this report and save your request. No newsletter signup. Privacy policy

or use email

Sundayable Inc. · 4711 Yonge Street, 10th Floor, Toronto, ON M2N 6K8. Your report email includes a link and PDF.

How it works

Your website. Three steps. A clear next move.

  1. Enter your website

    We read your homepage and up to three key pages for search access, clear answers and business details. The first check usually takes about 20 seconds.

  2. See what to fix first

    Get two readiness scores, SEO and GEO, plus your top three gaps. Each check shows the evidence, why it matters and a practical fix.

  3. Keep your full report

    Continue with Google or enter your name and email to open the full report and PDF. With your permission, we also email you a copy.

What we check

Find the gaps in your site’s search and AI readiness.

The check reads your homepage and up to three key pages. Each scored check includes its evidence, a fix and primary sources. Anything we can’t measure is left out of your score and shown in the coverage. A high score does not guarantee rankings or AI mentions.

  1. Content

    Can they tell what you do?

    • Titles, headings and meta descriptions
    • Question-and-answer formatting, shown as an optional observation
    • Readable HTML on up to three linked supporting pages
  2. Trust

    Can they check who you are?

    • Detected organization types and malformed JSON-LD blocks
    • Authorship markup, without inferring credentials or reputation
    • HTTPS and co-present name, address and phone signals
  3. Crawl access

    Can they get in?

    • Search and answer bots, separate from training crawlers
    • Sitemap, canonical tags and copy that loads without JavaScript
    • Mobile speed from Google PageSpeed when available
Two scores
SEO and GEO, each out of 100, plus an overall score.
Your top 3 gaps
Ranked by missing checklist points. This is not a ranking-gain or effort estimate.
A fix for every check
What we found, why it matters and what to change. As a page and a PDF.

Methodology · 2026-10-20.2

How we score your website.

We read public HTML from your homepage and up to three supporting pages. This is Sundayable’s HTML checklist: 60 possible SEO points and 24 GEO points, each normalized to 100. The weights are editorial priorities, not a formula supplied by a search engine or a validated prediction of AI citations.

Read the full scoring rules and limitations

Explore the checks, weights and sources

Pass earns the full weight, partial normally earns half, and fail earns zero. AI crawler access is the exception: it earns the proportion of five documented bot shares described below. Unknown and non-applicable checks earn no score and are excluded from the score denominator.

Each score = round(100 × earned points ÷ assessed applicable weight). Overall uses all assessed weights together, not an average of the SEO and GEO percentages. Coverage = round(100 × assessed weight ÷ applicable weight); unknown checks lower coverage, non-applicable checks leave both denominators. No assessed points means no score. A 100 means the measured checklist passed, not perfect SEO or AI visibility.

The top three fixes are failing or partial scored checks sorted by missing raw points (weight minus earned), with check ID as a deterministic tie-break. Priority labels use the original weight: 7+ high, 5–6 medium, under 5 low. These are triage labels, not estimated ranking gains or effort. The API’s quickWins field repeats these fixes; we do not estimate how long each takes.

Crawl access and indexing carry more weight because blocked pages cannot reliably be read. The remaining weights describe checklist priorities, not the size of an effect. Correlated checks are not independent signals. A blocked homepage can still have a high numerical score; inspect access findings first. We do not measure backlinks, search demand, rankings, traffic, factual accuracy, reputation or verified expertise.

After you submit your name, email and consent, an available AI sample asks three buyer questions through Perplexity Sonar. It records mentions, citations and other businesses named. This small, seven-day cached sample is separate from the score and is not a traffic measurement. Training-bot permissions do not earn points.

Mobile speed is optional. Google PageSpeed is used only when configured and available; otherwise it is marked “not measured” and excluded from your score. A configured request retries once on failure. Lab performance and page-level or origin-level real-user data are labeled separately.

The scan normalizes your input to the site root and follows bounded redirects. It has a 14-second budget, a 1 MB HTML limit, a 500 KiB robots prefix and a 250 KB sitemap limit. It does not run JavaScript. Detected empty app shells get no score; other render-dependent content can still be missed. Bot blocks and unavailable supporting pages are unknown, not evidence of absent features. Google can render JavaScript; our fetch is not Googlebot.

Website and MCP use the same versioned analyzer and 24-hour cache. A repeat during that window may return the same saved scan; check its timestamp. New uncached runs can differ because pages, redirects, firewalls or response times change. Compare the rubric version, sampled pages, evidence and coverage before treating a score change as improvement. Old saved reports keep their original version.

SEO 60 points

Indexing eligibility12 pts

An unintended noindex directive can exclude a public page from search. Its absence only establishes eligibility, not that the page is indexed.

Decision rule: Fail: a noindex or none directive applies to all robots or Googlebot in a robots/googlebot meta tag or X-Robots-Tag header. Pass: none detected on the homepage. This does not test actual indexing, rendered directives, nosnippet, max-snippet, data-nosnippet or engine-specific preview eligibility.

Google crawl access8 pts

A blocked Googlebot cannot reliably fetch the page or see its indexing directives. robots.txt is a crawl control, not a way to secure private content.

Decision rule: Pass/fail: the final homepage path and query are allowed/blocked for Googlebot by the fetched robots.txt. A 4xx response other than 429 means no file restrictions. Network failure, 429 or 5xx means unknown. A missing file does not prove firewall access. We have no crawler cache history.

Page title8 pts

A descriptive, distinct title helps people identify the right result. Search engines can rewrite titles; there is no required character count.

Decision rule: Pass: every fetched page has a non-empty, distinct title other than Home, Welcome, Untitled or Index (case-insensitive). Partial: that condition fails but the homepage has a title. Otherwise fail. Incomplete page sampling cannot earn a full pass.

Main heading6 pts

A clear main heading tells readers what this page is about and gives search engines a prominent title signal. Multiple H1 elements alone are not a ranking violation.

Decision rule: Pass: each fetched page has a non-empty H1 other than Home, Welcome or Logo; on a supporting page it must also differ from the detected business name. Partial: that condition fails but the homepage has H1 text. Otherwise fail. Multiple H1s are allowed. Incomplete page sampling cannot earn a full pass.

Canonical URL6 pts

A consistent canonical helps consolidate duplicate URL signals. It is a hint, and legitimate cross-domain canonicals need human review.

Decision rule: Pass: the first HTML canonical (or, if absent, the canonical Link header) matches the final homepage URL after removing the fragment and trailing slash. Partial: a different canonical is declared. Fail: none found. A missing self-canonical is not a Google violation; Google can choose one itself. Alternate canonicals require human review.

Mobile performance5 pts

Slow loading, layout shifts and delayed responses can make a page harder to use. Lab measurements diagnose problems; field LCP, CLS and INP describe real visits.

Decision rule: With complete field data: pass when LCP ≤2,500 ms, CLS ≤0.1 and INP ≤200 ms; partial when all are ≤4,000 ms, ≤0.25 and ≤500 ms; otherwise fail. Lab fallback uses only LCP/CLS with the same boundaries and is not a CWV assessment. Missing LCP/CLS (or field INP) is unknown. The separate Lighthouse score is not used in this calculation.

Search description4 pts

A page-specific description can explain the offer in search results. Google may choose visible page text instead; the tag does not guarantee a snippet.

Decision rule: Pass: every fetched page has a non-empty, distinct meta description. Partial: that condition fails but the homepage has one. Otherwise fail. We do not assess persuasive quality or enforce a character target. Incomplete page sampling cannot earn a full pass.

HTTPS4 pts

HTTPS protects the connection and is part of a good page experience. It does not establish the accuracy or quality of the business.

Decision rule: Pass: the final homepage URL uses HTTPS. Fail: it remains HTTP. Missing schemes default to HTTPS; we do not downgrade after a TLS failure. Certificate/transport failure prevents a report rather than generating a zero.

Sampled links4 pts

Broken links interrupt a visitor’s next step and can obstruct discovery of supporting pages. This small sample is not a sitewide link audit.

Decision rule: Up to eight homepage links, same-origin first, no query strings or obvious action routes. HEAD, then GET only for HTTP 405/501. Any observed 404/410 fails this check. All sampled destinations returning 2xx/3xx passes. A timeout, block, server error or unattempted link is unknown. No eligible links is not applicable.

Sitemap3 pts

A sitemap can help engines discover canonical pages, especially on larger sites. It neither guarantees indexing nor replaces internal links.

Decision rule: Pass: sampled XML contains urlset or sitemapindex and at least one loc. We try /sitemap.xml, then up to three distinct robots.txt declarations and /sitemap_index.xml alternatives. Fail only after conclusive missing/non-sitemap responses. Blocked, timed-out, oversized, compressed or unattempted resources are unknown. We do not validate all URLs or index coverage. Small, well-linked sites may not need a sitemap.

GEO 24 points

AI search crawler access8 pts

Search and answer bots need permission to retrieve content. Allowing them establishes only a robots.txt prerequisite; firewalls, indexing and answer selection can still prevent visibility.

Decision rule: Five equal bot shares: OAI-SearchBot, PerplexityBot, Claude-SearchBot, Claude-User and Bingbot. For each, all sampled paths allowed earns 1, some earns 0.5, none earns 0. The 8-point check earns 8 × sum(shares) / 5, rounded to two decimals. Any unknown bot result makes the check unknown. Equal shares are editorial, not engine market share. We evaluate robots rules, not actual requests from those bots.

Business identity6 pts

Accurate business markup can clarify which organization a page describes. Detecting a schema type does not validate the markup or guarantee a rich result or AI mention.

Decision rule: Pass: at least one detected type belongs to the bundled schema.org Organization hierarchy and no sampled JSON-LD block fails JSON parsing. Partial: any other schema type, or an organization type with a malformed JSON-LD block. Fail: no recognized types. When supporting pages are unavailable and no malformed markup is observed, absence of an Organization type is unknown. JSON-LD and microdata types are detected, not full schema validity, ownership, sameAs accuracy or RDFa. Markup is optional and does not prove AI visibility.

Supporting pages6 pts

Readable service, about and contact pages give visitors supporting details and provide crawlable context beyond a homepage. Readability is not a quality verdict.

Decision rule: Select up to three distinct same-origin links without query strings, prioritizing URL tokens faq/questions, about/team, contact/location, then service. Exclude common file downloads and action routes. Pass: all selected URLs return readable HTML, even if aliases resolve to the same page. Any unavailable, robots-blocked or render-dependent page is unknown. No eligible links is not applicable; separate service pages are not required.

Local contact details4 pts

For a location-based business, consistent name, address and phone help visitors identify and contact the right place. This scan cannot verify external listings.

Decision rule: Applied only when sampled markup establishes LocalBusiness ancestry or an eligible Organization with address and phone. Pass: name, street-address and phone signals occur on one sampled page; otherwise partial. This is co-presence, not entity matching or consistency. Service-area businesses should review applicability and never publish a private address for points. Local status cannot be inferred from absent markup.

Informational No score weight

Question-and-answer format0 pts

Question-and-answer formatting is an optional content observation. Useful pages do not need an FAQ; counting questions cannot establish answer quality, relevance or AI citations. No score impact.

Decision rule: Informational, 0 points. Count distinct question headings/summary/dt, structured Questions, or the first 150 server-rendered button/answer pairs (adjacent panel or aria-controls target), with answers of at least 40 characters. Questions require at least 8 characters and a terminal question mark (including full-width), selected Korean question endings, or an explicit Q label. Toggle labels are removed; common marketing/feedback prompts are excluded. Two or more is shown as pass, one as partial, none as not applicable. These are parser conventions, not quality thresholds; language coverage is limited.

Authorship markup0 pts

Authorship is useful where readers expect it, such as advice and articles. A detected name is not verified expertise or an E-E-A-T score, and a homepage or application need not have a byline. No score impact.

Decision rule: Informational, 0 points. Detect a non-placeholder author meta, rel=author/itemprop=author text, an author string or a named Person outside review data; exclude the business name. Presence passes; absence is not applicable. This does not verify a real person, credentials, plain-text biographies or E-E-A-T.

Social sharing metadata0 pts

Open Graph metadata describes a page when it is shared. It is useful presentation metadata, not evidence of search ranking or AI visibility.

Decision rule: Informational, 0 points. Pass: og:title, og:description and og:image are all present on the homepage. Partial: one or two. Fail: none. This concerns sharing previews, not ranking.

Language alternatives0 pts

On translated equivalents, hreflang helps engines choose the relevant language or region. A single-language site does not need it.

Decision rule: Informational, 0 points. Check up to 30 homepage alternate/hreflang links for a resolvable URL and language-tag shape (or x-default). All pass; malformed values are partial; absence is not applicable. Return links, translated equivalence and language accuracy are not validated.

llms.txt0 pts

llms.txt is a proposal for organizing content for language models. Its presence is not an established inclusion or ranking requirement.

Decision rule: Informational, 0 points. A 2xx, non-HTML /llms.txt longer than 20 trimmed characters is recorded as present. Missing/unusable text is not applicable; fetch errors are unknown. The unofficial proposal is not a search inclusion requirement; we do not validate its format or claim that it increases citations.

The GEO paper presented at KDD 2024 studies visibility in a controlled benchmark. It supports measuring answer citations separately; its results do not predict your traffic or supply our weights. Comparing our checklist with seven full client audits did not reproduce their ranking: those audits also measured demand, authority and real AI answers.

Google’s AI-feature guidance requires ordinary search eligibility; it does not require special AI files, FAQ markup or a particular schema. E-E-A-T guidance is not an automated score. Since version 2026-10-20.2, FAQ format and authorship markup have zero weight; earlier versions assigned 10 and 6 points. We removed those penalties because the formats are not universal requirements.

Ahrefs’ observational brand study reports associations with off-site mentions, not proof that a particular edit causes citations. A 2026 preprint on retrieval and citations also cautions against inferring within-site effects from cross-site associations. Neither validates this checklist. An actual visibility study needs a representative query set, repeated runs, engine/model and locale records, citations and uncertainty; three Sonar questions cannot provide that.

IndexNow notifies participating engines of changed URLs. Acceptance confirms receipt, not indexing or ranking. This anonymous scan does not measure IndexNow submission history. For observed outcomes, use Search Console, analytics and Bing Webmaster Tools’ AI Performance with the site owner’s access.

Start with what GEO means, read how to help ChatGPT find your business, or see our AI search services.

For AI agents

Run this check from your AI agent.

The free GEO MCP server lets your AI agent run this same check through MCP, the standard way agents connect to outside tools. Ask it to check a website, and it gets back the same findings you see here.

What your agent gets
Your top three gaps, every finding with its evidence, the scores with their coverage, and the limits of the check. As private JSON only your account can read.
What it won’t do
No email, newsletter or booking from a check. It doesn’t ask any AI assistant about your business.
What it takes
A free Sundayable account, a personal token, and an agent that can connect to a remote MCP server with its own header.

Questions

GEO and the free check, answered.

What is GEO?

GEO, or generative engine optimization, is work intended to help relevant content appear in AI-generated answers. It overlaps with SEO: accessible pages, useful information and clear business details. Neither approach guarantees a ranking, mention or citation. Our free checker reviews a small HTML sample; it does not measure those outcomes.

What does the free check look at?

Your homepage and up to three key pages. We check titles, headings and descriptions, structured data, search and answer crawlers such as OAI-SearchBot and PerplexityBot, your sitemap and canonical tags, contact signals in sampled markup and HTML, and mobile speed when Google PageSpeed is available. Training crawlers are shown separately and do not affect the score. Each check includes its evidence, explanation, fix and sources.

How do I get my scores and full report?

Enter your website to check your homepage and up to three key pages. You get SEO and GEO readiness scores and your top three gaps, with evidence and fixes. Continue with Google or enter your name and email to open the full report and PDF, and consent to receive your report by email.

Will fixing these double my traffic from ChatGPT?

No check can promise a number, and we won’t either. These scores summarize selected HTML checks. We do not measure traffic, demand or your competitors’ visibility, so we cannot estimate a traffic uplift from fixing them.

Does the check ask ChatGPT about my business?

After you submit your name, email and consent, we sample three buyer questions with Perplexity Sonar when capacity is available. The questions use your business category and location, inferred from your website. We show the answers, mentions, citations and other businesses named. It is a small sample from one engine, not a traffic measurement or a test of every assistant. Samples are reused for seven days; if the sample cannot run, the report says not measured.

Should I block GPTBot and other AI crawlers?

Search access and training access are different choices. OAI-SearchBot, PerplexityBot, Claude-SearchBot and Bingbot support search or answer retrieval. GPTBot and ClaudeBot concern training; Google-Extended is a separate use-control token. The report labels these roles and the provider’s documented rules. Robots permission alone cannot prove that a crawler fetched your page or that your business will be cited.

How long until changes show up?

Our HTML result is cached for 24 hours; check the saved timestamp and return after that window for a fresh scan. The optional AI sample is cached for seven days. Search engines choose when to recrawl and whether to index or cite a page. There is no fixed ranking or AI-mention timeline, and a higher checklist score does not guarantee either outcome.

What happens to my email?

We send one email with a link to your report and a PDF, and save your request in Sundayable’s contact records. It doesn’t sign you up for a newsletter. The report link works for 30 days. Our privacy policy has the details.

How long does the free check take?

The first website scan usually takes about 20 seconds. Slow or inaccessible pages can take longer or remain unmeasured. The optional AI answer sample runs after you enter your name, email and consent, and may take another minute. The report shows its status.

Is it really free?

Yes. No card and no trial. If you’d like help with the fixes, book a free consultation and we’ll go through your report with you.

See what’s holding your site back.

Usually about 20 seconds for the first check. Free. The full report comes by email.