AI Search & SEO Audit: GEO, llms.txt & Schema Checker
Pricing
Pay per event
AI Search & SEO Audit: GEO, llms.txt & Schema Checker
Use this to audit web pages for SEO and AI search (ChatGPT, Perplexity, Claude, AI Overviews) readiness. Input: URLs. Output: SEO and AI scores, blocked AI crawlers, schema, FAQ, author/date, llms.txt and prioritized fixes, plus Excel.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Panda Federation
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Share
AI search audit (GEO / AEO) plus SEO checker on Apify: give it URLs and get two 0-100 scores per page, SEO and AI search readiness (ChatGPT search, Perplexity, Claude, Copilot, Google AI Overviews), with the AI crawlers your robots.txt blocks, schema, FAQ, author/date signals, llms.txt, sitemap and prioritized fixes, plus a ready-to-edit llms.txt draft. Exported to Excel, CSV and JSON. Apify's free plan includes $5 of monthly platform credit, enough for roughly 1,250 pages at $0.004 each (pricing below).
See your site the way AI crawlers see it, and get a fix list you can hand to a developer or a client.
Most AI crawlers don't run JavaScript, many sites block them by accident in robots.txt, and answer engines prefer pages with clear entities, Q&A blocks and fresh, attributed content. AI Search & SEO Audit fetches each page once, without JavaScript, and checks:
- 🤖 AI crawler access: robots.txt rules for AI search/answer bots (OAI-SearchBot, ChatGPT-User, PerplexityBot, Claude-SearchBot, Claude-User, DuckAssistBot, Applebot, Bingbot, Googlebot) and AI training bots (GPTBot, ClaudeBot, Google-Extended, Applebot-Extended, CCBot, Meta-ExternalAgent, Bytespider, Amazonbot), plus bot firewalls that answer crawlers with 403
- 📝 Content AI can read: words visible without JavaScript, heading structure, question-style headings, lists and tables
- 🧩 Structured data: every JSON-LD
@type, main entity (Organization, LocalBusiness, Product, Article…), FAQPage / HowTo, invalid JSON-LD - 🕒 Trust signals: author and published / updated dates (meta tags or schema)
- 🗺️ Discovery: llms.txt and llms-full.txt, XML sitemap, canonical, noindex
- 🔍 SEO basics: HTTP status, title and meta description length, one H1, viewport, lang, HTTPS, image alt text, server response time, Open Graph
- ✍️ llms.txt draft for every site without one (free)
- 📊 Excel + CSV: Pages, Fixes (one row per fix, by priority) and Sites sheets
- 💸 $0.004 per page. 250 pages cost $1.00. Pages that can't be reached are listed free
Who it's for
- SEO and GEO / AEO consultants, agencies and Fiverr / Upwork freelancers: a client-ready AI search audit in minutes, priced for volume
- Site owners and marketers: find out why ChatGPT or Perplexity never cite you, starting with the blockers
- Developers: check a release for robots.txt mistakes, client-side-only rendering and broken JSON-LD
- Lead-gen teams: score prospects' websites and pitch with concrete fixes (pairs with Local Business Leads)
How to use the AI search audit
- Click Try for free.
- Paste page URLs, one per line (
example.com/pricingworks). - Optional: set Also audit internal pages (e.g. 10) to check pages linked from each URL, for a quick whole-site pass from the homepage.
- Set Maximum pages. You pay per audited page, so this also caps the cost.
- Click Start. 50 pages take about a minute. Download AUDIT_XLSX from Storage → Key-value store, or use the dataset via API.
Input example
{"urls": ["https://react.dev", "https://apify.com"],"crawlInternalLinks": 3,"maxPages": 20,"generateLlmsTxt": true}
Output example

One row per page. A real row from the example above (shortened):
{"url": "https://react.dev","statusCode": 200,"seoScore": 85,"aiReadinessScore": 55,"title": "React","titleLength": 5,"h1Count": 2,"h2Count": 15,"questionHeadings": 0,"wordCount": 1236,"schemaTypes": [],"author": null,"aiSearchBotsBlocked": [],"aiTrainingBotsBlocked": [],"llmsTxt": true,"sitemapFound": false,"responseMs": 97,"fixes": ["[medium] [SEO] Title is 5 characters; aim for 10 to 65 so it is not cut off.","[medium] [AI] No JSON-LD structured data. Add schema.org markup (Organization, LocalBusiness, Product, Article…) so AI and search engines understand the entity.","[medium] [AI] No question-style headings or FAQ schema. AI answers pull from clear Q&A blocks: add an FAQ section with real customer questions (and FAQPage schema).","[medium] [AI] No author or date signals. Show who wrote or owns the content and when it was updated (and mark it up in schema)."],"agentSummary": "https://react.dev: SEO 85/100, AI readiness 55/100; 1236 words without JS; schema: none; llms.txt yes; top fix: Title is 5 characters; aim for 10 to 65 so it is not cut off."}
Fields
| Field | What it is |
|---|---|
seoScore, aiReadinessScore | 0-100 scores (see scoring below) |
aiSearchBotsBlocked, aiTrainingBotsBlocked, crawlerBlocked | AI bots disallowed for this URL in robots.txt; whether a bot firewall answered crawlers with 403/429/503 |
wordCount, scriptCount | Words visible in the raw HTML (no JavaScript) and number of scripts |
schemaTypes, faqSchema, invalidJsonLd | JSON-LD types found, FAQ/HowTo present, broken blocks |
author, datePublished, dateModified | Authorship and freshness signals |
title, metaDescription, h1, h1Count, h2Count, questionHeadings | On-page basics |
canonical, noindex, lang, mobileViewport, openGraph, imagesMissingAlt, responseMs | Technical SEO |
llmsTxt, sitemapFound, robotsTxtStatus | Site-level discovery files |
fixes | [priority] [SEO or AI] what to do, highest priority first |
error | Only on pages that couldn't be audited (not charged) |
agentSummary | One plain-English line per page |
SEO score (100): HTTP 200 (15), indexable (15), title 10-65 chars (10), meta description 50-165 (10), one H1 (10), canonical (5), viewport (5), lang (5), HTTPS (5), image alt text (5), 300+ words (10), HTML under 1.5 s (5). AI readiness score (100): AI search crawlers allowed (20), 150+ words without JavaScript (15), JSON-LD (10), main entity type (5), FAQ schema or question headings (10), author + date (10), llms.txt (5), sitemap (5), meta description (5), H1 + H2 structure (5), lists/tables (5), Open Graph title + image (5). A bot firewall that blocks crawlers costs 20 points. AI training bots are reported but not scored: blocking them is a business choice and doesn't stop AI search citations.
Files in the key-value store
| Key | What it is |
|---|---|
AUDIT_XLSX | Excel workbook: Pages, Fixes (one row per fix, colored by priority), Sites (robots.txt, AI bots, sitemaps, llms.txt and draft), Run log, Read me |
AUDIT_CSV | Pages table as CSV |
LLMS_TXT_DRAFTS | JSON: site → ready-to-edit llms.txt draft, for sites without one |
SUMMARY | JSON: average scores, per-site findings, one-line takeaway and nextStep |
For AI agents
Use this Actor to audit web pages for SEO and AI search (GEO/AEO) readiness and get prioritized fixes. Call it with Apify's MCP server (https://mcp.apify.com, tool call-actor, Actor pandadad0214/ai-search-seo-audit) or the API (POST https://api.apify.com/v2/acts/pandadad0214~ai-search-seo-audit/run-sync-get-dataset-items).
Minimal input:
{"urls": ["https://example.com"], "crawlInternalLinks": 5}
Each dataset item includes agentSummary (one line with both scores, words without JS, schema, blocked AI bots, llms.txt and the top fix), seoScore, aiReadinessScore, aiSearchBotsBlocked and fixes (strings, highest priority first). The SUMMARY record has averageSeoScore, averageAiReadinessScore, sites, a one-line takeaway and nextStep. Unreachable pages come back with error and are not charged.
AI search audit pricing
Apify paid-plan discounts: Bronze members pay 10% less, Silver 20% less and Gold 30% less per page. Free-plan prices are shown below; the discount applies automatically.
$0.004 per page audited (pay-per-event), plus a tiny Actor-start fee of $0.00005. Excel, CSV, llms.txt drafts and the summary are included. Pages that can't be reached, aren't HTML or block the crawler cost nothing. Your maximum charge per run is respected.
FAQ
Is there a free way to try this GEO audit? Yes. Apify's free plan includes $5 of monthly platform credit, enough for roughly 1,250 pages.
Does it check whether ChatGPT actually cites my site? No. It checks whether your pages are technically ready to be crawled, understood and quoted. Citation tracking needs live AI queries; this tool fixes the foundations first.
Why audit without JavaScript? OpenAI, Anthropic, Perplexity and most other AI crawlers fetch raw HTML and don't run JavaScript. If your content only appears after scripts run, they see an empty page.
Does llms.txt help? It's a proposed standard that some AI tools read. It's cheap to add, so the audit drafts one for you, but it's weighted lightly.
Is it safe to run on any site? It makes one normal request per page plus robots.txt, sitemap and llms.txt per site, identifies itself in the User-Agent and never submits forms or logs in. Audit sites you own or have permission to review.
Can I use it from code or an AI agent? Yes, via the Apify API, the Python/JS clients, or as a tool through Apify's MCP server.
More Panda Federation tools
- Email Domain Security Checker
- Local Business Leads
- Podcast Leads Finder
- PDF Table Extractor
- Academic Research MCP Server
All Panda Federation Actors on Apify
Questions or a custom check? Open an issue on this Actor's Issues tab.
Changelog
- 2026-11-01: First public release: SEO and AI readiness scores, AI search vs training crawler checks, bot-firewall detection, JSON-LD/FAQ/author/date checks, llms.txt and sitemap detection, llms.txt drafts, internal-page crawl, Excel/CSV exports, agent-friendly
agentSummaryandtakeaway, pay-per-event pricing with Bronze/Silver/Gold discounts.