# GEO Checklist

> Technical, content and reputation steps to get your site found, described accurately and cited by AI assistants such as ChatGPT, Gemini, Google AI Mode, Perplexity, Copilot and Claude. Every item comes with priority, effort, evidence level and a way to verify it.

This file is the Markdown version of <https://www.geodog.co/en/geo-checklist>. Open the page to tick items off and check your site automatically.

Last verified: November 1, 2026

## AI search bot access

If the bots that index or fetch pages on behalf of users cannot read your site, AI answers cannot cite it. This section checks robots.txt rules bot by bot.

### Serve robots.txt with HTTP 200 as plain text

<https://www.geodog.co/en/geo-checklist#robots-txt-reachable>

Priority: High priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** Bots read robots.txt first. If it returns a 5xx error, many crawlers, Google included, temporarily treat the whole site as off limits.

**How to do it:**

1. Check that /robots.txt at the root returns 200 as text/plain.
2. Keep any redirect to a single hop.
3. Confirm CDN and WAF rules do not block this file for bots.

**How to verify:** curl -sI https://{site}/robots.txt should return HTTP 200 and Content-Type: text/plain.

**AI prompt:**

```text
Check https://{site}/robots.txt: what status code, Content-Type, redirects and file size does it return? List syntax errors and rules that accidentally block bots, and propose a corrected version.
```

**Sources:** <https://www.rfc-editor.org/rfc/rfc9309.html>

### Split bots by role: search, user fetch, training

<https://www.geodog.co/en/geo-checklist#robots-bot-policy-by-role>

Priority: High priority. Effort: Quick win. Evidence: Official source. Roles: SEO, Business.

**Why it matters:** Providers use separate bot names for search, user-initiated fetches and model training. Blocking them all at once to opt out of training also removes you from AI search.

**How to do it:**

1. List each provider’s official bot tokens.
2. Keep search and user-fetch bots allowed for visibility.
3. Make a separate business decision for training bots.
4. Implement the decisions as separate User-agent groups in robots.txt.

**How to verify:** robots.txt explicitly allows OAI-SearchBot, Claude-SearchBot and PerplexityBot, and has a deliberate rule for GPTBot and ClaudeBot.

**AI prompt:**

```text
Read https://{site}/robots.txt and classify every AI bot rule by role (search index, user fetch, training, ads). Flag rules meant to control training that also hurt search visibility, and draft a role-based robots.txt.
```

**Sources:** <https://developers.openai.com/api/docs/bots>, <https://support.claude.com/en/articles/8896518>

### Keep Googlebot allowed: AI Overviews and AI Mode depend on it

<https://www.geodog.co/en/geo-checklist#robots-googlebot-ai-features>

Priority: High priority. Effort: Quick win. Evidence: Official source. Roles: SEO.

**Why it matters:** Google uses no separate bot for its AI features. A page only needs to be crawled by Googlebot and indexed to be eligible for AI Overviews and AI Mode.

**How to do it:**

1. Check that robots.txt allows Googlebot on important paths.
2. Do not block CSS and JS files.
3. Run a live test with the URL Inspection tool.

**How to verify:** Search Console \> URL Inspection \> Test live URL reports “URL is available to Google”.

**AI prompt:**

```text
For {site}, check via robots.txt and meta tags that Googlebot can crawl key pages, category pages and CSS/JS assets. Explain any rule that would make pages ineligible for AI Overviews or AI Mode.
```

**Sources:** <https://developers.google.com/search/docs/appearance/ai-features>

### Allow OAI-SearchBot: required for ChatGPT search

<https://www.geodog.co/en/geo-checklist#robots-oai-searchbot>

Priority: High priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** OAI-SearchBot indexes pages for ChatGPT search results. Blocked sites can at most appear as navigational links, and robots.txt changes take about 24 hours to apply.

**How to do it:**

1. Add a User-agent: OAI-SearchBot group to robots.txt.
2. Allow key paths and disallow only low-value areas.
3. Do not block OpenAI’s published IP ranges in your WAF.
4. Re-test 24 hours after a change.

**How to verify:** curl -A "OAI-SearchBot" -sI https://{site}/ returns 200 and robots.txt does not disallow OAI-SearchBot.

**AI prompt:**

```text
Find the rule group that applies to OAI-SearchBot in https://{site}/robots.txt. Tell me whether the homepage, category and content pages are open to it, and write corrected rules if anything blocks it.
```

**Sources:** <https://developers.openai.com/api/docs/bots>

### Do not block ChatGPT-User at the server

<https://www.geodog.co/en/geo-checklist#robots-chatgpt-user>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** ChatGPT-User fetches a page when a user asks for it in a conversation. OpenAI says robots.txt rules may not apply to it, so it is not a search control, but a WAF block returns an empty answer to the user.

**How to do it:**

1. Check WAF and rate-limit rules rather than robots.txt.
2. Allowlist OpenAI’s chatgpt-user.json IP ranges.
3. Test that real content is served instead of a block page.

**How to verify:** Server logs show ChatGPT-User requests getting 200; the 403/429 share is low.

**AI prompt:**

```text
Explain step by step how to audit robots.txt, WAF and rate-limit settings on {site} that could stop ChatGPT-User from fetching pages, and give a sample grep command to check this in access logs.
```

**Sources:** <https://developers.openai.com/api/docs/bots>

### Allow Claude-SearchBot for Claude search results

<https://www.geodog.co/en/geo-checklist#robots-claude-searchbot>

Priority: High priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** Claude-SearchBot builds the index used by Claude’s web search. Blocking it reduces how often Claude can cite your pages.

**How to do it:**

1. Add a User-agent: Claude-SearchBot group to robots.txt.
2. Allow important paths.
3. Use a reasonable Crawl-delay if needed; Anthropic supports it.

**How to verify:** A robots.txt tester or parser reports key URLs as “allowed” for Claude-SearchBot.

**AI prompt:**

```text
Separate the rules in https://{site}/robots.txt that apply to Claude-SearchBot, Claude-User and ClaudeBot. If anything blocks visibility in Claude search, write the corrected rules.
```

**Sources:** <https://support.claude.com/en/articles/8896518>

### Let Claude-User fetch pages on user request

<https://www.geodog.co/en/geo-checklist#robots-claude-user>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** Claude-User fetches a page when a user asks Claude to read it, and it respects robots.txt. If it is blocked, users get your information from second-hand sources instead.

**How to do it:**

1. Check that no robots.txt rule blocks Claude-User.
2. Keep Anthropic’s published bot IP list allowed in your WAF.
3. Test by asking Claude to read a sample URL.

**How to verify:** Ask Claude to “read and summarize https://{site}/”; it should summarize the actual page.

**AI prompt:**

```text
Does any rule in https://{site}/robots.txt block Claude-User directly or through the * group? If so, show the exact line and how to fix it.
```

**Sources:** <https://support.claude.com/en/articles/8896518>

### Allow PerplexityBot to enter Perplexity’s index

<https://www.geodog.co/en/geo-checklist#robots-perplexitybot>

Priority: High priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** PerplexityBot builds the index Perplexity cites in answers and is not used for model training. Blocking it only costs visibility.

**How to do it:**

1. Add a User-agent: PerplexityBot group to robots.txt.
2. Keep the perplexitybot.json IP ranges allowed in your WAF.
3. Test with a brand query in Perplexity after the change.

**How to verify:** Ask Perplexity a question that includes “site:{site}”; your pages should appear in the sources.

**AI prompt:**

```text
Review the PerplexityBot and Perplexity-User rules in https://{site}/robots.txt. Report anything that would stop Perplexity from citing the site and suggest fixes.
```

**Sources:** <https://docs.perplexity.ai/docs/resources/perplexity-crawlers.md>

### Avoid blocking Perplexity-User in your WAF by accident

<https://www.geodog.co/en/geo-checklist#robots-perplexity-user>

Priority: Low priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** Perplexity-User fetches a page when a user asks for it, and Perplexity says it generally ignores robots.txt. The control point is the WAF; unnecessary blocks give users incomplete answers.

**How to do it:**

1. Check the perplexity-user.json IP list.
2. Keep these requests allowed in bot management rules.
3. If you want to block it, do it deliberately in the WAF and document it.

**How to verify:** Count status codes for Perplexity-User requests in logs; the 403 share should be low.

**AI prompt:**

```text
Write a checklist for {site} to identify Perplexity-User traffic and confirm the WAF is not blocking it by mistake, including IP list checks and log analysis steps.
```

**Sources:** <https://docs.perplexity.ai/docs/resources/perplexity-crawlers.md>

### Allow Bingbot: Bing and Copilot answers rely on it

<https://www.geodog.co/en/geo-checklist#robots-bingbot>

Priority: High priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** Bingbot feeds Bing search and the index Microsoft Copilot grounds on. Because Bing’s index is used by other AI search products too, a block costs visibility on several surfaces.

**How to do it:**

1. Check that no robots.txt rule blocks Bingbot.
2. Use URL Inspection in Bing Webmaster Tools to see crawl status.
3. If you use Crawl-delay, keep it low.

**How to verify:** Bing Webmaster Tools \> URL Inspection reports the homepage as indexed.

**AI prompt:**

```text
Review the rules and Crawl-delay that apply to Bingbot in https://{site}/robots.txt. Report anything that limits visibility in Bing and Copilot.
```

**Sources:** <https://www.bing.com/webmasters/help/which-crawlers-does-bing-use-8c184ec0>

### Keep DuckAssistBot allowed for DuckDuckGo AI answers

<https://www.geodog.co/en/geo-checklist#robots-duckassistbot>

Priority: Low priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** DuckAssistBot fetches pages in real time for DuckDuckGo’s AI-assisted answers, which cite their sources; DuckDuckGo says the data is not used to train AI models. robots.txt changes take about 72 hours to apply. It is a small channel, but allowing it costs nothing.

**How to do it:**

1. Check that no robots.txt rule blocks DuckAssistBot.
2. Confirm the generic \* group does not block it indirectly.

**How to verify:** A robots.txt parser reports the homepage as “allowed” for DuckAssistBot.

**AI prompt:**

```text
According to https://{site}/robots.txt, can DuckAssistBot crawl the homepage and content pages? Give a short answer and a corrected rule if needed.
```

**Sources:** <https://duckduckgo.com/duckduckgo-help-pages/results/duckassistbot>

### Do not block MistralAI-User, MistralAI-Index and similar bots

<https://www.geodog.co/en/geo-checklist#robots-mistralai-user>

Priority: Low priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** Mistral’s assistant uses MistralAI-User, which follows robots.txt, to fetch pages on user request, and MistralAI-Index to build its search index. Neither is used for training; the training crawler is the separate MistralAI-Training.

**How to do it:**

1. Check that no robots.txt or WAF rule blocks MistralAI-User or MistralAI-Index.
2. Apply your training decision to MistralAI-Training in its own group.
3. Review other user-fetch bots such as Meta-ExternalFetcher the same way.

**How to verify:** Logs show MistralAI-User and MistralAI-Index requests getting 200.

**AI prompt:**

```text
Explain how to check whether bots such as MistralAI-User, MistralAI-Index and Meta-ExternalFetcher are blocked by robots.txt or the WAF on {site}, and write a separate training rule example for MistralAI-Training.
```

**Sources:** <https://docs.mistral.ai/robots>, <https://developers.facebook.com/docs/sharing/webmasters/web-crawlers/>

### Publish a robots.txt on every subdomain

<https://www.geodog.co/en/geo-checklist#robots-per-subdomain>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** robots.txt only applies to the host it is served on. If blog.{site} or shop.{site} has no file or returns errors, bots behave differently there.

**How to do it:**

1. List all subdomains and protocols.
2. Check that /robots.txt returns 200 on each.
3. Apply the same bot policy consistently in every file.

**How to verify:** curl -sI https://\<subdomain\>.{site}/robots.txt returns 200 for each subdomain.

**AI prompt:**

```text
Guess the common subdomains of {site} (www, blog, shop, docs, help) and write a shell command that checks robots.txt on each. Explain how to fix any inconsistencies in the results.
```

**Sources:** <https://support.claude.com/en/articles/8896518>, <https://www.rfc-editor.org/rfc/rfc9309.html>

### Account for bot-specific groups overriding the generic rules

<https://www.geodog.co/en/geo-checklist#robots-group-precedence>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** When a bot has its own User-agent group, it ignores the \* group entirely. Disallow lines not repeated in the specific group no longer apply to that bot, and missing Allow lines can create accidental blocks.

**How to do it:**

1. Read each specific group on its own.
2. Copy necessary Disallow lines from the generic group into specific groups.
3. Test changes with a robots.txt parser.

**How to verify:** Test sample URLs for each bot with Google’s open-source robots.txt parser or a testing tool.

**AI prompt:**

```text
Interpret https://{site}/robots.txt according to RFC 9309. For each specific User-agent group, show in a table which URLs end up allowed or blocked differently from the * group.
```

**Sources:** <https://www.rfc-editor.org/rfc/rfc9309.html>

## Training bots and usage preferences

Bots that collect data for model training are controlled separately from search visibility. The goal is not to allow everything but to make a deliberate, documented decision for each.

### Make a deliberate allow or block decision for GPTBot

<https://www.geodog.co/en/geo-checklist#robots-gptbot-decision>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: Business, SEO.

**Why it matters:** GPTBot collects data to train OpenAI models. Blocking it does not affect ChatGPT search visibility, so the decision should rest only on content licensing and brand preference.

**How to do it:**

1. Weigh the benefit of being represented in model knowledge.
2. Write the decision down.
3. Set the User-agent: GPTBot group in robots.txt accordingly.

**How to verify:** robots.txt has an explicit GPTBot group, and the decision is recorded with a date.

**AI prompt:**

```text
Compare the pros and cons of allowing versus blocking GPTBot for {site} in my industry. Explain how it differs from OAI-SearchBot and write a robots.txt example for each option.
```

**Sources:** <https://developers.openai.com/api/docs/bots>

### Decide on ClaudeBot training separately from Claude search

<https://www.geodog.co/en/geo-checklist#robots-claudebot-decision>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: Business, SEO.

**Why it matters:** ClaudeBot collects data to train Anthropic models, while Claude search uses Claude-SearchBot. Managing them separately lets you apply a training preference without losing visibility.

**How to do it:**

1. Decide whether to allow or block ClaudeBot.
2. Keep Claude-SearchBot and Claude-User allowed in their own groups.
3. Limit load with Crawl-delay if needed.

**How to verify:** robots.txt has separate groups for ClaudeBot and Claude-SearchBot.

**AI prompt:**

```text
Check whether the ClaudeBot rule in https://{site}/robots.txt affects Claude-SearchBot, and write an example that blocks training while keeping search open.
```

**Sources:** <https://support.claude.com/en/articles/8896518>

### Decide on Google-Extended knowing it does not affect Search

<https://www.geodog.co/en/geo-checklist#robots-google-extended-decision>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: Business, SEO.

**Why it matters:** Google-Extended is not a crawler but a control token for training and grounding use in Gemini and Vertex AI. It does not change Search ranking or visibility in AI Overviews or AI Mode.

**How to do it:**

1. Weigh the value of being used as a source in Gemini apps.
2. Implement the decision with User-agent: Google-Extended in robots.txt.
3. Explain to the team that it cannot remove you from AI Overviews.

**How to verify:** The Google-Extended line in robots.txt matches the documented decision.

**AI prompt:**

```text
Explain what Google-Extended controls and does not control (Search, AI Overviews, AI Mode) for {site}, and give me a short decision tree.
```

**Sources:** <https://developers.google.com/crawling/docs/crawlers-fetchers/google-common-crawlers>, <https://developers.google.com/search/docs/appearance/ai-features>

### Decide on Applebot-Extended without blocking Applebot

<https://www.geodog.co/en/geo-checklist#robots-applebot-extended>

Priority: Low priority. Effort: Quick win. Evidence: Official source. Roles: Business.

**Why it matters:** Applebot-Extended is a token that controls use of your content in Apple’s AI features and does not crawl itself. Blocking Applebot instead also removes you from Siri and Spotlight suggestions.

**How to do it:**

1. Keep Applebot allowed.
2. Decide whether to allow or block Applebot-Extended.
3. Record the decision.

**How to verify:** robots.txt does not block Applebot and has a deliberate Applebot-Extended rule.

**AI prompt:**

```text
Review the Applebot and Applebot-Extended rules in https://{site}/robots.txt and flag anything that hurts Siri and Spotlight visibility.
```

**Sources:** <https://support.apple.com/en-us/119829>

### Decide on CCBot (Common Crawl)

<https://www.geodog.co/en/geo-checklist#robots-ccbot>

Priority: Low priority. Effort: Quick win. Evidence: Official source. Roles: Business.

**Why it matters:** The Common Crawl archive is used in many model training pipelines. Blocking CCBot keeps your content out of these open datasets but does not affect search bots.

**How to do it:**

1. Weigh the pros and cons of being in open datasets.
2. Set the User-agent: CCBot group in robots.txt.

**How to verify:** robots.txt has a deliberate rule for CCBot.

**AI prompt:**

```text
Explain how allowing CCBot affects model knowledge and brand representation for a site like {site}, then suggest the right robots.txt lines.
```

**Sources:** <https://commoncrawl.org/ccbot>

### Decide separately on Meta-ExternalAgent and Meta-ExternalFetcher

<https://www.geodog.co/en/geo-checklist#robots-meta-externalagent>

Priority: Low priority. Effort: Quick win. Evidence: Official source. Roles: Business.

**Why it matters:** Meta-ExternalAgent crawls for Meta’s AI models, while Meta-ExternalFetcher fetches pages on user request. Keeping the latter allowed is enough for visibility to Meta AI users.

**How to do it:**

1. Make your training decision for Meta-ExternalAgent.
2. Do not block Meta-ExternalFetcher.
3. Record the decisions.

**How to verify:** robots.txt has separate, documented rules for both bots.

**AI prompt:**

```text
Review the Meta bot rules in https://{site}/robots.txt and write an example that blocks the training crawler while keeping the user-fetch bot allowed.
```

**Sources:** <https://developers.facebook.com/docs/sharing/webmasters/web-crawlers/>

### Write a deliberate rule for Bytespider

<https://www.geodog.co/en/geo-checklist#robots-bytespider>

Priority: Low priority. Effort: Quick win. Evidence: Emerging standard. Roles: Business.

**Why it matters:** Bytespider is ByteDance’s crawler for model training and has been widely reported to crawl heavily and not always respect robots.txt. Without a rule, the default \* group applies.

**How to do it:**

1. Measure Bytespider volume in server logs.
2. Decide to allow or block and write it into robots.txt.
3. Rate-limit it in the WAF if needed.

**How to verify:** Bytespider volume in logs and its robots.txt rule match the documented decision.

**AI prompt:**

```text
Write a command to find and measure Bytespider traffic in the server logs of {site}, then recommend robots.txt and WAF settings.
```

### Decide on Amazonbot separately and keep Amzn-SearchBot allowed

<https://www.geodog.co/en/geo-checklist#robots-amazonbot>

Priority: Low priority. Effort: Quick win. Evidence: Official source. Roles: Business.

**Why it matters:** Amazon says content Amazonbot collects may be used to train Amazon AI models. Search experiences in Amazon products such as Alexa rely on Amzn-SearchBot instead, and user-requested fetches on Amzn-User. Blocking Amazonbot does not remove that visibility.

**How to do it:**

1. Assess how important the Amazon channel and Alexa visibility are for you.
2. Implement your training decision for Amazonbot in its own robots.txt group.
3. Check that Amzn-SearchBot and Amzn-User are not blocked.

**How to verify:** robots.txt has a deliberate rule for Amazonbot and does not block Amzn-SearchBot.

**AI prompt:**

```text
Explain the roles of Amazonbot, Amzn-SearchBot and Amzn-User for {site}, and suggest robots.txt lines that block training while keeping the site visible in Amazon search experiences such as Alexa.
```

**Sources:** <https://developer.amazon.com/amazonbot>

### Do not block OAI-AdsBot if you run ChatGPT ads

<https://www.geodog.co/en/geo-checklist#robots-oai-adsbot>

Priority: Low priority. Effort: Quick win. Evidence: Official source. Roles: Business.

**Why it matters:** OAI-AdsBot only visits pages submitted as ads to validate them and is not used for training. If blocked, ad landing pages may not be approved.

**How to do it:**

1. Check whether you run ChatGPT ad campaigns.
2. Keep landing page paths open to OAI-AdsBot.

**How to verify:** robots.txt does not block OAI-AdsBot from ad landing pages.

**AI prompt:**

```text
According to https://{site}/robots.txt, can OAI-AdsBot reach the ad landing pages? Briefly explain what this bot does and that it is unrelated to training.
```

**Sources:** <https://developers.openai.com/api/docs/bots>

### Know GoogleOther, Google-CloudVertexBot and Storebot-Google

<https://www.geodog.co/en/geo-checklist#robots-google-special-crawlers>

Priority: Low priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** GoogleOther runs research and development crawls, Storebot-Google serves shopping surfaces, and Google-CloudVertexBot only crawls when a site owner requests it for Vertex AI Agents. Wrong blocks can break shopping data.

**How to do it:**

1. Separate these bots’ requests in your logs.
2. If you run an online store, do not block Storebot-Google.
3. If you do not use Vertex AI, do not expect CloudVertexBot traffic; verify its source if you see it.

**How to verify:** Check status codes for these bots in server logs; Storebot-Google should get 200.

**AI prompt:**

```text
Explain how to identify GoogleOther, Storebot-Google and Google-CloudVertexBot requests in the logs of {site} and the right robots.txt approach for each.
```

**Sources:** <https://developers.google.com/crawling/docs/crawlers-fetchers/google-common-crawlers>

### Declare usage preferences with Content Signals

<https://www.geodog.co/en/geo-checklist#content-signals-policy>

Priority: Low priority. Effort: Quick win. Evidence: Emerging standard. Roles: Business, Developer.

**Why it matters:** Cloudflare’s Content Signals policy expresses search, ai-input and ai-train preferences in robots.txt. It is not a standard and compliance is not guaranteed, but it records your intent clearly.

**How to do it:**

1. Decide your preferences for search, ai-input and ai-train.
2. Add a Content-Signal line to robots.txt.
3. Note for the team that it is not an access control.

**How to verify:** robots.txt contains a line such as “Content-Signal: search=yes, ai-input=yes, ai-train=no”.

**AI prompt:**

```text
Explain what the search, ai-input and ai-train signals mean for {site}, suggest a Content-Signal line based on my goals and state its limits.
```

**Sources:** <https://blog.cloudflare.com/content-signals-policy/>, <https://contentsignals.org/>

### Track the IETF AIPREF draft and trial it lightly

<https://www.geodog.co/en/geo-checklist#aipref-content-usage>

Priority: Low priority. Effort: Quick win. Evidence: Emerging standard. Roles: Developer.

**Why it matters:** The IETF AIPREF working group is drafting a Content-Usage header and a content-usage robots.txt rule. Google documents a plan to support the AI-training preference through a \_\_usage\_ai-training user agent in early 2027. It is not a standard yet.

**How to do it:**

1. Follow the latest draft version.
2. Express your preference experimentally in robots.txt and an HTTP header, if you wish.
3. Update the rule once the standard is final.

**How to verify:** A tracking note exists and, if applied, curl -sI shows the Content-Usage header.

**AI prompt:**

```text
Summarize the current state of the IETF AIPREF draft and write an experimental Content-Usage header and content-usage robots.txt rule for {site}, noting the risks.
```

**Sources:** <https://datatracker.ietf.org/doc/draft-ietf-aipref-vocab/>, <https://developers.google.com/crawling/docs/crawlers-fetchers/google-common-crawlers>

### Document the bot policy with an owner and review date

<https://www.geodog.co/en/geo-checklist#ai-bot-policy-documented>

Priority: Medium priority. Effort: Quick win. Evidence: Emerging standard. Roles: Business, SEO.

**Why it matters:** New bots and rules keep appearing. A written policy stops a release from accidentally blocking search bots and keeps decisions from being forgotten.

**How to do it:**

1. Create a table with decision, rationale and owner per bot.
2. Require code review for robots.txt changes.
3. Set a quarterly review date.

**How to verify:** The team wiki has a dated bot policy table that matches robots.txt exactly.

**AI prompt:**

```text
Create a bot policy table template for {site} covering AI bots, with columns for bot name, provider, role, decision, rationale, owner and review date.
```

## Indexing and snippet eligibility

Google says AI features need no special markup: a page must be indexed and eligible to show a snippet. This section checks those basic conditions.

### Never leave noindex on important pages by mistake

<https://www.geodog.co/en/geo-checklist#no-noindex>

Priority: High priority. Effort: Quick win. Evidence: Official source. Roles: Developer, SEO.

**Why it matters:** A page with noindex appears neither in classic results nor in AI Overviews and AI Mode. A noindex left over from staging is the most common cause of lost visibility.

**How to do it:**

1. Scan templates for meta robots and X-Robots-Tag headers.
2. Add a noindex check to the release process.
3. Review “Excluded by noindex tag” in Search Console.

**How to verify:** Neither curl -sI https://{site}/ nor the page source contains noindex.

**AI prompt:**

```text
Check meta robots tags and X-Robots-Tag headers on the homepage and key templates of {site}. List any page with noindex or none and guess why.
```

**Sources:** <https://developers.google.com/search/docs/crawling-indexing/robots-meta-tag>, <https://developers.google.com/search/docs/appearance/ai-features>

### Do not restrict quoting with nosnippet or low max-snippet

<https://www.geodog.co/en/geo-checklist#snippet-not-limited>

Priority: High priority. Effort: Quick win. Evidence: Official source. Roles: SEO.

**Why it matters:** Google applies nosnippet, max-snippet and data-nosnippet to its AI features too. Over-restricting stops your page from being used in answers.

**How to do it:**

1. Search templates for nosnippet and max-snippet values.
2. Remove unnecessary limits or use max-snippet:-1.
3. Keep restrictions only where there is a legal reason.

**How to verify:** The page source has no nosnippet; any max-snippet is -1 or high enough.

**AI prompt:**

```text
Review the use of nosnippet, max-snippet, max-image-preview and data-nosnippet on {site} pages, and report settings that needlessly limit quoting in AI answers.
```

**Sources:** <https://developers.google.com/search/docs/crawling-indexing/robots-meta-tag>, <https://developers.google.com/search/docs/appearance/ai-features>

### Hide sensitive parts with data-nosnippet, not the whole page

<https://www.geodog.co/en/geo-checklist#data-nosnippet-targeted>

Priority: Low priority. Effort: Quick win. Evidence: Official source. Roles: Developer, SEO.

**Why it matters:** You do not need to restrict an entire page to hide small parts such as legal text. data-nosnippet removes only the marked element from snippets.

**How to do it:**

1. Identify the parts that must be hidden.
2. Add the data-nosnippet attribute to those elements.
3. Remove page-level nosnippet.

**How to verify:** data-nosnippet appears only on the targeted span, div or section elements in the source.

**AI prompt:**

```text
Which parts of {site} pages might make sense to hide with data-nosnippet? Give example HTML and explain the difference from page-level restrictions.
```

**Sources:** <https://developers.google.com/search/docs/crawling-indexing/robots-meta-tag>

### Allow large image previews with max-image-preview:large

<https://www.geodog.co/en/geo-checklist#max-image-preview-large>

Priority: Low priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** AI answers and surfaces like Discover can use large image previews. A restricted setting makes your images small or absent there.

**How to do it:**

1. Add \<meta name="robots" content="max-image-preview:large"\> to templates.
2. Handle pages without image usage rights separately.

**How to verify:** The page source contains max-image-preview:large.

**AI prompt:**

```text
Check the max-image-preview value in {site} templates and briefly explain why it should be large.
```

**Sources:** <https://developers.google.com/search/docs/crawling-indexing/robots-meta-tag>

### Know and track how many pages Google has indexed

<https://www.geodog.co/en/geo-checklist#index-coverage-google>

Priority: High priority. Effort: A few days. Evidence: Official source. Roles: SEO.

**Why it matters:** A page that is not indexed cannot be a source for AI Overviews or AI Mode. Sudden drops in indexed pages are usually the first sign of a technical problem.

**How to do it:**

1. Record the Search Console Pages report monthly.
2. Use separate sitemaps for key templates to track index rates.
3. Review “Crawled - currently not indexed”.

**How to verify:** In Search Console \> Indexing \> Pages, key sitemaps show an indexing rate above 90%.

**AI prompt:**

```text
Help me interpret the Search Console Pages report for {site}: which exclusion reasons matter, which are normal, and what should I fix first? Suggest an order of checks.
```

**Sources:** <https://support.google.com/webmasters/answer/7440203>

### Check your coverage in the Bing index

<https://www.geodog.co/en/geo-checklist#index-coverage-bing>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: SEO.

**Why it matters:** Bing’s index grounds Copilot answers and is reportedly used by other AI search products. A site doing well in Google can still be under-indexed in Bing.

**How to do it:**

1. Review Site Explorer and index reports in Bing Webmaster Tools.
2. Submit missing URLs or use IndexNow.
3. Fix crawl errors.

**How to verify:** Bing Webmaster Tools \> Site Explorer shows indexed URLs across key directories.

**AI prompt:**

```text
Walk me through which Bing Webmaster Tools reports to use to diagnose indexing issues for {site}, and how to compare with Google.
```

**Sources:** <https://www.bing.com/webmasters/help/webmaster-guidelines-30fba23a>

### Use a correct, absolute canonical tag on every page

<https://www.geodog.co/en/geo-checklist#canonical-tags>

Priority: High priority. Effort: Quick win. Evidence: Official source. Roles: Developer, SEO.

**Why it matters:** The canonical tag says which of several duplicate URLs should be shown. A wrong canonical can make another URL get picked instead of the page you want cited.

**How to do it:**

1. Add a self-referencing absolute canonical to each page.
2. Point variant and parameter URLs to the main version.
3. Check that canonical targets return 200 and are not noindex.

**How to verify:** In Search Console URL Inspection, the user-declared and Google-selected canonicals match.

**AI prompt:**

```text
Check the canonical tags on the homepage, a category page and a content page of {site}. List errors such as relative URLs, redirected targets or noindex targets.
```

**Sources:** <https://developers.google.com/search/docs/crawling-indexing/consolidate-duplicate-urls>

### Consolidate http, https, www and trailing-slash variants

<https://www.geodog.co/en/geo-checklist#host-variants-consolidated>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** Serving the same page at several addresses splits signals and lets bots cite different versions.

**How to do it:**

1. Choose one preferred host and protocol.
2. Redirect other variants to it with a 301.
3. Fix internal links to use the preferred version.

**How to verify:** curl -sI http://{site}/ and https://www.{site}/ return a single 301 hop to the preferred URL.

**AI prompt:**

```text
Write a set of curl commands that test http/https, www/non-www and trailing-slash variants of {site}, and explain the correct expected results.
```

**Sources:** <https://developers.google.com/search/docs/crawling-indexing/consolidate-duplicate-urls>

### Merge duplicate and thin pages

<https://www.geodog.co/en/geo-checklist#duplicate-content-merged>

Priority: Medium priority. Effort: A few days. Evidence: Official source. Roles: SEO, Content.

**Why it matters:** Thin pages that repeat the same topic waste crawl budget and make it unclear which page a model should cite. One strong page is easier to quote.

**How to do it:**

1. List pages sharing the same title or description.
2. Merge content into the strongest page.
3. Redirect the others with a 301.

**How to verify:** A site crawler reports close to zero duplicate titles and meta descriptions.

**AI prompt:**

```text
Prepare a crawl plan for {site} to find duplicate or thin content: which metrics to use, which pages to merge and how to set up redirects.
```

**Sources:** <https://developers.google.com/search/docs/crawling-indexing/consolidate-duplicate-urls>

### Keep parameter and filter URLs out of the index

<https://www.geodog.co/en/geo-checklist#url-parameters-controlled>

Priority: Medium priority. Effort: A few days. Evidence: Official source. Roles: Developer, SEO.

**Why it matters:** Sorting, filter and tracking parameters can create endless URLs. These duplicates use up crawl budget and lead to the wrong URL being cited.

**How to do it:**

1. Decide which filter combinations deserve indexing.
2. Use canonical or robots.txt rules for the rest.
3. Do not use tracking parameters in internal links.

**How to verify:** The Search Console Pages report shows few parameter URLs; site:{site} inurl:? returns few results.

**AI prompt:**

```text
Create a table for {site} that classifies URL parameters (sort, filter, utm, session) and recommends canonical, noindex or robots.txt handling for each.
```

**Sources:** <https://developers.google.com/search/docs/crawling-indexing/consolidate-duplicate-urls>

### Prevent staging sites and duplicate domains from being indexed

<https://www.geodog.co/en/geo-checklist#cross-domain-duplicates>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** If test servers or old domains serve a copy of your site, AI answers may cite the wrong or outdated copy.

**How to do it:**

1. Protect staging environments with a password.
2. Redirect old domains to the main site with a 301.
3. Search regularly for exact copies of your content elsewhere.

**How to verify:** Search an exact sentence from your site in quotes; only {site} should appear.

**AI prompt:**

```text
Which searches and tools should I use to find copies of {site} content on other domains, staging environments or scraper sites? Give me a checklist.
```

### Make sure your official site ranks first for your brand name

<https://www.geodog.co/en/geo-checklist#brand-query-first>

Priority: High priority. Effort: Quick win. Evidence: Experimental. Roles: SEO.

**Why it matters:** If your official site is not first for your brand query, search engines and models see your entity as weak or ambiguous. This carries over into AI answers to brand questions.

**How to do it:**

1. Search your brand name in Google and Bing.
2. If you are not first, strengthen entity signals.
3. Use a descriptive site name that sets you apart from others with the same name.

**How to verify:** https://{site}/ is the first organic result for the brand name in Google and Bing.

**AI prompt:**

```text
List the reasons (name collisions, missing entity signals, technical issues) that could stop the official site from ranking first for brand searches of {site}, and suggest fixes.
```

## Crawl and server health

When bots get errors, slow or misleading responses, they crawl less or skip your pages. This section checks status codes, redirects and consistency.

### Serve every page over HTTPS

<https://www.geodog.co/en/geo-checklist#https-everywhere>

Priority: High priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** HTTPS is a trust and ranking signal, and many bots and agents avoid insecure connections. Mixed protocols also create duplicate URLs.

**How to do it:**

1. Install a valid TLS certificate with auto-renewal.
2. Redirect all HTTP requests to HTTPS with a 301.
3. Add an HSTS header.

**How to verify:** curl -sI http://{site}/ returns a 301 to https and the certificate is valid.

**AI prompt:**

```text
Audit the HTTPS setup of {site}: certificate validity, HTTP-to-HTTPS redirects, HSTS header and any http links in internal navigation.
```

**Sources:** <https://developers.google.com/search/docs/appearance/page-experience>

### Do not load http resources on HTTPS pages

<https://www.geodog.co/en/geo-checklist#no-mixed-content>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** Browsers block mixed content, so when images or scripts fail to load, agents and rendering bots see an incomplete page.

**How to do it:**

1. Search the source for src and href values starting with http://.
2. Move resources to https or use relative paths.
3. Add Content-Security-Policy: upgrade-insecure-requests.

**How to verify:** Chrome DevTools Console shows no “Mixed Content” warnings.

**AI prompt:**

```text
Find images, scripts or stylesheets loaded over http:// in the homepage source of {site} and explain how to fix them.
```

### Keep 5xx server errors close to zero

<https://www.geodog.co/en/geo-checklist#server-errors-zero>

Priority: High priority. Effort: A few days. Evidence: Official source. Roles: Developer.

**Why it matters:** Bots that hit frequent 5xx errors slow their crawling. Assistants fetching a page on user request answer without your content when they get an error.

**How to do it:**

1. Track the 5xx rate in Search Console Crawl Stats and server logs.
2. Find the failing endpoints and time windows.
3. Fix capacity or caching issues.

**How to verify:** Search Console \> Settings \> Crawl stats shows a server error rate below 1%.

**AI prompt:**

```text
Write a command that groups 5xx responses to bot requests by user agent in the server logs of {site}, and explain how to interpret the results.
```

**Sources:** <https://developers.google.com/crawling/docs/troubleshooting/http-status-codes>, <https://support.google.com/webmasters/answer/9679690>

### Return real 404 or 410 for removed pages, no soft 404s

<https://www.geodog.co/en/geo-checklist#status-codes-correct>

Priority: Medium priority. Effort: A few days. Evidence: Official source. Roles: Developer.

**Why it matters:** Pages that show “not found” but return 200 pollute the index as soft 404s, and broken internal links send bots to dead ends.

**How to do it:**

1. Test that a non-existent URL returns 404.
2. Fix the soft 404 list in Search Console.
3. Update or redirect internal links to 404 targets.

**How to verify:** curl -sI https://{site}/no-such-page-xyz returns 404 or 410.

**AI prompt:**

```text
Create an audit plan for {site} to find soft 404s, broken internal links and indexed 404 pages, naming the tools and report fields to use.
```

**Sources:** <https://developers.google.com/crawling/docs/troubleshooting/http-status-codes>

### Use single-hop 301 redirects for permanent moves

<https://www.geodog.co/en/geo-checklist#redirects-single-hop>

Priority: Medium priority. Effort: A few days. Evidence: Official source. Roles: Developer.

**Why it matters:** Long redirect chains make bots give up and lose signals. A temporary 302 can keep the old URL in the index.

**How to do it:**

1. List redirect chains with a crawler.
2. Collapse each chain to one 301 straight to the final target.
3. Use 301 or 308, not 302, for permanent moves.

**How to verify:** curl -sIL https://{site}/old-url shows at most one redirect.

**AI prompt:**

```text
Suggest a crawl method to find redirect chains and unnecessary 302s on {site}, and give examples of corrected redirect rules.
```

**Sources:** <https://developers.google.com/search/docs/crawling-indexing/301-redirects>

### Use server redirects instead of meta refresh and JavaScript redirects

<https://www.geodog.co/en/geo-checklist#no-meta-refresh>

Priority: Low priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** Most AI bots do not run JavaScript and do not reliably follow meta refresh. Server-side redirects are understood by every client.

**How to do it:**

1. Search the source for http-equiv="refresh" and window.location.
2. Replace them with server-side 301s.

**How to verify:** No page source contains http-equiv="refresh".

**AI prompt:**

```text
Explain how to find meta refresh or JavaScript redirects on {site} and convert them to server-side 301s.
```

**Sources:** <https://developers.google.com/search/docs/crawling-indexing/301-redirects>

### Do not serve critical content inside iframes

<https://www.geodog.co/en/geo-checklist#no-critical-iframes>

Priority: Low priority. Effort: A few days. Evidence: Official source. Roles: Developer.

**Why it matters:** Content inside an iframe is a separate document and often not credited to the host page, so information such as pricing tables or FAQs does not get quoted.

**How to do it:**

1. List iframe usage across pages.
2. Move critical text into the main HTML document.
3. Back up embeds such as maps and videos with text.

**How to verify:** No critical text on the homepage or product/service pages sits inside an iframe.

**AI prompt:**

```text
Is any important content on {site} served inside an iframe? Give a method to find it and explain how to move it into the main HTML.
```

### Do not embed key information in images; write it as text

<https://www.geodog.co/en/geo-checklist#no-text-in-images>

Priority: Medium priority. Effort: A few days. Evidence: Official source. Roles: Content, Developer.

**Why it matters:** Models do not reliably read text inside images. Prices, specs or campaign terms that live only in images cannot make it into answers.

**How to do it:**

1. List critical information in banners and infographics.
2. Add it to the page as HTML text.
3. Write descriptive alt text for the images.

**How to verify:** Read the page with images hidden; the critical information should still be visible as text.

**AI prompt:**

```text
Could images on the {site} homepage contain critical information not written as text? Give a method to audit this and an example conversion.
```

**Sources:** <https://developers.google.com/search/docs/appearance/google-images>

### Show bots and users the same content

<https://www.geodog.co/en/geo-checklist#no-cloaking>

Priority: High priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** Serving different content by user agent is cloaking under search engine policies and damages trust. Special “optimized” pages for AI bots carry the same risk.

**How to do it:**

1. Request the same URL with bot user agents and a normal browser.
2. Compare text and prices.
3. Remove code that changes content based on bot detection.

**How to verify:** The main text and prices match between a curl -A "OAI-SearchBot" request and a normal browser.

**AI prompt:**

```text
Write a script that requests the same {site} URL with different user agents (Googlebot, OAI-SearchBot, ClaudeBot, a normal browser), compares the content, and explain how to interpret differences.
```

**Sources:** <https://developers.google.com/search/docs/essentials/spam-policies>

### Monitor crawl stats and alert on sudden drops

<https://www.geodog.co/en/geo-checklist#crawl-stats-monitoring>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: SEO, Developer.

**Why it matters:** A sudden drop in crawl requests usually follows a robots.txt, WAF or server change. Catching it early prevents weeks of lost visibility.

**How to do it:**

1. Check the Search Console Crawl Stats report weekly.
2. Track daily requests per bot in server logs.
3. Alert when volume falls below a threshold.

**How to verify:** Search Console \> Settings \> Crawl stats shows no unexplained drop in the last 90 days.

**AI prompt:**

```text
Design a simple monitor for {site} that extracts daily request counts for Googlebot, Bingbot, OAI-SearchBot, Claude-SearchBot and PerplexityBot from server logs and alerts on a 50% drop.
```

**Sources:** <https://support.google.com/webmasters/answer/9679690>

### Keep low-value areas out of the crawl

<https://www.geodog.co/en/geo-checklist#robots-block-low-value>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: Developer, SEO.

**Why it matters:** Internal search results, cart, account pages and endless filter combinations consume crawl budget. Bot time should go to valuable pages.

**How to do it:**

1. Identify low-value URL patterns.
2. Block them in robots.txt.
3. Test that the blocked patterns do not cover important pages.

**How to verify:** Server logs show a low share of bot requests to /search, /cart or filter URLs.

**AI prompt:**

```text
Guess the low-value URL patterns on {site} that should not be crawled (internal search, cart, account, filters) and suggest robots.txt rules that leave important pages untouched.
```

**Sources:** <https://www.rfc-editor.org/rfc/rfc9309.html>

## Rendering and HTML delivery

Many AI bots do not run JavaScript and read only the initial HTML response. Content, links and language information must be in that first response.

### Serve main content without JavaScript

<https://www.geodog.co/en/geo-checklist#content-without-js>

Priority: High priority. Effort: A few days. Evidence: Official source. Roles: Developer.

**Why it matters:** Googlebot renders JavaScript, but most AI crawlers and user-fetch bots do not. Text loaded client-side is an empty page to them.

**How to do it:**

1. Open the page with JavaScript disabled or fetch it with curl.
2. Check that headings, body text and prices are in the raw HTML.
3. Plan server-side rendering for templates that fail.

**How to verify:** curl -s https://{site}/ | grep "\<your main heading\>" returns a match.

**AI prompt:**

```text
Fetch the {site} homepage and a content page without running JavaScript. Are headings, body text, prices and links present in the raw HTML? List what is missing and suggest fixes.
```

**Sources:** <https://developers.google.com/search/docs/crawling-indexing/javascript/javascript-seo-basics>

### Use server-side rendering or static generation for key templates

<https://www.geodog.co/en/geo-checklist#ssr-key-templates>

Priority: High priority. Effort: Project. Evidence: Official source. Roles: Developer.

**Why it matters:** SSR or static generation gives bots and agents the content in the first response. Client-only single-page apps stay invisible to AI bots.

**How to do it:**

1. Prioritize templates that drive traffic and revenue.
2. Choose SSR, SSG or prerendering for them.
3. Check that content does not change after hydration.

**How to verify:** HTML fetched with curl contains the same main text as the DOM rendered in a browser.

**AI prompt:**

```text
Create a prioritization table to decide which {site} templates need server-side rendering, and suggest SSR or SSG options that fit the tech stack.
```

**Sources:** <https://developers.google.com/search/docs/crawling-indexing/javascript/javascript-seo-basics>

### Build menus and internal links with real \<a href\> elements

<https://www.geodog.co/en/geo-checklist#nav-links-crawlable>

Priority: Medium priority. Effort: A few days. Evidence: Official source. Roles: Developer.

**Why it matters:** Bots only follow links with an href. Menus opened with onclick or links generated by JavaScript leave the rest of the site undiscoverable.

**How to do it:**

1. Check main menu, footer and pagination links in the raw HTML.
2. Replace onclick navigation with \<a href\>.
3. Render mega menus in the initial HTML.

**How to verify:** curl -s https://{site}/ | grep -c "\<a href" includes the main menu links.

**AI prompt:**

```text
Extract the links in the raw HTML of the {site} homepage and compare them with the menu visible in a browser. List sections that cannot be discovered without JavaScript.
```

**Sources:** <https://developers.google.com/search/docs/crawling-indexing/javascript/javascript-seo-basics>

### Keep tab and accordion content in the initial HTML

<https://www.geodog.co/en/geo-checklist#hidden-content-in-dom>

Priority: Medium priority. Effort: A few days. Evidence: Official source. Roles: Developer.

**Why it matters:** Tab content loaded from the server on click is invisible to bots. The same content hidden in the HTML can be read and quoted.

**How to do it:**

1. List tab, accordion and “read more” components.
2. Render the content in the initial HTML and hide it with CSS.
3. Remove API calls triggered by clicks.

**How to verify:** Text in collapsed tabs is searchable in the raw HTML.

**AI prompt:**

```text
Give a method to check whether tab and accordion content on {site} product or service pages is in the initial HTML, and describe the code change needed.
```

### Declare \<html lang\> with the correct language code

<https://www.geodog.co/en/geo-checklist#html-lang-declared>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** The language declaration helps models and search engines match the page to queries in the right language. lang="en" left on Turkish pages is a common mistake.

**How to do it:**

1. Check the \<html lang\> value in every template.
2. Use lang="tr" for Turkish pages.
3. Set the value dynamically per page language on multilingual sites.

**How to verify:** curl -s https://{site}/ | grep -o "\<html\[^\>\]\*lang=\[^ \>\]\*" shows the right language code.

**AI prompt:**

```text
Check the html lang value on {site} pages and list any that do not match the content language.
```

### Declare UTF-8 and serve non-ASCII characters correctly

<https://www.geodog.co/en/geo-checklist#charset-utf8>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** A wrong charset breaks letters such as ç, ğ, ı and ş; garbled text is hard to understand and gets quoted incorrectly.

**How to do it:**

1. Send charset=utf-8 in the Content-Type header.
2. Add \<meta charset="utf-8"\> at the top of the HTML.
3. Check that the database and templates use UTF-8.

**How to verify:** curl -sI https://{site}/ shows Content-Type: text/html; charset=utf-8.

**AI prompt:**

```text
Check the character encoding of {site} through the HTTP header, meta tag and content samples. If you see garbled characters, guess the cause.
```

### Use semantic HTML elements: main, article, nav, header, footer

<https://www.geodog.co/en/geo-checklist#semantic-html>

Priority: Medium priority. Effort: A few days. Evidence: Official source. Roles: Developer.

**Why it matters:** Semantic elements separate main content from menus and ads, so bots and agents extract the right text and the accessibility tree is clearer.

**How to do it:**

1. Wrap main content in \<main\> and \<article\>.
2. Mark navigation with \<nav\> and page regions with \<header\> and \<footer\>.
3. Use \<table\> and \<th\> for tabular data.

**How to verify:** The page source has one \<main\> element and content pages use \<article\>.

**AI prompt:**

```text
Review the HTML structure of a {site} page template. Point out areas built with divs that should be semantic elements and propose a corrected skeleton.
```

### Add the mobile viewport meta tag

<https://www.geodog.co/en/geo-checklist#viewport-meta>

Priority: Low priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** Google uses mobile-first indexing; a page without a viewport looks broken on mobile and weakens quality signals.

**How to do it:**

1. Add \<meta name="viewport" content="width=device-width, initial-scale=1"\>.
2. Remove settings that block zooming.

**How to verify:** The page source contains a viewport tag with width=device-width.

**AI prompt:**

```text
Check the viewport meta tag on {site} pages and flag settings such as user-scalable=no that hurt accessibility.
```

### Serve the same content on mobile and desktop

<https://www.geodog.co/en/geo-checklist#mobile-content-parity>

Priority: High priority. Effort: A few days. Evidence: Official source. Roles: Developer, SEO.

**Why it matters:** Google indexes the mobile version. Shortened text, missing structured data or hidden sections on mobile are also missing from AI answers.

**How to do it:**

1. Compare mobile and desktop HTML.
2. Add missing text, links and structured data to mobile.
3. Check that CSS and JS are not blocked on mobile.

**How to verify:** In Search Console URL Inspection, the crawled mobile HTML contains the main text and JSON-LD of the desktop version.

**AI prompt:**

```text
Write a script that fetches the same {site} page with a mobile and a desktop user agent and compares text, links and JSON-LD.
```

**Sources:** <https://developers.google.com/search/docs/crawling-indexing/mobile/mobile-sites-mobile-first-indexing>

## Sitemaps and fast discovery

Sitemaps and instant notification protocols help bots find new or updated pages quickly.

### Publish a valid XML sitemap

<https://www.geodog.co/en/geo-checklist#xml-sitemap>

Priority: High priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** A sitemap tells bots which URLs matter and when they changed, speeding up discovery of deep pages.

**How to do it:**

1. Generate an auto-updating sitemap.xml with your CMS or a plugin.
2. Stay within 50,000 URLs and 50 MB per file.
3. Use a sitemap index if needed.

**How to verify:** https://{site}/sitemap.xml returns 200 and is valid XML.

**AI prompt:**

```text
Review https://{site}/sitemap.xml: is it valid XML, how many URLs does it hold, is it a sitemap index, and does it look auto-updated?
```

**Sources:** <https://developers.google.com/search/docs/crawling-indexing/sitemaps/build-sitemap>

### Reference the sitemap in robots.txt

<https://www.geodog.co/en/geo-checklist#sitemap-in-robots>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** AI bots that do not use Search Console usually find the sitemap through the Sitemap line in robots.txt.

**How to do it:**

1. Add “Sitemap: https://{site}/sitemap.xml” to robots.txt.
2. For several sitemaps, use one line each or an index file.

**How to verify:** robots.txt contains a Sitemap: line with an absolute URL.

**AI prompt:**

```text
Does https://{site}/robots.txt contain Sitemap lines with absolute URLs that actually return 200? Check it.
```

**Sources:** <https://developers.google.com/search/docs/crawling-indexing/sitemaps/build-sitemap>

### Update lastmod only for meaningful changes

<https://www.geodog.co/en/geo-checklist#sitemap-lastmod>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** An accurate lastmod lets bots recrawl updated pages first. A lastmod that changes daily on every URL is considered unreliable and ignored.

**How to do it:**

1. Update lastmod only when content changes.
2. Use the W3C date format.
3. Do not refresh all dates on template changes.

**How to verify:** Sitemap lastmod values vary and match the update dates shown on pages.

**AI prompt:**

```text
Review the lastmod values in the {site} sitemap: are they all identical, and do they match the update dates on the pages? Suggest an implementation if not.
```

**Sources:** <https://developers.google.com/search/docs/crawling-indexing/sitemaps/build-sitemap>

### List only canonical URLs that return 200 in the sitemap

<https://www.geodog.co/en/geo-checklist#sitemap-clean-urls>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: Developer, SEO.

**Why it matters:** Redirected, 404 or noindex pages reduce sitemap trust and waste bot time.

**How to do it:**

1. Crawl all sitemap URLs with their status codes.
2. Remove 3xx, 4xx and noindex URLs.
3. Include only canonical URLs.

**How to verify:** When a crawler checks the sitemap, over 99% of URLs return 200 and are indexable.

**AI prompt:**

```text
Write a script that checks the status codes of URLs in the {site} sitemap and reports URLs that are not 200, not canonical or contain noindex.
```

**Sources:** <https://developers.google.com/search/docs/crawling-indexing/sitemaps/build-sitemap>

### Split sitemaps by content type

<https://www.geodog.co/en/geo-checklist#sitemap-segmented>

Priority: Low priority. Effort: Quick win. Evidence: Official source. Roles: Developer, SEO.

**Why it matters:** Separate sitemaps for products, categories, blog and help pages show in Search Console which section has indexing problems.

**How to do it:**

1. Create a sitemap file per content type.
2. Group them in a sitemap index.
3. Monitor each separately in Search Console.

**How to verify:** Search Console \> Sitemaps shows submitted and indexed counts per type.

**AI prompt:**

```text
Propose a sitemap structure for {site} split by content type and write a sample sitemap index file.
```

**Sources:** <https://developers.google.com/search/docs/crawling-indexing/sitemaps/build-sitemap>

### Submit the sitemap to Search Console and Bing Webmaster Tools

<https://www.geodog.co/en/geo-checklist#sitemap-submitted>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: SEO.

**Why it matters:** Submitting a sitemap unlocks error and indexing reports, so you see problems before the bots do.

**How to do it:**

1. Submit it under Search Console \> Sitemaps.
2. Add the same sitemap in Bing Webmaster Tools.
3. Check error warnings monthly.

**How to verify:** Sitemap status is “Success” in both Search Console and Bing Webmaster Tools.

**AI prompt:**

```text
Write a step-by-step guide for submitting the {site} sitemap to Search Console and Bing Webmaster Tools and the reports to watch afterwards.
```

**Sources:** <https://support.google.com/webmasters/answer/7451001>

### Notify Bing and other engines instantly with IndexNow

<https://www.geodog.co/en/geo-checklist#indexnow-enabled>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** IndexNow instantly notifies participating engines such as Bing, Yandex, Seznam, Naver and Yep of changed URLs. Google does not use it, but because Bing grounds Copilot, it can help changes reach Copilot answers sooner.

**How to do it:**

1. Create an IndexNow key and host it at the root.
2. Ping on publish, update and delete via your CMS or CDN integration.
3. Check the IndexNow report in Bing Webmaster Tools.

**How to verify:** https://{site}/\<key\>.txt returns the key and Bing Webmaster Tools \> IndexNow shows submissions.

**AI prompt:**

```text
Explain IndexNow setup for {site} step by step: key file, a sample API request and which events should trigger a ping. Note that Google does not use IndexNow.
```

**Sources:** <https://www.indexnow.org/>, <https://www.indexnow.org/searchengines.json>

## Performance and Core Web Vitals

Slow pages lose both users and bots that work with timeouts. This section covers speed, caching and resource weight.

### Meet Core Web Vitals thresholds: LCP, INP and CLS

<https://www.geodog.co/en/geo-checklist#core-web-vitals>

Priority: High priority. Effort: A few days. Evidence: Official source. Roles: Developer.

**Why it matters:** Google uses page experience in ranking, and poor experience generally works against pages being chosen as sources for AI answers. Low CLS also stops agentic browsers from clicking the wrong element.

**How to do it:**

1. Find poor URL groups in the Search Console Core Web Vitals report.
2. Preload the LCP element and speed up the server response.
3. Lower INP by breaking up long JavaScript tasks.
4. Lower CLS by reserving fixed space for images and ads.

**How to verify:** Search Console \> Core Web Vitals shows no “Poor” URL groups on mobile or desktop.

**AI prompt:**

```text
Help me interpret PageSpeed Insights results for {site}: rank the likely causes of LCP, INP and CLS issues and build a prioritized fix list.
```

**Sources:** <https://developers.google.com/search/docs/appearance/core-web-vitals>, <https://support.google.com/webmasters/answer/9205520>

### Keep server response time (TTFB) under 800 ms

<https://www.geodog.co/en/geo-checklist#server-response-time>

Priority: High priority. Effort: A few days. Evidence: Official source. Roles: Developer.

**Why it matters:** AI assistants that fetch pages on user request work with timeouts of a few seconds. A page that responds late gets skipped instead of included in the answer.

**How to do it:**

1. Measure TTFB from several regions.
2. Set up page or edge caching.
3. Reduce slow database queries and external calls.

**How to verify:** curl -o /dev/null -s -w "%{time\_starttransfer}\\n" https://{site}/ returns under 0.8 seconds.

**AI prompt:**

```text
Write a curl script that measures TTFB across different page types on {site}, and list likely causes and fixes for results above 800 ms.
```

**Sources:** <https://web.dev/articles/ttfb>

### Serve images as WebP or AVIF at the right size

<https://www.geodog.co/en/geo-checklist#image-optimization>

Priority: Medium priority. Effort: A few days. Evidence: Official source. Roles: Developer.

**Why it matters:** Large images are the most common cause of slow LCP. Modern formats cut file size significantly at the same quality.

**How to do it:**

1. Convert images to WebP or AVIF.
2. Serve the right size per screen with srcset.
3. Add width and height attributes.

**How to verify:** PageSpeed Insights shows no savings under the “Improve image delivery” insight.

**AI prompt:**

```text
Review the format, size and srcset usage of images on the {site} homepage and suggest the three optimizations with the biggest payoff.
```

**Sources:** <https://developer.chrome.com/blog/moving-lighthouse-to-insights>

### Lazy-load only offscreen images, never text

<https://www.geodog.co/en/geo-checklist#lazy-load-offscreen>

Priority: Low priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** loading="lazy" saves bandwidth on offscreen images. Applied to the hero image or text content, it delays LCP and can hide content from bots.

**How to do it:**

1. Add loading="lazy" to offscreen images.
2. Remove lazy loading from the above-the-fold hero image.
3. Do not put text content in scroll-triggered components.

**How to verify:** The PageSpeed Insights “LCP request discovery” insight does not flag lazy loading on the LCP image.

**AI prompt:**

```text
Review loading="lazy" usage on {site} pages and flag misuse on above-the-fold images or text content.
```

**Sources:** <https://developer.chrome.com/blog/moving-lighthouse-to-insights>

### Minify JS and CSS and enable Brotli or gzip compression

<https://www.geodog.co/en/geo-checklist#minify-compress>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** Compression and minification reduce transferred bytes, so bots and users receive the page faster.

**How to do it:**

1. Enable JS and CSS minification in the build.
2. Turn on Brotli, or gzip as a fallback, on the server or CDN.
3. Remove unused CSS and JS.

**How to verify:** curl -sI -H "Accept-Encoding: br,gzip" https://{site}/ shows Content-Encoding: br or gzip.

**AI prompt:**

```text
Write commands to check compression and minification of HTML, CSS and JS responses on {site}, and suggest server settings for anything missing.
```

### Use deliberate Cache-Control headers and a CDN

<https://www.geodog.co/en/geo-checklist#caching-cdn>

Priority: Medium priority. Effort: A few days. Evidence: Official source. Roles: Developer.

**Why it matters:** Good caching rules speed up repeat bot and user requests and reduce server load. A CDN lowers latency for requests from different regions.

**How to do it:**

1. Use long max-age and versioned file names for static assets.
2. Use short caching or stale-while-revalidate for HTML.
3. Serve through a CDN and monitor the cache hit ratio.

**How to verify:** curl -sI https://{site}/ shows a deliberate Cache-Control value and a CDN cache header (e.g. cf-cache-status).

**AI prompt:**

```text
Check the Cache-Control headers on HTML, image, CSS and JS responses from {site} and give recommended values per type in a table.
```

### Keep DOM size reasonable

<https://www.geodog.co/en/geo-checklist#dom-size-reasonable>

Priority: Low priority. Effort: A few days. Evidence: Official source. Roles: Developer.

**Why it matters:** Very large DOM trees increase render time and memory use and make the accessibility tree harder for agentic browsers to navigate.

**How to do it:**

1. Measure DOM element count with Lighthouse.
2. Remove unnecessary wrapper divs.
3. Paginate or virtualize long lists.

**How to verify:** The Lighthouse “Optimize DOM size” insight does not flag the page.

**AI prompt:**

```text
Assess the DOM structure of the {site} homepage and give concrete ways to reduce the element count.
```

**Sources:** <https://developer.chrome.com/blog/moving-lighthouse-to-insights>

### Load web fonts without blocking visible text

<https://www.geodog.co/en/geo-checklist#font-loading>

Priority: Low priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** Render-blocking font loading delays text and causes layout shift.

**How to do it:**

1. Use font-display: swap.
2. Preload critical fonts.
3. Drop unused font weights and character sets, keeping the subsets your languages need.

**How to verify:** The PageSpeed Insights “Font display” insight shows no savings.

**AI prompt:**

```text
Review the font loading strategy of {site}: are font-display, preload and subsetting used well? Suggest improvements that keep language-specific characters working.
```

**Sources:** <https://developer.chrome.com/blog/moving-lighthouse-to-insights>

### Measure and improve mobile performance separately

<https://www.geodog.co/en/geo-checklist#mobile-performance>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** Google indexes the mobile version, and mobile scores are usually lower than desktop. Measuring only desktop hides problems.

**How to do it:**

1. Review the mobile tab in PageSpeed Insights separately.
2. Assess field data (CrUX) separately from lab data.
3. Defer heavy third-party scripts on mobile.

**How to verify:** PageSpeed Insights mobile field data shows “Passed” for the Core Web Vitals assessment.

**AI prompt:**

```text
List likely reasons for mobile vs desktop performance gaps on {site} and draft a mobile-first improvement plan.
```

**Sources:** <https://developers.google.com/search/docs/crawling-indexing/mobile/mobile-sites-mobile-first-indexing>

## Site architecture and internal linking

A clear hierarchy and strong internal links help bots find pages and understand how topics relate.

### Organize categories around topics people search for

<https://www.geodog.co/en/geo-checklist#category-structure>

Priority: Medium priority. Effort: Project. Evidence: Official source. Roles: SEO, Content.

**Why it matters:** A logical category structure helps users and models understand which topics the site is an authority on.

**How to do it:**

1. Build the list of topics and subtopics from search data.
2. Assign one category page per topic.
3. Merge overlapping or empty categories.

**How to verify:** The menu and category pages cover all core topics within 2 levels, with no empty categories.

**AI prompt:**

```text
Review the menu and category structure of {site}. Point out overlapping, missing or unnecessary categories and propose a clearer hierarchy.
```

### Use short, readable URLs that reflect the hierarchy

<https://www.geodog.co/en/geo-checklist#readable-urls>

Priority: Medium priority. Effort: A few days. Evidence: Official source. Roles: Developer, SEO.

**Why it matters:** Meaningful URLs help models and users understand a page’s topic from the link and look trustworthy in source lists.

**How to do it:**

1. Use the category path and meaningful words in URLs.
2. Transliterate non-ASCII letters consistently or use UTF-8 throughout.
3. Remove IDs and unnecessary parameters.

**How to verify:** All of 20 random URLs are lowercase, hyphen-separated and made of descriptive words.

**AI prompt:**

```text
Review the URL structure of {site} for readability, hierarchy, non-ASCII character handling and parameters, and propose a URL guideline.
```

**Sources:** <https://developers.google.com/search/docs/crawling-indexing/url-structure>

### Keep important pages within three clicks of the homepage

<https://www.geodog.co/en/geo-checklist#click-depth-shallow>

Priority: Medium priority. Effort: A few days. Evidence: Experimental. Roles: SEO.

**Why it matters:** Deep pages are crawled less often and receive weaker signals. Pages that drive revenue or that you want cited should sit near the surface.

**How to do it:**

1. Get a click-depth report from a crawler.
2. Link deep important pages from category or hub pages.
3. Set up pagination and filters so they do not add depth.

**How to verify:** The crawler reports a click depth of 3 or less for important pages.

**AI prompt:**

```text
Draft a crawl plan to measure the click depth of important pages on {site} and suggest links that reduce it.
```

### Add visible breadcrumb navigation

<https://www.geodog.co/en/geo-checklist#breadcrumb-navigation>

Priority: Medium priority. Effort: A few days. Evidence: Official source. Roles: Developer.

**Why it matters:** Breadcrumbs show users and bots where a page sits on the site and provide natural internal links to parent categories.

**How to do it:**

1. Add breadcrumbs to all content and product pages.
2. Make each step a real \<a href\> link.
3. Match the breadcrumb to BreadcrumbList structured data.

**How to verify:** The raw HTML of a product or article page contains breadcrumb links.

**AI prompt:**

```text
Check whether {site} pages have breadcrumb navigation with real HTML links that match the site hierarchy, and suggest example code.
```

**Sources:** <https://developers.google.com/search/docs/appearance/structured-data/breadcrumb>

### Link topic clusters with descriptive anchor text

<https://www.geodog.co/en/geo-checklist#internal-linking-strategy>

Priority: High priority. Effort: A few days. Evidence: Official source. Roles: SEO, Content.

**Why it matters:** Internal links show which page is the main source on a topic. Anchor text like “click here” throws that context away.

**How to do it:**

1. Define the supporting pages that should link to each key page.
2. Use the target page’s topic in the anchor text.
3. Add links from related older pages when new content goes live.

**How to verify:** The crawler shows inbound internal link counts and anchor texts for key pages that match their topics.

**AI prompt:**

```text
Propose a method to analyze inbound internal links and anchor texts for key pages on {site}, and find weak anchors like “click here” and missing links.
```

### Link or remove orphan pages

<https://www.geodog.co/en/geo-checklist#orphan-pages-linked>

Priority: Medium priority. Effort: A few days. Evidence: Official source. Roles: SEO.

**Why it matters:** Pages found only in the sitemap get weak signals and are crawled rarely. Link them if they are valuable, remove them if not.

**How to do it:**

1. Compare sitemap URLs with linked URLs found in a crawl.
2. Link valuable orphan pages from related pages.
3. Remove or redirect low-value ones.

**How to verify:** A sitemap vs crawl comparison shows close to zero orphan pages.

**AI prompt:**

```text
Write the steps to find orphan pages on {site} by comparing the sitemap with crawl data, and suggest decision criteria for each orphan page.
```

### Serve the homepage at a single URL

<https://www.geodog.co/en/geo-checklist#single-homepage-url>

Priority: Low priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** Variants such as /index.html, /home or /?ref= split homepage signals and lead to different addresses being cited.

**How to do it:**

1. List homepage variants.
2. Redirect them all to the preferred root with a 301.
3. Point logo and menu links to the root.

**How to verify:** curl -sI https://{site}/index.html returns a 301 to https://{site}/.

**AI prompt:**

```text
Write commands that test likely homepage URL variants of {site} (index.html, index.php, /home, with parameters) and explain the correct behavior.
```

**Sources:** <https://developers.google.com/search/docs/crawling-indexing/consolidate-duplicate-urls>

### Build pagination with crawlable links

<https://www.geodog.co/en/geo-checklist#pagination-crawlable>

Priority: Low priority. Effort: A few days. Evidence: Official source. Roles: Developer.

**Why it matters:** Lists that only use a “load more” button or infinite scroll hide products and posts beyond the first page from bots.

**How to do it:**

1. Serve every pagination step at its own URL with \<a href\>.
2. Back infinite scroll with paginated URLs.
3. Use self-referencing canonicals on paginated URLs.

**How to verify:** The raw HTML of a category page contains next-page links such as ?page=2.

**AI prompt:**

```text
Check whether pagination on {site} category and blog lists is crawlable. If infinite scroll or a JavaScript button is used, explain the recommended fix.
```

**Sources:** <https://developers.google.com/search/docs/specialty/ecommerce/pagination-and-incremental-page-loading>

## Page metadata and headings

Title tags, descriptions, heading hierarchy and sharing tags tell bots what a page is about at first glance.

### Write a unique, descriptive title tag for every page

<https://www.geodog.co/en/geo-checklist#title-tag-quality>

Priority: High priority. Effort: Quick win. Evidence: Official source. Roles: SEO, Content.

**Why it matters:** The title tag is shown in source lists and search results, and models infer the page topic from it first.

**How to do it:**

1. Put the main topic first and the brand last.
2. Stay around 30–60 characters.
3. Eliminate duplicate titles.

**How to verify:** A crawler reports close to zero empty, duplicate or over-60-character titles.

**AI prompt:**

```text
Assess the title tags of the {site} homepage and 5 key pages for length, uniqueness and clarity, and write improved alternatives.
```

**Sources:** <https://developers.google.com/search/docs/appearance/title-link>

### Write a unique, summarizing meta description for every page

<https://www.geodog.co/en/geo-checklist#meta-description-unique>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: SEO, Content.

**Why it matters:** Meta descriptions do not affect ranking directly, but they may be used as page summaries in results and some AI interfaces.

**How to do it:**

1. Summarize the page’s promise in 120–160 characters.
2. Include a page-specific fact or number.
3. Fix template-driven duplicates.

**How to verify:** A crawler reports close to zero missing or duplicate meta descriptions.

**AI prompt:**

```text
Assess the meta descriptions of 5 key {site} pages and write new page-specific suggestions under 160 characters.
```

**Sources:** <https://developers.google.com/search/docs/appearance/snippet>

### Use one H1 per page that states its topic

<https://www.geodog.co/en/geo-checklist#single-h1>

Priority: Medium priority. Effort: Quick win. Evidence: Experimental. Roles: Content, Developer.

**Why it matters:** A single, clear H1 tells bots the page’s main topic. H1s on the logo or menu blur that signal.

**How to do it:**

1. Remove H1s from the logo and menu in templates.
2. Mark the main heading on each page as H1.
3. Keep the H1 aligned with the title tag.

**How to verify:** curl -s https://{site}/ | grep -c "\<h1" returns 1.

**AI prompt:**

```text
Count the H1 tags on the {site} homepage and key templates; list pages with none or several and suggest an H1 for each.
```

### Use H2 and H3 headings in a logical order

<https://www.geodog.co/en/geo-checklist#heading-hierarchy>

Priority: Medium priority. Effort: Quick win. Evidence: Emerging standard. Roles: Content.

**Why it matters:** Heading hierarchy splits a page into sections. AI systems use these sections when choosing passages for answers, and skipped levels break the structure.

**How to do it:**

1. Use H2 after H1 and H3 under H2.
2. Pick heading levels for meaning, not visual size.
3. Keep each H2 section to one subtopic.

**How to verify:** A heading outline tool (e.g. HeadingsMap) shows no skipped levels.

**AI prompt:**

```text
Extract the heading structure of a content page on {site}, flag skipped levels and empty or vague headings, and propose a corrected outline.
```

### Use complete Open Graph tags on every page

<https://www.geodog.co/en/geo-checklist#open-graph-tags>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: Developer, Content.

**Why it matters:** og:title, og:description and og:image are used in link previews and in source cards of some AI interfaces.

**How to do it:**

1. Add og:title, og:description, og:image, og:url and og:type.
2. Make the image about 1200x630 pixels.
3. Generate values per page.

**How to verify:** An Open Graph preview tool shows the right title, description and image.

**AI prompt:**

```text
Check the Open Graph tags on the {site} homepage, flag missing or wrong fields and write a correct example.
```

### Add X (Twitter) card tags

<https://www.geodog.co/en/geo-checklist#twitter-card-tags>

Priority: Low priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** twitter:card tags control link previews on X and in other tools that read them.

**How to do it:**

1. Set twitter:card to summary\_large\_image.
2. Remember missing fields fall back to Open Graph values.

**How to verify:** The page source contains \<meta name="twitter:card"\>.

**AI prompt:**

```text
Check the twitter:card tags on {site} and write the recommended minimal tag set alongside Open Graph.
```

### Write alt text that describes image content

<https://www.geodog.co/en/geo-checklist#image-alt-text>

Priority: Medium priority. Effort: A few days. Evidence: Official source. Roles: Content.

**Why it matters:** Alt text tells bots and screen readers what an image shows, and multimodal models use it to tie the image to the page context.

**How to do it:**

1. Write specific alt text for every informative image.
2. Use empty alt="" for decorative images.
3. Avoid keyword stuffing.

**How to verify:** A crawler shows under 5% of informative images missing alt text.

**AI prompt:**

```text
List the alt texts of images on the {site} homepage and write better alternatives for missing, vague or keyword-stuffed ones.
```

**Sources:** <https://developers.google.com/search/docs/appearance/google-images>

### Define a favicon and preferred site name

<https://www.geodog.co/en/geo-checklist#favicon-site-name>

Priority: Low priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** Google and some AI interfaces show sources by site name and favicon. Missing or inconsistent values make your brand harder to recognize.

**How to do it:**

1. Publish a square favicon of at least 48x48 pixels.
2. Declare the site name with name and alternateName in WebSite structured data.
3. Keep it consistent with the title and og:site\_name.

**How to verify:** Google search results show the correct site name and favicon.

**AI prompt:**

```text
Check the favicon definitions and site name signals (WebSite JSON-LD, og:site_name, title) for {site} and list inconsistencies.
```

**Sources:** <https://developers.google.com/search/docs/appearance/site-names>, <https://developers.google.com/search/docs/appearance/favicon-in-search>

## Structured data (Schema.org)

Structured data tells machines explicitly which entities a page describes and how they relate. Google requires no special markup for AI features, but correct JSON-LD directly supports entity recognition and shopping surfaces.

### Publish structured data as valid JSON-LD

<https://www.geodog.co/en/geo-checklist#jsonld-valid>

Priority: High priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** JSON-LD is Google’s recommended format and is easy to maintain because it is separate from the HTML. A single syntax error makes the whole block ignored.

**How to do it:**

1. Add structured data as \<script type="application/ld+json"\> blocks.
2. Run each block through a JSON validator.
3. Run automated tests after template changes.

**How to verify:** The Schema Markup Validator (validator.schema.org) and the Rich Results Test show no errors for the page.

**AI prompt:**

```text
Extract the JSON-LD blocks from the {site} homepage and a content page, list syntax and Schema.org type errors, and write corrected JSON-LD.
```

**Sources:** <https://developers.google.com/search/docs/appearance/structured-data/search-gallery>

### Use complete Organization markup on the homepage

<https://www.geodog.co/en/geo-checklist#schema-organization>

Priority: High priority. Effort: Quick win. Evidence: Official source. Roles: Developer, SEO.

**Why it matters:** Organization data gathers your brand’s name, logo, contact details and official profiles into one entity, helping models match your brand to the right entity.

**How to do it:**

1. Add Organization (or a more specific subtype) to the homepage.
2. Fill in name, url, logo, description, contactPoint and address.
3. Add identifiers such as tax or registry numbers where appropriate.

**How to verify:** The Rich Results Test detects Organization on the homepage with no warnings.

**AI prompt:**

```text
Write a complete Organization JSON-LD example for {site} with name, alternateName, url, logo, description, contactPoint, address and sameAs, noting which details I need to fill in.
```

**Sources:** <https://developers.google.com/search/docs/appearance/structured-data/organization>

### Link official profiles and your Wikidata item with sameAs

<https://www.geodog.co/en/geo-checklist#schema-sameas>

Priority: High priority. Effort: Quick win. Evidence: Official source. Roles: SEO, Developer.

**Why it matters:** sameAs marks your on-site entity as the same as your LinkedIn, Wikidata, Wikipedia and social profiles. These links matter most when your brand name is ambiguous.

**How to do it:**

1. List the brand’s official profile URLs.
2. Add them to the sameAs array in Organization.
3. Link back to your site from those profiles.

**How to verify:** The homepage JSON-LD has a sameAs array and every URL returns 200.

**AI prompt:**

```text
Suggest searches to find the official profiles of the {site} brand (LinkedIn, Wikidata, Wikipedia, X, Instagram, YouTube, Crunchbase) and write the JSON-LD snippet with the sameAs array.
```

**Sources:** <https://developers.google.com/search/docs/appearance/structured-data/organization>

### Declare the site name and alternate name with WebSite markup

<https://www.geodog.co/en/geo-checklist#schema-website>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** WebSite data is used in Google’s site name selection and ties the site to its organization. The sitelinks search box feature is gone, so SearchAction is optional.

**How to do it:**

1. Add WebSite JSON-LD to the homepage.
2. Fill in name, alternateName and url.
3. Link it to the Organization via publisher.

**How to verify:** The Rich Results Test or Schema Markup Validator detects WebSite on the homepage.

**AI prompt:**

```text
Write WebSite JSON-LD for {site} with name, alternateName, url and publisher, and briefly explain what adding SearchAction does today.
```

**Sources:** <https://developers.google.com/search/docs/appearance/site-names>

### Mark the page’s place in the hierarchy with BreadcrumbList

<https://www.geodog.co/en/geo-checklist#schema-breadcrumb>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** BreadcrumbList tells machines which category a page belongs to and lets search results show a meaningful path instead of the URL.

**How to do it:**

1. Add BreadcrumbList with the same steps as the visible breadcrumb.
2. Use name and item (URL) for each step.
3. Make the last step the current page.

**How to verify:** The Rich Results Test shows valid BreadcrumbList on content and product pages.

**AI prompt:**

```text
Write BreadcrumbList JSON-LD matching the visible breadcrumb for this {site} page: [URL].
```

**Sources:** <https://developers.google.com/search/docs/appearance/structured-data/breadcrumb>

### Use Article markup with author and date details on articles

<https://www.geodog.co/en/geo-checklist#schema-article>

Priority: High priority. Effort: Quick win. Evidence: Official source. Roles: Developer, Content.

**Why it matters:** Article data states the headline, author, publisher and dates precisely. Defining the author as a Person makes expertise signals machine-readable.

**How to do it:**

1. Add Article, BlogPosting or NewsArticle to blog posts and guides.
2. Fill in headline, author (Person with url), publisher, datePublished, dateModified and image.
3. Point author.url to the author profile page.

**How to verify:** The Rich Results Test detects Article; author is a Person with a url.

**AI prompt:**

```text
Write Article JSON-LD for this {site} article, with author as a Person with a profile URL and dates matching the visible dates: [URL].
```

**Sources:** <https://developers.google.com/search/docs/appearance/structured-data/article>

### Use ProfilePage and Person markup on author pages

<https://www.geodog.co/en/geo-checklist#schema-person-profilepage>

Priority: Medium priority. Effort: A few days. Evidence: Official source. Roles: Developer, Content.

**Why it matters:** Person data connects an author’s expertise, employer and other profiles, so the link between content and expert becomes machine-verifiable.

**How to do it:**

1. Add ProfilePage with a Person as mainEntity to each author page.
2. Fill in jobTitle, worksFor, knowsAbout and sameAs.
3. Use the same URL as author.url in articles.

**How to verify:** The Schema Markup Validator detects ProfilePage and Person on the author page.

**AI prompt:**

```text
Write a ProfilePage and Person JSON-LD template for a {site} author page with jobTitle, worksFor, knowsAbout, sameAs and image.
```

**Sources:** <https://developers.google.com/search/docs/appearance/structured-data/profile-page>

### Make sure structured data matches visible content exactly

<https://www.geodog.co/en/geo-checklist#schema-matches-visible>

Priority: High priority. Effort: Quick win. Evidence: Official source. Roles: Developer, SEO.

**Why it matters:** Google’s guidelines forbid markup that users cannot see or that contradicts the page. Mismatched prices, ratings or stock cost trust and eligibility.

**How to do it:**

1. Compare prices, ratings, stock and dates in JSON-LD with the page.
2. Generate both from the same data source.
3. Remove markup for information not on the page.

**How to verify:** On 10 random pages, JSON-LD values match the visible values.

**AI prompt:**

```text
Compare the JSON-LD values (price, rating, stock, date, author) on this {site} page with the visible content and list mismatches: [URL].
```

**Sources:** <https://developers.google.com/search/docs/appearance/structured-data/sd-policies>

### Use LocalBusiness markup for physical locations

<https://www.geodog.co/en/geo-checklist#schema-localbusiness>

Priority: High priority. Effort: Quick win. Evidence: Official source. Roles: Developer, Business.

**Why it matters:** For local questions, assistants take address, hours and contact details from structured sources. Correct LocalBusiness data supports consistency with your Google Business Profile.

**How to do it:**

1. Pick the right LocalBusiness subtype (e.g. Restaurant, Dentist).
2. Fill in address, geo, telephone, openingHoursSpecification and url.
3. Use a separate page and markup per location.

**How to verify:** The Rich Results Test detects LocalBusiness on the location page, with details identical to the Google Business Profile.

**AI prompt:**

```text
Write LocalBusiness JSON-LD for this {site} location (right subtype, address, coordinates, phone, hours) and a checklist for consistency with the Google Business Profile: [location details].
```

**Sources:** <https://developers.google.com/search/docs/appearance/structured-data/local-business>

### Use SoftwareApplication markup for software products

<https://www.geodog.co/en/geo-checklist#schema-software-application>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** SoftwareApplication tells machines the app category, operating system, price and rating, which can be used directly in software comparison questions.

**How to do it:**

1. Add SoftwareApplication or WebApplication to the product page.
2. Fill in applicationCategory, operatingSystem and offers.
3. Use aggregateRating only for real, visible reviews.

**How to verify:** The Rich Results Test detects SoftwareApplication on the product page.

**AI prompt:**

```text
Write SoftwareApplication JSON-LD for the {site} product page with applicationCategory, operatingSystem, offers and aggregateRating if available.
```

**Sources:** <https://developers.google.com/search/docs/appearance/structured-data/software-app>

### Add VideoObject markup to pages with video

<https://www.geodog.co/en/geo-checklist#schema-video-object>

Priority: Low priority. Effort: A few days. Evidence: Official source. Roles: Developer, Content.

**Why it matters:** VideoObject gives machines the title, description, duration, thumbnail and transcript, helping video content be recognized in search and AI answers.

**How to do it:**

1. Fill in name, description, thumbnailUrl, uploadDate and duration.
2. Add transcript if you have one.
3. Use Clip or SeekToAction for key moments.

**How to verify:** The Rich Results Test shows valid VideoObject on the video page.

**AI prompt:**

```text
Write VideoObject JSON-LD for this {site} video page with name, description, thumbnailUrl, uploadDate, duration and transcript: [URL].
```

**Sources:** <https://developers.google.com/search/docs/appearance/structured-data/video>

### Treat FAQPage markup as semantic labeling only, not a rich result

<https://www.geodog.co/en/geo-checklist#schema-faq-optional>

Priority: Low priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** Google retired FAQ rich results on May 7, 2026, and HowTo rich results have been gone since 2023. Existing FAQPage markup is harmless and labels question-answer pairs, but gives no display benefit.

**How to do it:**

1. Keep FAQPage only for questions visible on the page.
2. Do not plan new FAQPage or HowTo work on the promise of rich results.
3. Explain the change to your team and clients.

**How to verify:** If FAQPage exists, every question and answer is visible on the page, and no report targets FAQ rich results.

**AI prompt:**

```text
Review FAQPage and HowTo markup on {site} pages and, given that Google retired these rich results, recommend which to keep and which to simplify.
```

**Sources:** <https://www.searchenginejournal.com/google-drops-faq-rich-results/574429/>

## Answer-ready content structure

AI systems pick the passages that answer a question, not whole pages. This section is about structuring content into parts that are easy to find and still make sense when quoted on their own.

### Answer the question in the first sentence of the page and each section

<https://www.geodog.co/en/geo-checklist#answer-first-opening>

Priority: High priority. Effort: Quick win. Evidence: Emerging standard. Roles: Content.

**Why it matters:** Answer engines usually quote the first sentences of a section. Intros that promise an answer without giving it reduce the chance of being quoted.

**How to do it:**

1. Identify the question behind the heading.
2. Give a clear 1–2 sentence answer up front.
3. Leave detail, exceptions and context for later paragraphs.

**How to verify:** On key pages, read the first sentence under each H2 on its own; it should answer the heading’s question.

**AI prompt:**

```text
Review each section of this {site} page and write answer-first opening sentences for sections whose first sentence does not answer the question directly: [URL].
```

### Make every paragraph understandable on its own

<https://www.geodog.co/en/geo-checklist#self-contained-passages>

Priority: High priority. Effort: A few days. Evidence: Emerging standard. Roles: Content.

**Why it matters:** Models lift passages out of context. Paragraphs that start with “this”, “it” or “as mentioned above” lose their meaning when read alone.

**How to do it:**

1. Repeat the product, brand or concept name instead of pronouns.
2. Keep each paragraph to one idea.
3. Use short sentences and plain language; explain jargon on first use.

**How to verify:** Read a random paragraph without the rest of the page; it should still say who, what and under which conditions.

**AI prompt:**

```text
Find paragraphs on this {site} page that lose meaning when read out of context, and propose a self-contained rewrite for each: [URL].
```

### Write subheadings as the questions people ask

<https://www.geodog.co/en/geo-checklist#question-headings>

Priority: Medium priority. Effort: Quick win. Evidence: Emerging standard. Roles: Content.

**Why it matters:** People ask assistants full-sentence questions. Question-style headings make it easier to match those queries to passages.

**How to do it:**

1. Collect questions from customers, support tickets and “People also ask” boxes.
2. Rewrite suitable H2 and H3 headings as questions.
3. Answer the question right under each heading.

**How to verify:** On key pages, a meaningful share of H2 and H3 headings map to real user questions.

**AI prompt:**

```text
Rewrite the headings of this {site} page as natural questions users might ask an AI assistant: [URL].
```

### Give H2 and H3 headings stable anchor IDs

<https://www.geodog.co/en/geo-checklist#heading-anchor-ids>

Priority: Low priority. Effort: Quick win. Evidence: Emerging standard. Roles: Developer.

**Why it matters:** IDs on headings let answer engines and users link straight to the relevant section, and Google already deep-links to sections with text fragments.

**How to do it:**

1. Add short, stable IDs to headings.
2. Keep IDs unchanged when heading text changes.
3. Link the table of contents to these anchors.

**How to verify:** h2 and h3 tags carry id attributes, and https://{site}/page#section jumps to the right section.

**AI prompt:**

```text
Propose a method to generate stable heading IDs automatically in the {site} content template, including how to handle non-ASCII characters.
```

### Add a short summary or key takeaways block to long pages

<https://www.geodog.co/en/geo-checklist#summary-key-takeaways>

Priority: Medium priority. Effort: Quick win. Evidence: Emerging standard. Roles: Content.

**Why it matters:** Summary blocks present a page’s main claims in one quotable place. Models and skimming readers both use them.

**How to do it:**

1. Write the page’s 3–5 key takeaways as bullets.
2. Put a concrete fact or number in each.
3. Place the block above the fold.

**How to verify:** Long guides show a 3–5 bullet summary in the first screen.

**AI prompt:**

```text
Write a 3–5 bullet summary with concrete facts for this long {site} page: [URL].
```

### Explain key terms with one-sentence definitions

<https://www.geodog.co/en/geo-checklist#definition-blocks>

Priority: Low priority. Effort: Quick win. Evidence: Emerging standard. Roles: Content.

**Why it matters:** “What is X?” is one of the most common question types asked to assistants. A clear definition sentence becomes a direct source for it.

**How to do it:**

1. List the core terms of your industry.
2. Write each definition as “X is a ... that ...”.
3. Place it where the term first appears or on a glossary page.

**How to verify:** Key terms appear on the page with a one-sentence definition.

**AI prompt:**

```text
Write accurate, quotable one-sentence definitions for 10 core terms in the industry of {site}.
```

### Present comparisons as HTML tables

<https://www.geodog.co/en/geo-checklist#comparison-tables>

Priority: Medium priority. Effort: A few days. Evidence: Emerging standard. Roles: Content.

**Why it matters:** Tables are among the formats models parse most reliably. Comparisons buried in paragraphs are easily misread.

**How to do it:**

1. Write option, plan or product comparisons as \<table\>.
2. Use \<th\> for header cells.
3. Use text tables, not images of tables.

**How to verify:** Pages with comparisons contain \<table\> and \<th\> in the raw HTML.

**AI prompt:**

```text
Find content on {site} that compares things without a table and build a sample HTML table for one of them: [URL].
```

### Write steps as numbered lists and options as bullet lists

<https://www.geodog.co/en/geo-checklist#numbered-steps-lists>

Priority: Medium priority. Effort: Quick win. Evidence: Emerging standard. Roles: Content.

**Why it matters:** For how-to questions, assistants give steps as ordered lists. A clean list at the source makes them reproduce it accurately and completely.

**How to do it:**

1. Break processes into numbered \<ol\> steps.
2. Start each step with a verb.
3. List options and features with \<ul\>.

**How to verify:** How-to content contains \<ol\> in the raw HTML.

**AI prompt:**

```text
Turn this how-to content on {site} into numbered steps that each start with a verb: [URL].
```

### Build claims on measurable numbers, not adjectives

<https://www.geodog.co/en/geo-checklist#specific-numbers>

Priority: High priority. Effort: Quick win. Evidence: Emerging standard. Roles: Content.

**Why it matters:** Phrases like “very fast” appear on hundreds of pages; verifiable facts like “setup takes 15 minutes” set you apart and get quoted.

**How to do it:**

1. List the generic claims on the page.
2. Find a measurable figure, duration, price or rate for each.
3. State the source and date.

**How to verify:** Key product or service pages contain several concrete numbers with clear sources.

**AI prompt:**

```text
Find generic claims on this {site} page that lack numbers and suggest which data could back each one: [URL].
```

### Answer real customer questions in a visible FAQ section

<https://www.geodog.co/en/geo-checklist#faq-section-on-page>

Priority: Medium priority. Effort: Quick win. Evidence: Emerging standard. Roles: Content.

**Why it matters:** FAQ sections map directly to questions people ask assistants. Google retired FAQ rich results in May 2026, so their value now is the content, not the search appearance.

**How to do it:**

1. Collect real questions from support, sales and search data.
2. Answer each directly in 2–4 sentences.
3. Keep answers visible in the page HTML.

**How to verify:** Key service or product pages have a visible FAQ section built from real questions.

**AI prompt:**

```text
Draft an FAQ section for {site} with 10 realistic questions customers might ask an AI assistant and short, direct answers.
```

**Sources:** <https://www.searchenginejournal.com/google-drops-faq-rich-results/574429/>

## Content quality and trust

AI systems prefer sources that are reliable, current and verifiable. This section covers originality, citations, dates and author signals.

### Offer first-hand information and experience found nowhere else

<https://www.geodog.co/en/geo-checklist#original-first-hand-content>

Priority: High priority. Effort: Project. Evidence: Official source. Roles: Content.

**Why it matters:** Models struggle to tell apart pages that repeat the same information. Pages with original data, test results or field experience stand out as sources.

**How to do it:**

1. For each key page, answer “what does this page know first-hand?”.
2. Add your own tests, photos, cases and data.
3. Update or merge content that only rewrites competitors.

**How to verify:** Each key page has at least one section with original data, examples or experience.

**AI prompt:**

```text
Compare this {site} page with competing content and suggest first-hand information I could add to increase its original contribution: [URL].
```

**Sources:** <https://developers.google.com/search/docs/fundamentals/creating-helpful-content>

### Back important claims with links to primary sources

<https://www.geodog.co/en/geo-checklist#claims-cite-sources>

Priority: Medium priority. Effort: Quick win. Evidence: Emerging standard. Roles: Content.

**Why it matters:** Content that cites sources looks verifiable, and models prefer pages where statistics and claims can be traced.

**How to do it:**

1. Write numbers and claims together with their source.
2. Link to official bodies, standards or research pages.
3. Check source links for breakage regularly.

**How to verify:** Key content pages link to a primary source next to statistics.

**AI prompt:**

```text
List the unsourced claims and numbers on this {site} page and suggest a suitable primary source type for each: [URL].
```

### Give statistics with a date and scope

<https://www.geodog.co/en/geo-checklist#dated-statistics>

Priority: Medium priority. Effort: Quick win. Evidence: Emerging standard. Roles: Content.

**Why it matters:** An undated number makes a model either treat it as current or discard it as stale. A scope like “H1 2026, Turkey” makes the quote accurate.

**How to do it:**

1. Add the period and geography to every statistic.
2. Update or remove outdated numbers.
3. Show the update date on the page.

**How to verify:** Every statistic on the page states its period and source.

**AI prompt:**

```text
Find statistics on this {site} page that lack a date or scope and show how they should be written: [URL].
```

### Attribute expert opinions with name, title and organization

<https://www.geodog.co/en/geo-checklist#expert-quotes-attributed>

Priority: Low priority. Effort: A few days. Evidence: Emerging standard. Roles: Content.

**Why it matters:** Named expert quotes add credibility and become sources for “what do experts say” questions.

**How to do it:**

1. Get short, clear quotes from internal or external experts.
2. Credit each quote with name, title and organization.
3. Link to the expert’s profile page where possible.

**How to verify:** On pages with expert input, each quote shows the person’s name and title.

**AI prompt:**

```text
Suggest expert quote ideas that would strengthen {site} content on this topic, and 5 questions to ask the experts: [topic].
```

### Show publish and update dates on the page

<https://www.geodog.co/en/geo-checklist#visible-dates>

Priority: Medium priority. Effort: Quick win. Evidence: Emerging standard. Roles: Content.

**Why it matters:** Content with unclear dates is filtered out for time-sensitive questions, and users distrust undated information.

**How to do it:**

1. Show the publish and last-updated dates on articles and guides.
2. Change the date only for real content changes.
3. Keep the date format consistent.

**How to verify:** Content pages show publish and update dates in the first screen.

**AI prompt:**

```text
Check whether {site} content pages show dates and whether those dates are really current, and suggest a rule for displaying dates.
```

### Mark up dates in machine-readable form too

<https://www.geodog.co/en/geo-checklist#machine-readable-dates>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** A visible date alone may not be enough. time\[datetime\], datePublished and dateModified let bots read the date exactly.

**How to do it:**

1. Wrap the visible date in \<time datetime="2026-11-01"\>.
2. Add datePublished and dateModified in Article JSON-LD.
3. Check that the values match the visible date.

**How to verify:** The \<time datetime\> and JSON-LD dateModified values in the source match the visible date.

**AI prompt:**

```text
Check whether dates on this {site} page are given in machine-readable form in HTML and JSON-LD, and write the correct code: [URL].
```

**Sources:** <https://developers.google.com/search/docs/appearance/structured-data/article>

### Set a regular refresh cycle for key pages

<https://www.geodog.co/en/geo-checklist#content-refresh-cycle>

Priority: High priority. Effort: A few days. Evidence: Emerging standard. Roles: Content.

**Why it matters:** AI search favors current information; pages with outdated prices, versions or years lose both accuracy and visibility.

**How to do it:**

1. List key pages with an owner and review frequency.
2. Check prices, years and versions on a schedule.
3. Publish updates with a date and change note.

**How to verify:** In the content inventory, no key page has a last update older than 12 months.

**AI prompt:**

```text
Create a content refresh calendar template for {site} that prioritizes key pages: page, owner, frequency, fields to check and last check date.
```

### Show the author visibly and link to their profile

<https://www.geodog.co/en/geo-checklist#author-bylines>

Priority: High priority. Effort: A few days. Evidence: Official source. Roles: Content.

**Why it matters:** Content without a clear author is perceived as less trustworthy. Name, expertise and a profile link signal experience and expertise.

**How to do it:**

1. Add the author name and a short expertise note to each article.
2. Link the name to the author profile page.
3. Set author as a Person in Article JSON-LD.

**How to verify:** Articles show the author name in the first screen, linked to a profile page.

**AI prompt:**

```text
Review author information on {site} content pages: is it visible, linked to a profile and consistent with JSON-LD? List the gaps.
```

**Sources:** <https://developers.google.com/search/docs/fundamentals/creating-helpful-content>

### Publish an editorial policy page that covers your use of AI

<https://www.geodog.co/en/geo-checklist#editorial-policy>

Priority: Low priority. Effort: Quick win. Evidence: Emerging standard. Roles: Content, Business.

**Why it matters:** Explaining source selection, review and corrections makes your content process transparent and signals trust.

**How to do it:**

1. Document how content is produced, reviewed and updated.
2. State how you use AI tools and where humans review.
3. Link the page from the footer.

**How to verify:** The {site} footer links to an editorial policy page.

**AI prompt:**

```text
Draft a short editorial policy page for {site} with sections on source selection, expert review, updates, corrections and use of AI.
```

### Have humans review AI-generated content before publishing

<https://www.geodog.co/en/geo-checklist#ai-content-human-review>

Priority: Medium priority. Effort: A few days. Evidence: Official source. Roles: Content.

**Why it matters:** Google’s spam policies target content produced at scale without adding value. Unreviewed text can carry errors that damage brand trust.

**How to do it:**

1. Flag pages drafted with AI.
2. Have a subject expert check each one for accuracy.
3. Do not publish bulk pages that add no original information.

**How to verify:** The CMS records a reviewer and date for AI-assisted content.

**AI prompt:**

```text
Create a review checklist for AI-assisted content production on {site}: accuracy, sources, original contribution, tone and legal risk.
```

**Sources:** <https://developers.google.com/search/docs/essentials/spam-policies>

## Content strategy and topic coverage

AI search breaks a single query into many sub-questions. Visibility depends on how many of those your content answers.

### Find questions where competitors appear and you do not, and plan content

<https://www.geodog.co/en/geo-checklist#topic-gap-from-prompts>

Priority: High priority. Effort: A few days. Evidence: Emerging standard. Roles: Content, SEO.

**Why it matters:** Questions where AI answers cite competitors but not you are the clearest content opportunities.

**How to do it:**

1. Run your target question list in assistants.
2. Mark questions where competitors are cited and you are missing.
3. Plan a new page or a new section for each gap.

**How to verify:** The content plan assigns a page to every question where competitors appear in AI answers.

**AI prompt:**

```text
Suggest 20 questions to ask AI assistants for {site} and these competitors, and note which content type would most improve the chance of being cited for each: [competitors].
```

### Cover the sub-questions of core topics (query fan-out)

<https://www.geodog.co/en/geo-checklist#query-fan-out-coverage>

Priority: High priority. Effort: A few days. Evidence: Emerging standard. Roles: Content, SEO.

**Why it matters:** Google AI Mode and similar systems split a question into many sub-queries and look for sources for each. Sections that answer those sub-questions raise your chance of making it into the answer.

**How to do it:**

1. For each core topic, list sub-questions such as cost, comparisons, suitability, risks and steps.
2. Answer them as sections on existing pages or as separate pages.
3. Link the sub-questions to each other.

**How to verify:** Each core topic has a sub-question list mapped to a page or section.

**AI prompt:**

```text
List 15 sub-questions an AI search could split this core topic into for {site}, and build a table that helps me check whether existing content answers each: [topic].
```

**Sources:** <https://developers.google.com/search/docs/appearance/ai-features>

### Build clusters of comprehensive guides and supporting pages

<https://www.geodog.co/en/geo-checklist#pillar-cluster-architecture>

Priority: Medium priority. Effort: Project. Evidence: Emerging standard. Roles: Content, SEO.

**Why it matters:** Interlinked pages that cover a topic in depth show topical authority and lead models back to the same site across different sub-questions.

**How to do it:**

1. Pick one comprehensive guide per core topic.
2. Cover subtopics on supporting pages.
3. Link the guide and supporting pages both ways.

**How to verify:** Each core topic has a guide page with several linked supporting pages.

**AI prompt:**

```text
Plan a content cluster for {site} on this topic with a guide page and supporting pages, showing page titles and the links between them: [topic].
```

### Publish honest comparison and “alternatives” pages

<https://www.geodog.co/en/geo-checklist#comparison-alternatives-pages>

Priority: High priority. Effort: A few days. Evidence: Emerging standard. Roles: Content, Business.

**Why it matters:** People often ask assistants “X or Y” and “alternatives to X”. Without a source presenting your view, the answer is built entirely from third-party sites.

**How to do it:**

1. Identify the competitors you are most often compared with.
2. Write fair, criteria-based, current comparison pages.
3. State openly where the competitor is stronger.

**How to verify:** Dated comparison pages with tables are live for main competitors.

**AI prompt:**

```text
Draft a fair comparison page between {site} and this competitor: criteria, a table, and which option suits which user: [competitor].
```

### Publish original, quotable research and data

<https://www.geodog.co/en/geo-checklist#original-research-data>

Priority: Medium priority. Effort: Project. Evidence: Emerging standard. Roles: Content, Business.

**Why it matters:** Your own survey, data analysis or industry report is the strongest reason for other sites and AI answers to cite you.

**How to do it:**

1. Extract publishable findings from your product, customer or market data.
2. Explain the method, sample and date.
3. Summarize key findings as quotable one-sentence statements.

**How to verify:** At least one original data piece per year is live and earns links from other sites.

**AI prompt:**

```text
Suggest 5 original research or data content ideas for {site} based on data I likely have, with the data needed and the type of finding each could surface.
```

### Publish pricing and plan information on a clear, crawlable page

<https://www.geodog.co/en/geo-checklist#public-pricing-info>

Priority: High priority. Effort: Quick win. Evidence: Emerging standard. Roles: Business, Content.

**Why it matters:** “How much is X?” is one of the most common questions. Without pricing, assistants use outdated or third-party data, or say it is unknown.

**How to do it:**

1. Publish prices or price ranges as HTML text.
2. Show what each plan includes in a table.
3. State whether VAT is included and the validity date.

**How to verify:** Ask an assistant “what does {site} cost?”; the answer should match your current pricing page.

**AI prompt:**

```text
Review the {site} pricing page: are prices in text, is plan scope clear, are VAT and validity stated? Suggest improvements so AI answers report it correctly.
```

### Create pages by use case and audience

<https://www.geodog.co/en/geo-checklist#use-case-audience-pages>

Priority: Medium priority. Effort: A few days. Evidence: Emerging standard. Roles: Content.

**Why it matters:** Assistants answer contextual questions like “best X for small businesses”. Pages that clearly target an audience or scenario match those questions.

**How to do it:**

1. List customer segments and typical use cases.
2. Write a page for each explaining who solves which problem and how.
3. Add real customer examples and results.

**How to verify:** Each main customer segment has its own use-case page.

**AI prompt:**

```text
Suggest 8 audience or use-case pages for {site}, with a title, target question and the evidence each should include.
```

### Keep the help center and docs public and crawlable

<https://www.geodog.co/en/geo-checklist#help-docs-public>

Priority: Medium priority. Effort: A few days. Evidence: Emerging standard. Roles: Content, Developer.

**Why it matters:** Users ask assistants how to use products. Docs behind a login or loaded with JavaScript do not show up in answers.

**How to do it:**

1. Make help articles accessible without login.
2. Render docs server-side.
3. Add current version and date to each article.

**How to verify:** curl -s https://{site}/docs/... returns the page text, and site:{site}/docs returns results in Google.

**AI prompt:**

```text
Assess the {site} help center and documentation for AI assistant accessibility: login walls, rendering, structure and freshness.
```

### Publish video and podcast content with transcripts

<https://www.geodog.co/en/geo-checklist#multi-format-transcripts>

Priority: Low priority. Effort: A few days. Evidence: Emerging standard. Roles: Content.

**Why it matters:** Models work largely with text. Information in a video without a transcript rarely reaches AI answers; a transcript makes it quotable.

**How to do it:**

1. Publish edited transcripts for important videos.
2. Split transcripts into sections with headings.
3. Add VideoObject structured data to video pages.

**How to verify:** Key pages with video contain an HTML transcript.

**AI prompt:**

```text
Create a template to turn this video’s transcript into an article usable in AI answers, with headings, a summary and key quotes, for {site}: [video URL].
```

## Brand entity and E-E-A-T

Models recognize brands from connected pieces of information. Consistent brand facts, knowledge graph entries and expert profiles help your brand be recognized and described correctly.

### Keep your brand name, description and key facts identical everywhere

<https://www.geodog.co/en/geo-checklist#consistent-brand-facts>

Priority: High priority. Effort: A few days. Evidence: Emerging standard. Roles: Business, SEO.

**Why it matters:** Seeing different founding years, addresses or product descriptions across sites leads models to give conflicting or wrong answers about your brand.

**How to do it:**

1. Create one reference document with the brand name, one-sentence description, founding year, HQ, founders and contact details.
2. Update the site, social profiles, directories and press kit to match.
3. Remove old logos and former company names.

**How to verify:** Ask AI assistants “what is {site}, when was it founded, where is it based?”; answers should match the reference document.

**AI prompt:**

```text
Build a checklist that compares core facts about the {site} brand (description, founding year, HQ, founders, products) across sources on the web, and explain how to fix inconsistencies.
```

### Publish a thorough About page that says clearly who you are

<https://www.geodog.co/en/geo-checklist#about-page-complete>

Priority: High priority. Effort: Quick win. Evidence: Official source. Roles: Content, Business.

**Why it matters:** Models mostly answer “who is this company?” from the About page and external sources. A vague page lets third-party information fill the gap.

**How to do it:**

1. State what the company does in one sentence at the top.
2. Add verifiable facts such as founding, team, location, figures and awards.
3. Link to leadership and expert profiles.

**How to verify:** The first paragraph of the {site} About page describes the brand correctly in one sentence.

**AI prompt:**

```text
Review the {site} About page, list missing information AI assistants need to describe the brand correctly, and write a new opening paragraph.
```

**Sources:** <https://developers.google.com/search/docs/fundamentals/creating-helpful-content>

### Create or update a sourced Wikidata item for your brand

<https://www.geodog.co/en/geo-checklist#wikidata-item>

Priority: Medium priority. Effort: A few days. Evidence: Emerging standard. Roles: SEO.

**Why it matters:** Wikidata is an open entity database used by many knowledge graphs and models. A correct item helps distinguish your brand from other organizations.

**How to do it:**

1. Search Wikidata for an existing item.
2. If none exists, check that you meet Wikidata’s notability policy.
3. Add the official site, founding date, industry and identifiers with independent sources.
4. Add the item URL to the Organization sameAs array.

**How to verify:** The Wikidata item lists {site} as official website (P856) with at least one independent source.

**AI prompt:**

```text
List the core properties to fill for the Wikidata item of the {site} brand (P31, P856, P571, P159, P452, etc.) and briefly summarize the notability policy.
```

**Sources:** <https://www.wikidata.org/wiki/Wikidata:Notability>

### Enter Wikipedia only if you meet notability rules, with independent sources

<https://www.geodog.co/en/geo-checklist#wikipedia-presence>

Priority: Low priority. Effort: Project. Evidence: Emerging standard. Roles: Business.

**Why it matters:** Wikipedia is among the sources models rely on most, but promotional or conflict-of-interest edits get deleted and damage reputation.

**How to do it:**

1. Assess whether independent, reliable publications cover you enough.
2. Disclose your conflict of interest and use the edit request process.
3. Report errors in an existing article as sourced correction requests.

**How to verify:** Any Wikipedia article relies on independent sources and links to the official site.

**AI prompt:**

```text
Explain which independent sources to check to judge whether the {site} brand meets Wikipedia notability, and how to proceed within conflict-of-interest rules.
```

### Verify and claim your Google Knowledge Panel

<https://www.geodog.co/en/geo-checklist#knowledge-panel-claim>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: SEO.

**Why it matters:** The Knowledge Panel shows which entity Google recognizes your brand as. Once claimed, you can suggest corrections to wrong information.

**How to do it:**

1. Search your brand name and check for a panel.
2. Verify via the “Claim this knowledge panel” link.
3. Suggest corrections for wrong details.

**How to verify:** A brand search in Google shows the correct, verified Knowledge Panel.

**AI prompt:**

```text
Explain the signals needed to trigger and claim a Google Knowledge Panel for the {site} brand, and the steps involved.
```

**Sources:** <https://support.google.com/knowledgepanel/answer/7534902>

### Create detailed profile pages for authors and experts

<https://www.geodog.co/en/geo-checklist#author-profile-pages>

Priority: Medium priority. Effort: A few days. Evidence: Official source. Roles: Content.

**Why it matters:** Profile pages show an author’s expertise, experience and external profiles in one place, proving whose knowledge the content rests on.

**How to do it:**

1. Create a page per author with photo, title, expertise and experience.
2. List the author’s articles.
3. Link to LinkedIn and other profiles.

**How to verify:** Every article’s author link goes to a profile page that returns 200 and includes a bio.

**AI prompt:**

```text
Create a strong author profile page template for {site} with headline, bio, areas of expertise, certifications, publications and external profile links.
```

**Sources:** <https://developers.google.com/search/docs/fundamentals/creating-helpful-content>

### Verify your Google Business Profile and keep it complete and current

<https://www.geodog.co/en/geo-checklist#google-business-profile>

Priority: High priority. Effort: Quick win. Evidence: Official source. Roles: Business.

**Why it matters:** For local questions, Google AI Mode, AI Overviews and Gemini take address, hours, category and reviews largely from Google Business Profile. An incomplete or outdated profile gets you recommended with wrong details.

**How to do it:**

1. Claim and verify the profile.
2. Fill in primary category, services, hours, special hours and photos.
3. Check that name, address and phone match your site exactly.
4. Reply to questions and reviews on the profile.

**How to verify:** The business profile shows as verified in Google Maps, and name, address, phone and hours match the site.

**AI prompt:**

```text
Create an audit checklist for the Google Business Profile of {site}: category, services, hours, photos, Q&A, review replies and consistency with the site.
```

**Sources:** <https://support.google.com/business/answer/3038177>

### Keep your LinkedIn company page complete and current

<https://www.geodog.co/en/geo-checklist#linkedin-company-page>

Priority: Medium priority. Effort: Quick win. Evidence: Emerging standard. Roles: Business.

**Why it matters:** LinkedIn is a frequent source for models on company size, industry and employees.

**How to do it:**

1. Fill in description, industry, location, website and founding year.
2. Keep the description identical to the brand reference document.
3. Ask employees to link their profiles to the company page.

**How to verify:** The LinkedIn company description and website match {site}.

**AI prompt:**

```text
Rewrite the LinkedIn company description for {site} within 2,000 characters so AI assistants can summarize the brand accurately.
```

### Keep accurate listings on trusted directories in your industry

<https://www.geodog.co/en/geo-checklist#industry-directories>

Priority: Medium priority. Effort: Quick win. Evidence: Emerging standard. Roles: Business.

**Why it matters:** Sources such as Crunchbase, G2, Capterra, industry associations and local directories help models place your brand in its category.

**How to do it:**

1. List the key directories for your industry.
2. Create or update a profile on each.
3. Keep category, description and website consistent.

**How to verify:** All priority directories have a current profile.

**AI prompt:**

```text
Suggest and prioritize 15 directories, comparison and membership platforms that AI assistants might use as sources for the industry of {site}.
```

### Make leaders and experts visible in your industry

<https://www.geodog.co/en/geo-checklist#leadership-visibility>

Priority: Low priority. Effort: Project. Evidence: Emerging standard. Roles: Business.

**Why it matters:** Conference talks, interviews and expert articles strengthen the link between the company and its people and carry expertise signals to external sources.

**How to do it:**

1. Pick 2–3 experts to feature.
2. Build a calendar of speaking, podcast and writing opportunities.
3. List published pieces on the experts’ profile pages.

**How to verify:** Searches for the experts’ names surface external sources that tie them to the company.

**AI prompt:**

```text
Create a 6-month visibility plan for {site} leaders and experts: target publications, podcasts, events and topics.
```

## Off-site reputation and mentions

AI answers are built heavily from third-party sources: review sites, forums, lists and news. What others say about your brand matters as much as your own content.

### Map the third-party sources AI answers cite in your industry

<https://www.geodog.co/en/geo-checklist#cited-source-mapping>

Priority: High priority. Effort: A few days. Evidence: Emerging standard. Roles: SEO, Business.

**Why it matters:** Knowing which review sites, forums or lists are cited most tells you where off-site work should go.

**How to do it:**

1. Collect the source URLs in answers to your target questions.
2. Group them by domain and count frequency.
3. Mark whether your brand is present on each.

**How to verify:** A current table shows the 20 most-cited domains and your brand’s status on each.

**AI prompt:**

```text
Suggest 15 questions I can use to find third-party sites AI assistants often cite in the industry of {site}, and a table template to analyze the results by domain.
```

### Continuously monitor how your brand is mentioned on the web and in AI answers

<https://www.geodog.co/en/geo-checklist#brand-mention-monitoring>

Priority: Medium priority. Effort: Quick win. Evidence: Emerging standard. Roles: Business, SEO.

**Why it matters:** Mentions in news, forums, reviews and social media feed what models say about your brand. Misinformation or criticism caught early can be addressed before it settles into answers.

**How to do it:**

1. Set up web and social monitoring alerts for brand, product and executive names.
2. Include spelling variants in all relevant languages.
3. Classify mentions weekly by tone and source type.

**How to verify:** Brand alerts are active in the monitoring tool and a summary of last week’s mentions exists.

**AI prompt:**

```text
Suggest search queries, keyword variants and a weekly reporting template to monitor mentions of the {site} brand across the web, news, forums and social media.
```

### Collect fresh, genuine reviews on Google, Trustpilot and industry platforms

<https://www.geodog.co/en/geo-checklist#review-platforms-active>

Priority: High priority. Effort: A few days. Evidence: Emerging standard. Roles: Business.

**Why it matters:** Assistants answer “is X trustworthy, what do reviews say?” from review platforms. Few, old or unanswered reviews paint a negative picture.

**How to do it:**

1. Pick priority review platforms.
2. Set up an automated post-purchase or post-service review request.
3. Reply to reviews quickly, especially negative ones.
4. Avoid incentivized or fake reviews.

**How to verify:** Priority platforms show new reviews in the last 90 days and a reply rate above 80%.

**AI prompt:**

```text
Draft a plan for {site} to identify the review platforms AI assistants use and set up review collection, including fake review risks and platform rules.
```

### Manage your brand on Şikayetvar and resolve complaints

<https://www.geodog.co/en/geo-checklist#sikayetvar-response>

Priority: High priority. Effort: Quick win. Evidence: Emerging standard. Roles: Business.

**Why it matters:** In Turkish queries, questions like “X complaints” and “is X reliable” are common, and Şikayetvar is a prominent source for them. Unanswered complaints can surface negatively in AI answers.

**How to do it:**

1. Claim the brand account on Şikayetvar.
2. Reply to complaints quickly and concretely.
3. Get resolved complaints closed and send recurring issues to the product team.

**How to verify:** The Şikayetvar brand page shows high reply and resolution rates, with recent complaints answered.

**AI prompt:**

```text
Design a Şikayetvar management process for {site}: response time targets, reply templates, resolution tracking and reporting of recurring issues.
```

### Monitor and transparently join conversations on forums and Reddit

<https://www.geodog.co/en/geo-checklist#forums-community-presence>

Priority: Medium priority. Effort: A few days. Evidence: Emerging standard. Roles: Business, Content.

**Why it matters:** Forum and community content is often used in AI answers as a source of real user experience. Covert promotion breaks community rules and backfires.

**How to do it:**

1. Monitor threads about your brand and category (e.g. Reddit, Ekşi Sözlük, industry forums).
2. Correct misinformation while clearly disclosing who you are.
3. Contribute useful, non-promotional answers.

**How to verify:** Important threads with misinformation have an official, clearly identified reply.

**AI prompt:**

```text
Write a guide for {site} on monitoring brand and category conversations on communities such as Reddit and industry forums, with rules for transparent participation.
```

### Keep marketplace stores and product ratings consistent and current

<https://www.geodog.co/en/geo-checklist#marketplace-listings>

Priority: Medium priority. Effort: A few days. Evidence: Emerging standard. Roles: Business.

**Why it matters:** Product pages and seller ratings on marketplaces such as Amazon, Trendyol and Hepsiburada are frequent sources for product and brand questions.

**How to do it:**

1. Align marketplace titles and attributes with your own site.
2. Manage the seller rating and Q&A sections regularly.
3. Minimize price and stock differences.

**How to verify:** Your marketplace store rating is above target and product Q&A sections have no unanswered questions.

**AI prompt:**

```text
Create a checklist to audit {site} product listings on marketplaces for consistency with the site, Q&A management and ratings.
```

### Get included in “best X” lists and comparison sites

<https://www.geodog.co/en/geo-checklist#listicle-inclusion>

Priority: High priority. Effort: A few days. Evidence: Emerging standard. Roles: Business.

**Why it matters:** For recommendation questions, assistants often synthesize “best ... lists”. Not being on those lists can mean not being in the answer.

**How to do it:**

1. Find frequently cited list and comparison content for your category.
2. Reach out to authors with current, verifiable information.
3. Consider paid placements only when clearly labeled.

**How to verify:** A tracking table shows how many of the 10 most-cited lists in your category include you.

**AI prompt:**

```text
Suggest a search strategy to find “best” list content frequently cited in AI answers for the {site} category, and draft a short brief to send to list authors.
```

### Run digital PR to earn coverage in trusted news and industry media

<https://www.geodog.co/en/geo-checklist#digital-pr-authoritative>

Priority: Medium priority. Effort: Project. Evidence: Emerging standard. Roles: Business.

**Why it matters:** Mentions in reputable publications provide links and the independent validation models trust.

**How to do it:**

1. Prepare newsworthy data, research or expert commentary.
2. Build a list of target outlets and journalists.
3. Track coverage and list it on your press page.

**How to verify:** Coverage mentioning your brand appeared in target outlets in the last 6 months.

**AI prompt:**

```text
Draft a 3-month digital PR plan for {site} targeting industry and business publications in its market: story angles, target outlets and tracking metrics.
```

### Earn links from relevant, high-quality sites

<https://www.geodog.co/en/geo-checklist#relevant-backlinks>

Priority: Medium priority. Effort: Project. Evidence: Official source. Roles: SEO.

**Why it matters:** Links affect search ranking and therefore the chance of being a source in AI Overviews and Bing-grounded answers. Low-quality links create risk.

**How to do it:**

1. Analyze your current link profile.
2. Find sources linking to competitors but not to you.
3. Stay away from buying links and link networks.

**How to verify:** The Search Console Links report shows growth in links from relevant domains.

**AI prompt:**

```text
Explain step by step how to run a link gap analysis for {site} and suggest 10 concrete tactics to earn relevant, high-quality links.
```

### Respond to negative and inaccurate mentions professionally

<https://www.geodog.co/en/geo-checklist#negative-mentions-response>

Priority: Medium priority. Effort: Quick win. Evidence: Emerging standard. Roles: Business.

**Why it matters:** Unanswered criticism and misinformation can give AI answers a one-sided picture of your brand.

**How to do it:**

1. Assign an owner and response time target for negative mentions.
2. Acknowledge real mistakes and explain the fix.
3. Request sourced corrections for misinformation.

**How to verify:** Most negative mentions found in the last 90 days have a logged reply or correction.

**AI prompt:**

```text
Draft a policy for {site} on responding to negative and inaccurate mentions: prioritization, tone, reply templates and a misinformation correction process.
```

### Publish explanatory, searchable video content on YouTube

<https://www.geodog.co/en/geo-checklist#youtube-presence>

Priority: Low priority. Effort: A few days. Evidence: Emerging standard. Roles: Content.

**Why it matters:** YouTube is among the platforms Google’s AI answers cite often. Videos with good titles, descriptions and captions produce searchable text.

**How to do it:**

1. Create short video answers to common questions.
2. Put the question and a summary of the answer in the title and description.
3. Upload accurate captions and add chapters.

**How to verify:** Published videos exist for key questions, with edited captions and chapters.

**AI prompt:**

```text
Suggest 10 YouTube video ideas for {site} that could be cited in AI answers, each with a title, description summary and chapter titles.
```

## Language, market and Turkey layer

AI assistants build answers around the language and market of the question. Google AI Mode and AI Overviews have been available in Turkish in Turkey since February 2026; this section covers language and local market signals.

### Check key Turkish queries in Google AI Mode and AI Overviews regularly

<https://www.geodog.co/en/geo-checklist#ai-mode-turkey-check>

Priority: High priority. Effort: Quick win. Evidence: Emerging standard. Roles: SEO.

**Why it matters:** AI Mode and AI Overviews launched in Turkey on February 18, 2026. Which sources they show for Turkish queries now directly affects traffic and brand perception.

**How to do it:**

1. List 20–30 revenue-driving Turkish queries.
2. Check each in AI Mode and AI Overviews from a Turkey location.
3. Record the cited sites and your own status.

**How to verify:** A dated record lists the sites cited in AI Mode and AI Overviews for key queries and your position.

**AI prompt:**

```text
Suggest 25 Turkish queries for {site} to check in Google AI Mode and AI Overviews (informational, comparison and purchase intent), and a table template to record the results.
```

**Sources:** <https://webrazzi.com/2026/02/18/google-ai-modu-ve-ai-bakisi-ozelliklerini-turkiye-de-de-kullanima-sunmaya-basladi/>

### Write content natively in the language of each target market

<https://www.geodog.co/en/geo-checklist#native-language-content>

Priority: High priority. Effort: A few days. Evidence: Emerging standard. Roles: Content.

**Why it matters:** Assistants prefer sources in the asker’s language. Turkish content does not serve users in other markets, and machine-translated content does not earn local users’ trust.

**How to do it:**

1. Define target markets and their languages.
2. Have native-speaking editors write or edit key pages.
3. Choose terms that match how the market searches.

**How to verify:** Records show key pages in each target language passed native editor review.

**AI prompt:**

```text
Assess the language of this {site} page for naturalness, terminology and machine-translation artifacts, and give an improved sample paragraph: [URL].
```

### Cover the local phrasing and terms people actually use

<https://www.geodog.co/en/geo-checklist#local-query-phrasing>

Priority: Medium priority. Effort: Quick win. Evidence: Emerging standard. Roles: Content.

**Why it matters:** People ask the same thing in different ways, mixing local terms, English loanwords and everyday language. A page that uses only the formal term misses part of those questions.

**How to do it:**

1. Collect real phrasings from search data, support logs and forums.
2. Use both the local term and the common English term naturally on the page.
3. Prefer everyday language in question-style headings.

**How to verify:** Key pages naturally include common synonyms and English equivalents of the main term.

**AI prompt:**

```text
List 20 different ways (formal, everyday, with English terms) users in the target market might ask AI assistants about this topic for {site}: [topic].
```

### Show prices, units and dates in the target market’s format

<https://www.geodog.co/en/geo-checklist#local-units-currency>

Priority: Medium priority. Effort: Quick win. Evidence: Emerging standard. Roles: Content, Developer.

**Why it matters:** Local currency, tax status, units and date format help assistants report information correctly and help users trust it.

**How to do it:**

1. Show prices in local currency with tax status (e.g. TRY incl. KDV for Turkey).
2. Write dates and numbers in the local format.
3. Provide local contact details and phone numbers.

**How to verify:** Market pages show prices in local currency with tax status and local contact details.

**AI prompt:**

```text
Create a checklist to verify that {site} market pages show price, currency, tax, date and unit formats consistently.
```

### Use reciprocal hreflang and x-default on multilingual sites

<https://www.geodog.co/en/geo-checklist#hreflang-bidirectional>

Priority: Medium priority. Effort: A few days. Evidence: Official source. Roles: Developer.

**Why it matters:** hreflang links language and country versions of the same content. Non-reciprocal or wrong hreflang causes the wrong language version to be shown.

**How to do it:**

1. On each version, list all language versions including itself.
2. Use correct language-region codes (e.g. tr-TR, en-US).
3. Add x-default for the language selector page.

**How to verify:** A hreflang audit tool reports no missing return links or invalid codes.

**AI prompt:**

```text
Review hreflang tags on {site} pages for reciprocity, language codes, canonical alignment and x-default, list errors and write a correct example.
```

**Sources:** <https://developers.google.com/search/docs/specialty/international/localized-versions>

### Set up Yandex Webmaster for Turkish audiences too

<https://www.geodog.co/en/geo-checklist#yandex-webmaster>

Priority: Low priority. Effort: Quick win. Evidence: Emerging standard. Roles: SEO.

**Why it matters:** Yandex has a small but non-zero search share in Turkey. Yandex Webmaster shows indexing issues, and if IndexNow is set up, changes reach Yandex at the same time as Bing.

**How to do it:**

1. Add and verify the site in Yandex Webmaster.
2. Submit the sitemap.
3. If IndexNow is set up, check that Yandex receives notifications.

**How to verify:** The site is verified in Yandex Webmaster and the sitemap is processed.

**AI prompt:**

```text
Write a short guide for setting up Yandex Webmaster for {site} and using it with IndexNow.
```

**Sources:** <https://yandex.com/support/webmaster/en/>, <https://www.indexnow.org/>

### Publish your legal name, address and contact details clearly

<https://www.geodog.co/en/geo-checklist#local-trust-details>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: Business, Content.

**Why it matters:** Turkish e-commerce rules require seller details to be visible, and these details also let assistants answer “is this company real?” reliably.

**How to do it:**

1. Publish the legal name, registry number (MERSIS in Turkey), address, phone and email in the footer and contact page.
2. Keep them consistent with Organization structured data.
3. Add official channels such as a registered e-mail (KEP) address where applicable.

**How to verify:** The {site} footer and contact page show the legal name, address and contact details.

**AI prompt:**

```text
Create a checklist to verify that {site} shows the seller and company identity details expected in its market.
```

**Sources:** <https://ticaret.gov.tr/ic-ticaret/elektronik-ticaret/mevzuat>

## Measuring AI visibility

You cannot improve visibility you do not measure. Because AI answers vary from run to run, measurement needs a fixed question set, several engines and repeated sampling.

### Build a fixed prompt set that reflects real user intent

<https://www.geodog.co/en/geo-checklist#prompt-set-defined>

Priority: High priority. Effort: A few days. Evidence: Emerging standard. Roles: SEO, Business.

**Why it matters:** Measurements from random questions cannot be compared. A fixed set lets you see the effect of changes over time.

**How to do it:**

1. Write 30–100 prompts covering informational, comparison and purchase intent.
2. Create separate sets per target language.
3. Make a share of the set unbranded, generic questions.
4. Freeze the set with a version number.

**How to verify:** A dated, versioned prompt set exists, and at least half the prompts do not contain the brand name.

**AI prompt:**

```text
Create a 40-prompt set to measure AI visibility for {site}, grouped by informational, comparison, purchase and brand intent, in natural user language.
```

### Take a dated visibility baseline before you start

<https://www.geodog.co/en/geo-checklist#visibility-baseline>

Priority: High priority. Effort: Quick win. Evidence: Emerging standard. Roles: SEO.

**Why it matters:** Without a baseline, the effect of your work cannot be proven. Before-and-after comparisons are also needed for budget decisions.

**How to do it:**

1. Run the prompt set on all target engines.
2. Record mentions, citations and competitor results.
3. Document the date and method.

**How to verify:** A dated baseline report and a method note exist.

**AI prompt:**

```text
Create a template for an AI visibility baseline report for {site}, explaining which metrics and breakdowns it should include.
```

### Measure across several AI engines

<https://www.geodog.co/en/geo-checklist#multi-engine-coverage>

Priority: High priority. Effort: A few days. Evidence: Emerging standard. Roles: SEO.

**Why it matters:** ChatGPT, Gemini, Google AI Mode and AI Overviews, Perplexity, Copilot and Claude use different indexes and sources. Results on one engine do not represent the others.

**How to do it:**

1. Identify the engines your audience uses.
2. Run the same prompt set on each.
3. Report results per engine.

**How to verify:** The visibility report shows separate results for at least 4 engines.

**AI prompt:**

```text
Build an analysis framework explaining likely reasons for visibility differences for {site} across ChatGPT, Gemini, Google AI Mode, Perplexity, Copilot and Claude (index, bot access, source preferences).
```

### Track mention rate and citation rate separately

<https://www.geodog.co/en/geo-checklist#mention-and-citation-rate>

Priority: Medium priority. Effort: A few days. Evidence: Emerging standard. Roles: SEO.

**Why it matters:** Your brand being named in an answer and your site being linked as a source are different things: one shapes perception, the other drives traffic.

**How to do it:**

1. Record whether the brand name appears in each answer.
2. Record separately whether your URLs appear in the sources.
3. List which pages get cited.

**How to verify:** The report shows mention rate, citation rate and cited URLs separately.

**AI prompt:**

```text
Create a measurement table and formulas for {site} to calculate mention and citation rates in AI answers.
```

### Track your position in answers and how the brand is described

<https://www.geodog.co/en/geo-checklist#answer-position-sentiment>

Priority: Medium priority. Effort: A few days. Evidence: Emerging standard. Roles: SEO, Business.

**Why it matters:** Being recommended first in a list is not the same as being mentioned last with a caveat. Position and tone show the quality of visibility.

**How to do it:**

1. Record your position in the answer.
2. Mark whether the brand is described positively, neutrally or negatively.
3. Investigate the source of recurring negative statements.

**How to verify:** The report shows average position and tone distribution per engine.

**AI prompt:**

```text
Create scoring criteria and a sample evaluation table for {site} to assess brand position and tone in AI answers.
```

### Measure your share of voice against competitors

<https://www.geodog.co/en/geo-checklist#share-of-voice-competitors>

Priority: High priority. Effort: A few days. Evidence: Emerging standard. Roles: SEO, Business.

**Why it matters:** Absolute visibility means little on its own; the real question is how often competitors are recommended for the same questions.

**How to do it:**

1. Pick 3–5 main competitors.
2. Calculate each brand’s mention rate on the same prompt set.
3. Break share of voice down by engine and intent group.

**How to verify:** The report includes a comparative share of voice table.

**AI prompt:**

```text
Create a method and table template to calculate share of voice in AI answers for {site} and these competitors: [competitors].
```

### Check the accuracy of what assistants say about your brand

<https://www.geodog.co/en/geo-checklist#brand-answer-accuracy>

Priority: High priority. Effort: Quick win. Evidence: Emerging standard. Roles: Business, SEO.

**Why it matters:** Models can give outdated or wrong information about prices, features, founders or policies. Finding the source of the error is often the first step to fixing it.

**How to do it:**

1. Ask assistants core questions about your brand.
2. Record wrong or outdated information.
3. Find which source the error comes from and correct it there.
4. Publish the correct information clearly and currently on your own site.

**How to verify:** A log tracks the source and fix status of errors found in brand questions.

**AI prompt:**

```text
Prepare 15 questions to test whether AI assistants give accurate information about {site} (pricing, products, founders, policies, contact) and write criteria to evaluate the answers.
```

### Study competitors’ cited pages to understand why they win

<https://www.geodog.co/en/geo-checklist#competitor-cited-content>

Priority: Medium priority. Effort: A few days. Evidence: Emerging standard. Roles: Content, SEO.

**Why it matters:** Knowing which competitor page and format gets quoted shows what is missing from your own content.

**How to do it:**

1. Collect URLs where competitors are cited.
2. Review their structure, data and freshness.
3. Compare with your equivalent page and list the gaps.

**How to verify:** Each key question group has a competitor source page analysis and action list.

**AI prompt:**

```text
Analyze why this competitor page is cited in AI answers in terms of structure, data, freshness and authority, and draw actionable lessons for {site}: [URL].
```

### Rely on repeated sampling, not a single answer

<https://www.geodog.co/en/geo-checklist#repeated-sampling-method>

Priority: Medium priority. Effort: Quick win. Evidence: Emerging standard. Roles: SEO.

**Why it matters:** The same question gives different answers across sessions, locations and times. One measurement is not evidence; trends only show through repetition.

**How to do it:**

1. Run each prompt several times in the same period.
2. Keep location, language and login state fixed and recorded.
3. Report results as rates.

**How to verify:** The measurement protocol documents repeat count, location, language and session settings.

**AI prompt:**

```text
Write a measurement protocol for AI visibility tracking of {site}: repeat count, location, language, session state, timing and reporting rules.
```

### Track new AI platforms and features early

<https://www.geodog.co/en/geo-checklist#new-platform-watch>

Priority: Low priority. Effort: Quick win. Evidence: Emerging standard. Roles: SEO.

**Why it matters:** New assistants, search modes and shopping features appear quickly. Spotting them early lets you update bot access and measurement scope in time.

**How to do it:**

1. Watch server logs for new bot user agents.
2. Check analytics referrers for new AI domains.
3. Review measurement scope quarterly.

**How to verify:** A platform list and scope decision reviewed in the last three months exists.

**AI prompt:**

```text
Design a monthly routine for {site} to detect new AI bots and referrers from logs and analytics data.
```

## Analytics and attribution

Part of AI-driven traffic carries no referrer, and some platforms offer no separate reporting. This section is about collecting and interpreting the available data as accurately as possible.

### Verify Search Console and know AI Overviews data cannot be separated

<https://www.geodog.co/en/geo-checklist#gsc-verified>

Priority: High priority. Effort: Quick win. Evidence: Official source. Roles: SEO.

**Why it matters:** AI Overviews and AI Mode clicks and impressions are counted inside “Web” search in the Search Console Performance report and cannot be filtered out. It is still the core source for indexing and trends.

**How to do it:**

1. Verify Search Console as a domain property.
2. Export performance data regularly.
3. Note in reports that AI features cannot be separated.

**How to verify:** A domain property is verified in Search Console with at least one authorized user.

**AI prompt:**

```text
Explain indirect ways to monitor AI Overviews impact for {site} using Search Console data (query types, CTR changes, long queries) and state their limits.
```

**Sources:** <https://support.google.com/webmasters/answer/9128668>, <https://developers.google.com/search/docs/appearance/ai-features>

### Set up Bing Webmaster Tools and watch the AI Performance report

<https://www.geodog.co/en/geo-checklist#bing-wmt-ai-performance>

Priority: High priority. Effort: Quick win. Evidence: Official source. Roles: SEO.

**Why it matters:** The Bing Webmaster Tools AI Performance report (public preview since February 2026) shows citations, cited pages and grounding queries across Microsoft Copilot, AI-generated summaries in Bing and select partner integrations. It is a rare source of direct citation data from a major platform.

**How to do it:**

1. Add the site to Bing Webmaster Tools (you can import from Search Console).
2. Review the AI Performance report monthly.
3. Compare the most-cited key pages with key pages never cited.

**How to verify:** Bing Webmaster Tools \> AI Performance shows citation and page data.

**AI prompt:**

```text
Explain how to interpret citation, cited page and grounding query data in the Bing Webmaster Tools AI Performance report for {site}, and how to turn it into actions.
```

**Sources:** <https://blogs.bing.com/webmaster/February-2026/Introducing-AI-Performance-in-Bing-Webmaster-Tools-Public-Preview>

### Create a custom GA4 channel group for AI sources

<https://www.geodog.co/en/geo-checklist#ga4-ai-channel-group>

Priority: High priority. Effort: Quick win. Evidence: Emerging standard. Roles: Developer, SEO.

**Why it matters:** In the default channel group, AI traffic gets lost inside “Referral”. A separate channel makes its volume and quality visible.

**How to do it:**

1. Create a new group under Admin \> Channel groups.
2. Write a regex rule on session source covering domains such as chatgpt.com, perplexity.ai, gemini.google.com, claude.ai and copilot.microsoft.com.
3. Move the rule above the Referral rule.

**How to verify:** GA4 acquisition reports show a channel such as “AI Assistants” in the custom channel group.

**AI prompt:**

```text
Write the GA4 custom channel group rule for {site} that separates AI sources: a regex covering current AI domains and the rule ordering.
```

**Sources:** <https://support.google.com/analytics/answer/13051316>

### State in reports that part of AI traffic shows up as “Direct”

<https://www.geodog.co/en/geo-checklist#ai-dark-traffic-caveat>

Priority: Medium priority. Effort: Quick win. Evidence: Emerging standard. Roles: Business, SEO.

**Why it matters:** Clicks from apps and copied links often carry no referrer, so analytics figures are a lower bound of the real impact.

**How to do it:**

1. Add a note explaining this limit to reports.
2. Compare spikes in Direct traffic with visibility changes.
3. Add an AI option to “how did you hear about us?” questions.

**How to verify:** The visibility report includes a note on the dark traffic limit.

**AI prompt:**

```text
Explain methods to estimate AI-driven traffic to {site} indirectly (Direct traffic analysis, surveys, branded search) and their limits.
```

### Analyze AI bot crawling in server logs

<https://www.geodog.co/en/geo-checklist#bot-log-analysis>

Priority: Medium priority. Effort: A few days. Evidence: Official source. Roles: Developer.

**Why it matters:** Logs are the only direct source showing which bot crawls which pages, how often and with what errors. They also show whether files like llms.txt are actually read.

**How to do it:**

1. Split logs by bot user agent and verify against official IP lists.
2. Report requests, status codes and top crawled URLs per bot.
3. Flag key pages that are never crawled.

**How to verify:** A monthly bot log report shows at least OAI-SearchBot, ChatGPT-User, Claude-SearchBot, PerplexityBot, Googlebot and Bingbot separately.

**AI prompt:**

```text
Write a command or script that extracts AI bot request counts, status codes and top crawled URLs from {site} access logs, and explain how to interpret the results.
```

### Measure the conversion funnel of AI-driven sessions

<https://www.geodog.co/en/geo-checklist#ai-conversion-tracking>

Priority: High priority. Effort: A few days. Evidence: Emerging standard. Roles: Developer, Business.

**Why it matters:** Traffic volume alone does not show business value. How AI-referred visitors behave through forms, cart and purchase is what justifies the investment.

**How to do it:**

1. Define key conversion events (form, cart, purchase, signup).
2. Break them down by the AI channel group.
3. Track site search and key interactions as events.

**How to verify:** GA4 can produce a conversion rate and revenue report for the AI channel.

**AI prompt:**

```text
Recommend the events, conversion definitions and exploration report setup needed to track the conversion funnel of AI-driven sessions on {site} in GA4.
```

### Use a consistent UTM taxonomy and recognize parameters AI platforms add

<https://www.geodog.co/en/geo-checklist#utm-taxonomy>

Priority: Low priority. Effort: Quick win. Evidence: Emerging standard. Roles: Developer, Business.

**Why it matters:** Some platforms, such as ChatGPT, add a utm\_source parameter to links. Inconsistent UTMs split the same source across reports.

**How to do it:**

1. Write rules for source, medium and campaign names.
2. Follow them in links in product feeds and shared content.
3. Include values such as utm\_source=chatgpt.com in the AI channel.

**How to verify:** The GA4 source/medium report has no variant spellings of the same source.

**AI prompt:**

```text
Create a UTM naming guide for {site} that covers AI platforms and product feeds.
```

### Verify analytics tags and consent management work on every page

<https://www.geodog.co/en/geo-checklist#analytics-coverage>

Priority: Medium priority. Effort: Quick win. Evidence: Official source. Roles: Developer.

**Why it matters:** Untagged templates or a broken cookie consent flow leave gaps in your data, and consent mode must be set up correctly under privacy laws such as KVKK and GDPR.

**How to do it:**

1. Find pages without the analytics tag with a crawler.
2. Test the cookie consent and Consent Mode setup.
3. Add a tag check for new templates to the release process.

**How to verify:** The crawler finds zero untagged pages, and tags behave correctly when consent is denied.

**AI prompt:**

```text
Create a checklist to audit the analytics tag and cookie consent setup on {site}, including privacy-law points to watch.
```

**Sources:** <https://support.google.com/analytics/answer/9976101>, <https://www.kvkk.gov.tr/>

### Combine visibility, traffic and revenue in one dashboard

<https://www.geodog.co/en/geo-checklist#ai-visibility-dashboard>

Priority: Medium priority. Effort: A few days. Evidence: Emerging standard. Roles: Business, SEO.

**Why it matters:** When visibility metrics live apart from traffic and revenue, showing the impact of the work is hard. One dashboard speeds up monthly decisions.

**How to do it:**

1. Bring visibility, Search Console, Bing AI Performance and GA4 data into one dashboard.
2. Mark the baseline date and major changes on it.
3. Set a monthly reporting rhythm and owner.

**How to verify:** A current dashboard shows visibility, AI traffic and revenue on the same time axis.

**AI prompt:**

```text
Design the sections, metrics and data sources of a dashboard that combines AI visibility, traffic and revenue metrics for {site}.
```

## Process and ownership

GEO is not a one-off project. Bots, platforms and rules keep changing, so it needs ownership, regular checks and realistic expectations.

### Assign a named owner for GEO work

<https://www.geodog.co/en/geo-checklist#geo-owner-assigned>

Priority: High priority. Effort: Quick win. Evidence: Emerging standard. Roles: Business.

**Why it matters:** Work spread across content, development and SEO ends up ownerless. A named owner sets priorities and keeps the checklist current.

**How to do it:**

1. Name an owner and a backup.
2. Assign a role-based owner for each checklist section.
3. Write the responsibility into the job description.

**How to verify:** A team document names the GEO owner and section owners.

**AI prompt:**

```text
Create a RACI table for {site} showing the responsibilities of content, development, SEO and business teams in GEO work.
```

### Prioritize work in order: access, indexing, content, entity

<https://www.geodog.co/en/geo-checklist#geo-roadmap-maturity>

Priority: Medium priority. Effort: Quick win. Evidence: Emerging standard. Roles: Business, SEO.

**Why it matters:** Content work on a site bots cannot reach produces nothing. A roadmap that builds from the foundation sends effort where it has the most impact.

**How to do it:**

1. Close bot access and indexing issues first.
2. Improve the content structure of key pages next.
3. Move on to entity, off-site reputation and measurement maturity after that.

**How to verify:** In the roadmap, high-priority access and indexing items are scheduled before content projects.

**AI prompt:**

```text
Draft a 90-day GEO roadmap for {site} that prioritizes the items in this checklist by impact and effort.
```

### Catch robots.txt, noindex and canonical regressions with pre-release checks

<https://www.geodog.co/en/geo-checklist#release-regression-checks>

Priority: High priority. Effort: A few days. Evidence: Emerging standard. Roles: Developer.

**Why it matters:** Most visibility losses come from regressions in a release: a robots.txt change, a forgotten noindex or broken JSON-LD.

**How to do it:**

1. Add robots.txt diff, noindex, canonical and JSON-LD validation tests to CI.
2. Define a rule that blocks the release on a critical change.
3. Run the same checks daily in production and alert on failures.

**How to verify:** The CI pipeline shows a recent run of these checks.

**AI prompt:**

```text
Design a pre-release test suite for {site}: robots.txt diff, noindex, canonical, JSON-LD validity and status codes of key pages; write a sample script.
```

### Revalidate the checklist every quarter

<https://www.geodog.co/en/geo-checklist#quarterly-revalidation>

Priority: Medium priority. Effort: Quick win. Evidence: Emerging standard. Roles: SEO.

**Why it matters:** Bot names, platform rules and structured data support change; an item that was right last year may be wrong today.

**How to do it:**

1. Rerun all automated checks every quarter.
2. Review source links and platform documentation.
3. Announce changed items to the team.

**How to verify:** A dated revalidation record from the last three months exists.

**AI prompt:**

```text
List the agenda and the change sources to check for a quarterly GEO revalidation meeting for {site}.
```

### Set realistic goals and treat external claims with caution

<https://www.geodog.co/en/geo-checklist#realistic-expectations>

Priority: Medium priority. Effort: Quick win. Evidence: Emerging standard. Roles: Business.

**Why it matters:** Strong brands find a place in AI answers more easily, and new brands may need months to gain visibility. Generic claims like “AI traffic converts X times better” should not become targets until your own data confirms them.

**How to do it:**

1. Set quarterly targets against the baseline.
2. Separate quick wins from long-term work.
3. Test external benchmarks against your own data.

**How to verify:** The goals document records quarterly targets and assumptions based on the baseline.

**AI prompt:**

```text
Help me set realistic 6- and 12-month GEO goals for {site}, proposing a framework that accounts for brand awareness and current visibility.
```

### Train the team on the basics of AI search

<https://www.geodog.co/en/geo-checklist#team-training>

Priority: Medium priority. Effort: A few days. Evidence: Emerging standard. Roles: Business.

**Why it matters:** If writers, developers and sales do not share the same basics, gains disappear with the next piece of content or release.

**How to do it:**

1. Prepare short role-based training sessions.
2. Combine training with practice on a real task.
3. Add the checklist to onboarding for new hires.

**How to verify:** Training records show at least one session and practice task per role.

**AI prompt:**

```text
Create a GEO training plan for the {site} team with a 45-minute session each for content, development and marketing roles, each with a hands-on task.
```

## Frequently Asked Questions

### What is a GEO checklist?

A GEO (Generative Engine Optimization) checklist lists what your website needs so AI assistants such as ChatGPT, Gemini, Claude and Perplexity can read it, understand it and cite it: crawler access, technical foundation, structured data, answer-ready content and brand signals.

### How is GEO different from SEO?

SEO aims at rankings on a results page; GEO aims at being named and cited in AI answers. Much of the technical base is shared (indexability, speed, structured data), but GEO also needs access for AI crawlers, quotable passages and consistent brand facts.

### What does the agentic checklist cover?

The agentic list is about AI agents that read and act on your site for a user: discovery files such as llms.txt, machine-readable pages, labelled forms, stable URLs, .well-known discovery files and the price and stock data shopping agents need.

### What does the automatic check measure?

When you enter your domain we read your homepage, robots.txt, sitemap, llms.txt and the documented .well-known files from the outside: access for each AI crawler, HTTPS, response time, JSON-LD schema, canonical, title and description, text readable without JavaScript and more. No AI calls, no credits, and nothing is ticked for you.

### Where is my progress stored?

Your ticks are stored in this browser; no account is needed. When you sign in with a GeoDog account, your progress is also saved to the account and synced item by item with your other devices. A share link is only created when you ask for one.

### How is the score calculated?

Each item has a weight by priority (high 3, medium 2, low 1). The score is the weight of completed items divided by the total weight of the items that fit your site; items marked not applicable and items outside your chosen site type are left out. The score maps to five levels.

### Is llms.txt required?

No. llms.txt is a proposal, not a standard, and Google says it does not affect visibility. It is on the list because it is cheap and some agents and developer tools use it, not as a ranking factor.

### Does completing the list guarantee visibility in AI answers?

No. The list removes what stops assistants from reading and understanding your site. Whether you are actually named takes regular measurement of the questions your customers ask; GeoDog does that for you across ChatGPT, Gemini, Claude and Perplexity.
