SEO Audit + GEO AI-Visibility Check Included avatar

SEO Audit + GEO AI-Visibility Check Included

Pricing

$25.00 / 1,000 page audited (seo + geo)s

Go to Apify Store
SEO Audit + GEO AI-Visibility Check Included

SEO Audit + GEO AI-Visibility Check Included

Full technical SEO audit with the GEO / AI-visibility check included at no extra cost: what Googlebot, GPTBot, ClaudeBot and PerplexityBot actually see, llms.txt, AI bot rules, plus hreflang and multilingual checks. 0-100 score per page and a ranked fix list.

Pricing

$25.00 / 1,000 page audited (seo + geo)s

Rating

0.0

(0)

Developer

mark muzyka

mark muzyka

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

6 hours ago

Last modified

Share

A full technical SEO audit of any website, with the GEO / AI-visibility check included at no extra cost. One price per page covers both.

  • SEO: a 0-100 score for every page, indexing, meta, headings, content, structured data, links, images and a prioritized fix list ranked by impact, reach and effort.
  • GEO (included): can ChatGPT, Claude, Perplexity and Google AI features actually read your site? The audit fetches your pages as GPTBot, OAI-SearchBot, ClaudeBot, PerplexityBot and Googlebot and compares what each one gets, checks robots.txt rules for 15 AI and search bots (including Google-Extended, used for Gemini), and validates llms.txt and llms-full.txt.
  • Multilingual (included): hreflang reciprocity, x-default, <html lang> vs URL, and the real language of the text on every locale page. Most SEO audit tools skip this.

What bots actually see. The audit reads the raw HTML exactly as crawlers fetch it, without running JavaScript. Most search and AI crawlers index that raw HTML, so if your content only appears after JavaScript runs, this audit shows it as missing, which is exactly what you need to fix.

Who it is for

  • SEO agencies and freelancers: a client-ready audit with a fix list you can paste into a proposal or a ticket tracker.
  • Site owners and marketers: find out why pages do not rank or never show up in AI answers.
  • Developers: a repeatable technical check before and after a release (schedule it on Apify and compare runs).
  • Multilingual and international sites: hreflang reciprocity, x-default, wrong-language text on a locale page, thin translations.

What it checks

AreaChecks
Crawl and indexingrobots.txt (RFC 9309 longest-match), every sitemap and sitemap index, status codes, redirect chains, canonical (present, self, target returns 200), meta robots and X-Robots-Tag, noindex pages listed in the sitemap, soft 404, http to https, www, HSTS, compression
Content without JavaScriptvisible text in the raw HTML (main content vs navigation and footer), text that exists only in <noscript>, single H1, heading tree, title and description length and duplicates, Open Graph, viewport
Multilinguallanguages detected from <html lang>, hreflang and URL prefixes; hreflang reciprocity, x-default, self-reference, targets that redirect or 404; <html lang> vs URL language; the actual script of the text (catches Russian text on an /en/ page)
Structured dataparses every JSON-LD block (including @graph) and checks required properties for Organization, LocalBusiness, Article, BlogPosting, BreadcrumbList, FAQPage, Product, Offer, ItemList and more
GEO / AI readinessrobots.txt rules for 15 AI and search bots (GPTBot, OAI-SearchBot, ChatGPT-User, ClaudeBot, Claude-SearchBot, PerplexityBot, Google-Extended, CCBot and others); fetches sample pages as Googlebot, GPTBot, OAI-SearchBot, ClaudeBot and PerplexityBot and compares what each one gets (blocks, empty shells, different HTML); llms.txt and llms-full.txt (exists, links valid)
Links and imagessamples internal and external links (broken, redirecting), images (status, weight, format, alt text, dimensions)
Speed (optional)Core Web Vitals from the PageSpeed Insights API for one URL per template (bring your own free Google API key)

Every score is explainable: the weights are listed in the report, and each issue links to example URLs.

Output

Dataset (Pages view), one row per audited page, worst score first, with the problems spelled out in plain words:

scoreurllangtop_fixissues_text
39https://kinto.am/en/blog/prepare-before-ordering-website/enPage is noindex (not in sitemap; check it is intended): Remove noindex if it should rank; otherwise avoid heavy internal linking to it[low] Page is noindex (not in sitemap; check it is intended) (noindex). Fix: Remove noindex if it should rank...
[medium] Missing canonical. Fix: Add a self-referencing canonical.
[low] No x-default. Fix: Add x-default.
89https://kinto.am/primery/salon/ruNo hreflang: Add hreflang for all locales[medium] No hreflang. Fix: Add hreflang for all locales.
[medium] No JSON-LD. Fix: Add schema for the page type.
[low] Missing og:title / og:image. Fix: Add Open Graph tags.
  • top_fix is the single most important thing to fix on the page; issues_text has one line per issue: severity, what is wrong (with the detail found), and how to fix it. They follow Report language (ru gives Russian, en and both give English).
  • Machine-readable fields stay in every row: issues (codes such as NOINDEX, CANONICAL_MISSING, HREFLANG_NO_XDEFAULT with details), checks, category_scores, status, canonical, hreflang, main_text_chars, ttfb_ms and more. The Technical details view shows the main ones.
  • The page budget is split evenly across the site's languages, then across page templates inside each language, so even a 20-page run covers every locale and section.

Site summary (key-value store record summary, JSON): site score, GEO score with its components, category averages (indexability, meta, content, i18n, schema, links, images, performance), averages by template and by language, site-level issues and the ranked fix list:

{
"type": "site-summary",
"url": "https://kinto.am",
"languages": ["ru", "en", "hy"],
"site_score": 99,
"geo_score": 100,
"geo_components": { "llms_txt": 1, "robots_ai_allowed": 1, "bot_parity": 1, "org_schema": 1, "raw_text_share": 1 },
"category_averages": { "indexability": 94, "meta": 97, "i18n": 95, "schema": 93 },
"by_lang": { "en": { "pages": 7, "avg": 90 }, "hy": { "pages": 6, "avg": 89 }, "ru": { "pages": 7, "avg": 89 } },
"fixes": [
{ "id": "CANONICAL_MISSING", "severity": "medium", "pages": 3, "priority": 4.8,
"en": "Missing canonical", "fix_en": "Add a self-referencing canonical",
"examples": ["https://kinto.am/en/blog/prepare-before-ordering-website/"] },
{ "id": "NOINDEX", "severity": "low", "pages": 3, "priority": 3.2,
"en": "Page is noindex (not in sitemap; check it is intended)",
"fix_en": "Remove noindex if it should rank; otherwise avoid heavy internal linking to it",
"examples": ["https://kinto.am/en/blog/prepare-before-ordering-website/"] }
]
}

(Real output from a 20-page run on kinto.am, shortened.) The run page shows live progress (pages fetched, current step) and a final status line with the scores.

Key-value store: summary (above), report-md (readable Markdown report), pages-csv and fixes-csv (open in Excel or Google Sheets). Set Report language to ru for a Russian report, or both to get report-md (Russian) plus report-en-md (English).

How to use

  1. Enter the site's home page, for example https://example.com.
  2. Set Max pages. 50 is enough for most sites: the sitemap is sampled by template and language, so a small budget still covers every section.
  3. Run. A 50-page audit usually takes 2-5 minutes at the default polite speed (2 requests per second).

Example input:

{
"startUrl": "https://example.com",
"maxPages": 50,
"langs": "auto",
"reportLang": "en"
}
FieldDefaultNotes
Site URLHome page
Max pages50HTML pages to audit
Languagesautoor a list with the default (unprefixed) language first: en,de,fr
Report languageenen, ru or both
Concurrency / requests per second2 / 2polite by default
Hard request budget1500the run never sends more requests
Include / exclude regexlimit the crawl to a section
PageSpeed templates + key0optional, needs your own PageSpeed Insights API key

Pricing

Pay per event, no subscription: $0.025 per audited page (one row in the dataset).

Included at no extra cost: site-level SEO checks (robots.txt, sitemaps, https, compression, soft 404), the GEO / AI-visibility check, hreflang and language checks, link and image sampling, the fix list and the Markdown and CSV reports. Platform usage is included too.

Examples: 10 pages = $0.25, 50 pages = $1.25, 200 pages = $5.00.

If you set a maximum charge per run, the actor lowers the number of pages to fit it before crawling. If the site cannot be reached (no page returns HTTP 200), nothing is charged. Charges are made only after the results are saved.

FAQ

Does it render JavaScript? No, on purpose: it shows what bots actually see. It measures the raw HTML that most search and AI crawlers index. If your content appears only after JavaScript runs, the audit shows it as missing text, which is exactly the problem to fix.

What is a GEO score? GEO (generative engine optimization) is how ready a site is to be read and cited by AI assistants. The score combines: AI bots allowed in robots.txt, the same HTML served to AI bots as to browsers, an llms.txt file with working links, Organization schema, and the share of pages with real text in the raw HTML. It measures technical readiness; it does not track whether AI assistants actually mention your brand.

Will it overload my site? No. Default speed is 2 requests per second with 2 parallel connections, it respects robots.txt and stops at the hard request budget.

Can I audit a site I do not own? Yes, it only reads public pages, like a search engine bot. Please keep the default polite speed.

Does it check backlinks, keyword rankings or traffic? No. It is an on-site technical and content audit. Use it together with Search Console or a backlink tool.

Can I run it on a schedule? Yes. Create a task with your input and add an Apify schedule, for example weekly, then compare site_score and the fix list between runs.

Limits

  • No JavaScript rendering (see above).
  • Pages behind login, or blocked for bots by a firewall, are reported with their status code and are not analyzed.
  • Link and image checks use a sample to keep runs fast and cheap.

Support

Found a false positive or need a check that is missing? Open an issue on the actor's Issues tab. Built by the team behind wse.am, a multilingual real estate site in Yerevan, Armenia, where this auditor is used in production.