Ai Bot Log Audit logo

Ai Bot Log Audit

Organization
NVlabs
ai-bot-log-audit

Use when analyzing server logs to understand how AI crawlers (GPTBot, ClaudeBot, PerplexityBot) interact with your site. Use when optimizing content placement for LLM retrieval, diagnosing why AI search isn't citing your content, or auditing crawl patterns to find optimization gaps.

Overview

PublisherNVlabs
RepositorySkill2Env
Skill nameai-bot-log-audit
Stars
189
Forks
18
Bundled files
Instructions only
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • Self-contained

    Everything the model needs lives in the instructions — no extra files to sync.

  • Open source

    Published by NVlabs on GitHub. Read the source before you install it.

Installation

Install the Ai Bot Log Audit AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/NVlabs/Skill2Env/tree/main/SkillHub/skills/ai-bot-log-audit
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/NVlabs/Skill2Env.git /tmp/Skill2Env
mkdir -p .claude/skills
cp -r /tmp/Skill2Env/SkillHub/skills/ai-bot-log-audit .claude/skills/ai-bot-log-audit
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Ai Bot Log Audit in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Ai Bot Log Audit on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Ai Bot Log Audit is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

AI Bot Log Audit

Analyze server logs to understand how AI crawlers retrieve your content, then optimize placement and structure for maximum citation probability. Based on Metehan Yeşilyurt's log file analysis framework.

When to Use This Skill

Use this skill when you need to:

  • Audit AI bot crawl patterns on your site (what they fetch, how often, what they skip)
  • Diagnose citation gaps — your content exists but AI search doesn't cite it
  • Optimize content placement for LLM retrieval mechanics (lost-in-the-middle, embedding similarity)
  • Compare AI bot behavior across different products (Google, OpenAI, Anthropic, Perplexity)
  • Build a GEO strategy grounded in actual crawl data, not assumptions
  • Identify which pages AI bots prioritize and which they ignore

This skill is particularly valuable for:

  • SEO professionals adding AI search to their optimization scope
  • Publishers monitoring AI traffic and content extraction
  • Technical SEOs conducting log file analysis
  • Content strategists deciding what to optimize for AI visibility

Methodology Foundation

Source Expert: Metehan Yeşilyurt (SEO Consultant, speaker at BrightonSEO, The Search Session)

Core Thesis: Log file analysis reveals the real mechanics of AI search retrieval. Different AI products (AI Overviews, AI Mode, Perplexity) use fundamentally different retrieval pipelines, so optimizing for "AI search" requires understanding each product's specific crawl and retrieval behavior.

"AI Overviews, AI Mode, and Web Guide are three completely different products with different retrieval behaviors. You can't optimize for 'AI search' as if it's one thing." — Metehan Yeşilyurt, The Search Session

Key Insight: The shift from traditional SEO to AI search optimization is from chasing clicks in deterministic SERPs to chasing citations in machine-generated text. Log files reveal the mechanics behind citation selection.


What Claude Does vs What You Decide

Claude DoesYou Decide
Guides log analysis methodologyWhich log data to provide
Identifies patterns in crawl behaviorStrategic priority of AI products
Recommends content placement optimizationsContent creation/modification scope
Maps retrieval behavior to optimization actionsResource allocation for changes
Creates audit templates and checklistsWhich recommendations to implement

What This Skill Does

When invoked, I will guide you through:

  1. Log Collection — Identify and extract AI bot activity from server logs
  2. Bot Identification — Map user agents to AI products
  3. Crawl Pattern Analysis — Understand what AI bots fetch and ignore
  4. Retrieval Mechanics — Learn how each AI product processes your content
  5. Optimization Actions — Specific changes to improve AI citation probability

Instructions

Phase 1: AI Bot Identification

Known AI Crawlers (2026)
Bot User AgentOperatorPurposeRespects robots.txt?
GPTBotOpenAITraining data + ChatGPT BrowseYes
ChatGPT-UserOpenAIReal-time browsing in ChatGPTYes
OAI-SearchBotOpenAISearchGPT / ChatGPT SearchYes
ClaudeBotAnthropicTraining data collectionYes
PerplexityBotPerplexityReal-time search + answer generationYes (mostly)
Google-ExtendedGoogleGemini/AI training (deprecated — now part of Googlebot)N/A
GooglebotGoogleTraditional crawl + AI Overviews + AI ModeYes
BytespiderByteDanceTraining for TikTok AI featuresYes
CCBotCommon CrawlOpen dataset used by many AI modelsYes
Applebot-ExtendedAppleApple Intelligence featuresYes
Log Extraction Commands
bash
# Extract all AI bot hits from Apache/Nginx access logs
grep -iE "(GPTBot|ChatGPT-User|OAI-SearchBot|ClaudeBot|PerplexityBot|Bytespider|CCBot|Applebot-Extended)" access.log > ai_bots.log

# Count hits by bot
awk -F'"' '{print $6}' ai_bots.log | grep -oE "(GPTBot|ChatGPT-User|OAI-SearchBot|ClaudeBot|PerplexityBot|Bytespider|CCBot)" | sort | uniq -c | sort -rn

# Top pages crawled by AI bots
awk '{print $7}' ai_bots.log | sort | uniq -c | sort -rn | head -50

# Crawl frequency by day
awk '{print $4}' ai_bots.log | cut -d: -f1 | tr -d '[' | sort | uniq -c

# Response codes for AI bots (are they getting 200s or errors?)
awk '{print $9}' ai_bots.log | sort | uniq -c | sort -rn

Phase 2: Crawl Pattern Analysis

What to Look For
PatternWhat It MeansAction
Bot fetches page frequentlyPage is in retrieval index, content mattersOptimize this page first
Bot fetches page once then stopsPage was evaluated and deprioritizedImprove content quality/freshness
Bot never fetches a pagePage not discovered or blockedCheck internal linking, sitemap, robots.txt
Bot gets 404/500Technical issue blocking retrievalFix immediately
Bot fetches but doesn't citeContent retrieved but not selected for answersImprove structure, uniqueness, authority
Crawl Budget Analysis

AI bots have crawl budgets like traditional bots. If your site is large:

QUESTIONS TO ANSWER:
1. What % of pages are being crawled by AI bots?
2. Are high-value pages being fetched?
3. Are AI bots wasting time on low-value pages (tag pages, pagination)?
4. What's the crawl frequency — daily? weekly? sporadic?
5. Do different AI bots prioritize different pages?
Comparative Bot Behavior

Map how each bot interacts with your site differently:

ANALYSIS TEMPLATE:

GPTBot:
  Pages fetched: ___
  Top pages: ___
  Crawl frequency: ___
  Response codes: ___

PerplexityBot:
  Pages fetched: ___
  Top pages: ___
  Crawl frequency: ___
  Response codes: ___

ClaudeBot:
  Pages fetched: ___
  Top pages: ___
  Crawl frequency: ___
  Response codes: ___

Phase 3: Understanding Retrieval Mechanics

Each AI product uses a different retrieval pipeline. Optimizing requires understanding the mechanics.

Perplexity: Embedding Similarity + Source Diversification

Perplexity uses high embedding similarity to match content to queries, then actively diversifies sources.

What this means for you:

  • Semantic match matters more than keyword match
  • Being the single best source isn't enough — Perplexity diversifies
  • Your content needs to be retrievable AND complementary to other sources
  • Structured, extractable content wins (tables, definitions, clear claims)
Google AI Overviews: Search Index + LLM Layer

AI Overviews sit on top of existing Google Search rankings. Your traditional SEO signals matter.

What this means for you:

  • If you don't rank on page 1 for traditional search, you're unlikely to appear in AI Overviews
  • The AI layer selects from already-ranked pages and synthesizes
  • E-E-A-T signals are inherited from search ranking
Google AI Mode: Multi-Step Query Fan-Out

AI Mode decomposes complex questions into sub-queries, retrieves for each, then synthesizes.

What this means for you:

  • Content that answers sub-questions gets included
  • Comprehensive topical coverage across your site matters
  • Internal linking between related topics helps AI Mode stitch answers together

Phase 4: LLM Vulnerability Awareness

Understanding known LLM processing weaknesses helps you position content for maximum retrieval.

4 Key LLM Vulnerabilities
VulnerabilityDescriptionOptimization
Recency biasLLMs weight recent information higher, even when older info is more accurateDate your content clearly. Update regularly. Recent timestamps = retrieval advantage
Lost-in-the-middleLLMs process beginnings and endings of context better than middlesPlace key claims, definitions, and statistics at the START and END of pages/sections
Data poisoning susceptibilityLLMs can be influenced by coordinated content patternsNot actionable for you, but be aware: competitors can game AI answers
Prompt injectionLLMs can be manipulated via hidden instructionsNot actionable for SEO, but relevant for security audits
Lost-in-the-Middle: Practical Content Placement

This is the most actionable vulnerability for SEO:

PAGE STRUCTURE FOR LLM RETRIEVAL:

TOP (HIGH ATTENTION):
├── Key definition / direct answer
├── Critical statistics with context
└── Main claim / thesis

MIDDLE (LOW ATTENTION):
├── Supporting details
├── Tables and structured data (LLMs handle these well regardless of position)
├── Examples and elaboration
└── Supporting evidence

BOTTOM (HIGH ATTENTION):
├── Summary of key points
├── FAQ with direct answers
├── Conclusion with standalone claims
└── Updated date

"FAQs at the end of the page, tables in the middle — that's the lost-in-the-middle fix. LLMs handle structured data well regardless of position, but flowing text in the middle gets deprioritized." — Metehan Yeşilyurt


Phase 5: Audit Report Template

AI Bot Log Audit Report
markdown
# AI Bot Log Audit: [Site Name]
**Date:** [Date]
**Period analyzed:** [Date range]
**Log source:** [Apache/Nginx/CDN]

## Executive Summary
[2-3 sentence overview of findings]

## Bot Activity Overview

| Bot | Total Hits | Unique Pages | Avg Daily Hits | Status |
|-----|-----------|-------------|----------------|--------|
| GPTBot | ___ | ___ | ___ | Active/Inactive |
| PerplexityBot | ___ | ___ | ___ | Active/Inactive |
| ClaudeBot | ___ | ___ | ___ | Active/Inactive |
| ChatGPT-User | ___ | ___ | ___ | Active/Inactive |

## Top Pages by AI Bot Activity
1. [URL] — [hits] hits — [which bots]
2. [URL] — [hits] hits — [which bots]
3. [URL] — [hits] hits — [which bots]

## Pages Not Crawled (Expected High-Value)
- [URL] — Likely cause: [blocked/not linked/low authority]
- [URL] — Likely cause: [___]

## Technical Issues
- [N] pages returning 404 to AI bots
- [N] pages returning 500 to AI bots
- robots.txt blocking: [yes/no — which bots?]

## Content Optimization Recommendations

### Priority 1: Fix Technical Issues
- [ ] [Specific fix]

### Priority 2: Optimize High-Traffic AI Pages
- [ ] Apply lost-in-the-middle structure to [page]
- [ ] Add entity schema to [page]
- [ ] Update freshness signals on [page]

### Priority 3: Improve Discoverability
- [ ] Internal link to [uncrawled page] from [crawled hub]
- [ ] Add to sitemap: [page]
- [ ] Create content for [gap topic]

## robots.txt Recommendations
[Current AI bot directives and recommended changes]

Examples

Example 1: Publisher Losing AI Traffic

Context: News publisher noticed declining traffic from AI referrals. Log audit reveals:

Findings:

  • GPTBot hits dropped 60% after robots.txt change (accidentally blocked)
  • PerplexityBot only crawling homepage and top 5 articles
  • Most content pages have zero AI bot visits
  • AI bots hitting 404s on URL structure that changed 3 months ago

Actions:

  1. Fix robots.txt — allow GPTBot and PerplexityBot
  2. Add 301 redirects for old URL structure
  3. Improve internal linking from high-crawl pages to deep content
  4. Add article schema with datePublished and dateModified
  5. Restructure top articles with lost-in-the-middle optimization

Example 2: SaaS Blog Not Getting AI Citations

Context: SaaS company publishes weekly blog but never appears in ChatGPT or Perplexity answers.

Findings:

  • ClaudeBot and GPTBot crawl regularly (technical access is fine)
  • Content is generic ("10 Tips for..." format) — interchangeable with competitors
  • No original data, case studies, or unique insights
  • Author pages have no Person schema
  • Brand search volume: 100/month (competitors: 3,000+)

Actions:

  1. Content strategy shift: original research > generic guides
  2. Add Person schema for all authors with credentials
  3. Place unique data/claims at start and end of articles (lost-in-the-middle)
  4. Build entity authority for 2 key authors (podcast appearances, guest posts)
  5. Create comparison content where their product is one of the compared options

Checklists & Templates

Quick Audit Checklist

ACCESS CHECK
[ ] AI bots not blocked in robots.txt (check each bot separately)
[ ] AI bots getting 200 responses (not 403/404/500)
[ ] Sitemap accessible and up to date
[ ] Key pages present in sitemap

CRAWL PATTERNS
[ ] High-value pages are being crawled by AI bots
[ ] Crawl frequency is consistent (not declining)
[ ] AI bots not wasting budget on low-value pages
[ ] Multiple AI bots active (not just one)

CONTENT OPTIMIZATION
[ ] Key claims at beginning and end of pages (not buried in middle)
[ ] Tables and structured data for comparisons
[ ] FAQ sections at bottom of major pages
[ ] Content is updated with recent dates
[ ] Unique data or original insights present

ENTITY SIGNALS
[ ] Author/organization schema on relevant pages
[ ] Entity mentioned consistently across the site
[ ] Cross-platform entity presence established

Skill Boundaries

What This Skill Does Well

  • Guiding server log analysis for AI bot patterns
  • Explaining retrieval mechanics for different AI products
  • Recommending content placement optimizations
  • Creating structured audit reports

What This Skill Cannot Do

  • Access or parse your actual server logs
  • Query live AI search results
  • Guarantee citation in AI responses
  • Replace technical SEO expertise for complex log analysis

References

Primary Sources:

  • Metehan Yeşilyurt — "Log Files, AI Bots, and the Real Mechanics of AI Search" (The Search Session, Advanced Web Ranking)
  • Mark Williams-Cook — Signal decay thesis and query fan-out analysis
  • Lily Ray — Entity-first framework and cross-platform authority

Tools Referenced:

  • Screaming Frog Log File Analyzer
  • GoAccess (open-source log analyzer)
  • queryfan.com (query fan-out analysis)

Technical References:

  • OpenAI GPTBot documentation
  • Anthropic ClaudeBot documentation
  • Google Search Central — Googlebot and AI features

Related Skills

  • llm-optimized-content — Content optimization for AI search (GEO)
  • entity-seo-playbook — Building entity authority for AI visibility
  • lighthouse-audit — Technical SEO and performance audit
  • seo-content-writer — SEO content creation with E-E-A-T
  • schema-markup — Structured data implementation

Skill Metadata

yaml
name: ai-bot-log-audit
category: seo-tools
subcategory: geo
version: 1.0.0
author: GUIA
source_expert: Metehan Yeşilyurt (SEO Consultant, BrightonSEO speaker) — The Search Session podcast
difficulty: intermediate
mode: centaur
tags: [ai-bots, log-analysis, geo, ai-search, crawl-audit, perplexity, gptbot, claudebot, retrieval, lost-in-the-middle]
created: 2026-02-10
updated: 2026-02-10

Frequently asked questions

What does the Ai Bot Log Audit AI skill do?

Use when analyzing server logs to understand how AI crawlers (GPTBot, ClaudeBot, PerplexityBot) interact with your site. Use when optimizing content placement for LLM retrieval, diagnosing why AI search isn't citing your content, or auditing crawl patterns to find optimization gaps.

Why use Ai Bot Log Audit on TypingMind?

Because you install it once and use it with any model. Ai Bot Log Audit is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Ai Bot Log Audit in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/NVlabs/Skill2Env/tree/main/SkillHub/skills/ai-bot-log-audit. TypingMind reads its SKILL.md and installs it as a skill you can enable per chat.

Which AI models can use Ai Bot Log Audit?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Ai Bot Log Audit?

As many as you like. As long as a model supports skills, you can use Ai Bot Log Audit with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Ai Bot Log Audit AI skill free?

Yes. It is published on GitHub by NVlabs under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇