AI Search Visibility Tracker — AEO & Citation Audit avatar

AI Search Visibility Tracker — AEO & Citation Audit

Pricing

from $90.00 / 1,000 keyword visibility checks

Go to Apify Store
AI Search Visibility Tracker — AEO & Citation Audit

AI Search Visibility Tracker — AEO & Citation Audit

Check if your domain gets cited by Perplexity, ChatGPT, Claude & Gemini. Tracks citation rank, content gaps & competing domains per keyword. AEO audit. MCP/API-ready.

Pricing

from $90.00 / 1,000 keyword visibility checks

Rating

0.0

(0)

Developer

Khadin Akbar

Khadin Akbar

Maintained by Community

Actor stats

2

Bookmarked

40

Total users

16

Monthly active users

4 days ago

Last modified

Share

AI Search Visibility Tracker — AEO & Citation Audit is an Apify Actor for SEO teams, content marketers, website owners, and agencies that want to check whether a target domain is cited by AI search platforms. You provide a domain, topic keywords, and optional target URLs, competitor domains, platform choices, and query templates. The actor returns one record per keyword, query, and platform combination, so each record represents a single visibility check. The returned fields show whether the domain was cited, where it appeared in the source list, which page was cited, whether a content gap was detected, how many sources were cited overall, which competing domains appeared, and a short excerpt of the AI answer. The output helps you review citation presence and the pages associated with AI search visibility.

Best fit and connected workflows

This Actor fits workflows where you want to audit topic-level AI citations for a website rather than track brand mentions. It is useful when you already have a list of topics, page URLs, or competitor domains and want to compare citation patterns across Perplexity, ChatGPT, Claude, and Gemini.

Common workflow paths:

  • Topic planning: execution keywords first, then review content_gap and competing_domains to shape content updates.
  • Page review: add targetUrls when you want to see whether specific pages are cited.
  • Competitor comparison: set competitorDomains to focus the result set on selected rival domains.
  • Follow-up analysis: use the output records to pick pages for deeper review in AI Overviews Tracker - Brand Visibility in AI Answers when you have a returned public URL or ID and need downstream detail data.
  • Automation: send the run summary to a webhook for reporting, dashboards, or team notifications.

Practical scenario

Maya is a content strategist at a SaaS company. She starts with targetDomain set to example.com, adds topics like "keyword research" and "site audits", and includes a few target page URLs from her content library. After the run, she reviews records where domain_cited is false and content_gap is true. She also checks cited_page_url, citation_rank, and competing_domains to see which pages from her site were cited and which rival domains appeared instead. Her next step is to refresh the pages that were absent from AI citations and schedule another run to compare the next audit.

Input fields

FieldTypePurpose
targetDomainstringDomain to track, entered without https:// or www
keywordsarray of stringsTopic queries to check across AI platforms
targetUrlsarray of stringsOptional exact page URLs from the target domain
competitorDomainsarray of stringsOptional competitor domains to highlight in results
platformsarray of stringsAI platforms to query: perplexity, chatgpt, claude, gemini
queryTemplatesarray of stringsBuilt-in query categories such as topic_authority, how_to, what_is, comparison, expert_picks
customQueriesarray of stringsPlain-English questions to submit for every keyword
maxQueriesPerKeywordintegerMaximum number of unique queries per keyword, from 1 to 10
responseFormatstringconcise or detailed excerpt storage
webhookUrlstringHTTPS endpoint that receives the run summary on completion
demoModebooleanHealth-check mode that confirms the Actor works without AI API calls

Focused input example

{
"targetDomain": "ahrefs.com",
"keywords": ["SEO", "keyword research", "backlink analysis"],
"targetUrls": [
"https://ahrefs.com/blog/seo-basics/"
],
"competitorDomains": ["semrush.com", "moz.com"],
"platforms": ["perplexity", "chatgpt", "gemini"],
"queryTemplates": ["topic_authority", "how_to", "what_is"],
"maxQueriesPerKeyword": 3,
"responseFormat": "detailed",
"demoMode": false
}

Output fields

Each dataset item is one check for one keyword, query, and platform combination.

FieldTypePurpose
run_idstringApify run ID for grouping records
platformstringPlatform that produced the result
keywordstringTopic or keyword tested
querystringExact question submitted
query_templatestringTemplate source for the query
target_domainstringNormalized tracked domain
domain_citedbooleanWhether any URL from the target domain was cited
citation_rankinteger or null1-based position of the first target-domain URL in the cited sources
domain_citation_countintegerNumber of distinct target-domain URLs cited
cited_page_urlstring or nullFirst cited page from the target domain
cited_pagesarray of stringsAll cited pages from the target domain
page_from_targets_citedbooleanWhether one of the configured target URLs was cited
content_gapbooleanWhether the AI cited sources for the query without citing the target domain
total_sources_citedintegerTotal cited URLs in the AI response
ai_coverage_rationumberFraction of cited sources that belong to the target domain
competing_domainsarray of stringsOther cited domains in the response
ai_answer_excerptstringStored excerpt of the AI answer
model_usedstringModel identifier used for the check
checked_atstringISO 8601 timestamp of the check

Illustrative output record

{
"run_id": "abc123XYZ",
"platform": "perplexity",
"keyword": "SEO",
"query": "What are the suitable resources and guides for learning about SEO?",
"query_template": "topic_authority",
"target_domain": "ahrefs.com",
"domain_cited": true,
"citation_rank": 2,
"domain_citation_count": 2,
"cited_page_url": "https://ahrefs.com/blog/seo-basics/",
"cited_pages": [
"https://ahrefs.com/blog/seo-basics/",
"https://ahrefs.com/blog/keyword-research/"
],
"page_from_targets_cited": false,
"content_gap": false,
"total_sources_cited": 7,
"ai_coverage_ratio": 0.29,
"competing_domains": ["semrush.com", "moz.com", "backlinko.com"],
"ai_answer_excerpt": "When it comes to learning SEO, several resources stand out as authoritative...",
"model_used": "perplexity/sonar",
"checked_at": "2026-05-01T14:30:00.000Z"
}

How it works

The Actor submits topic-based queries to the selected AI search platforms and checks whether the target domain appears in the cited sources for each response. It uses built-in query templates such as topic authority, how-to, and what-is, and it can also run custom questions. When targetUrls are provided, the Actor also checks whether those exact pages appear in the citation list. The dataset records the citation position, the cited pages, competing domains, and a response excerpt for review. A run summary is stored in the key-value store as LAST_RUN_SUMMARY, and optional webhook delivery sends that summary to your endpoint after completion.

Pricing

This Actor uses Pay per event pricing on the Apify platform. Each keyword-visibility-checked event represents one keyword x one query x one AI platform check, and AI API costs are included in the event price. There is also a standard Apify actor start charge for compute usage. For the current pricing details, open the live Pricing tab on the Actor page.

Example: if you run 5 keywords across 3 queries on 2 platforms, that produces 30 keyword visibility checks, plus the Apify platform usage for the run start.

Use with AI agents (MCP)

This Actor is available through Apify MCP as the Actor identity khadinakbar/ai-search-visibility-tracker. It is suited for agent workflows that need to inspect AI citations for a domain and topic set, then read the resulting dataset records or run summary.

Tool behavior:

  • Input: domain, topics, optional target URLs, optional competitors, platforms, and query templates
  • Output: one record per keyword-query-platform check, with citation status, rank, cited pages, competing domains, and an excerpt
  • Provenance: records reflect the platform used for each check and include checked_at plus model_used
  • Scope: topic-based citation tracking for website domains, with optional exact-page tracking
  • Pagination/cost guidance: larger keyword, query, and platform combinations increase the number of checked events

Check whether example.com is cited as a source for "keyword research" and "site audits" across Perplexity, ChatGPT, and Gemini. Return the dataset records and summarize which pages were cited, which topics produced content gaps, and which competing domains appeared most often.

Apify API example

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({
token: process.env.APIFY_TOKEN,
});
const run = await client.actor('khadinakbar/ai-search-visibility-tracker').call({
targetDomain: 'ahrefs.com',
keywords: ['SEO', 'keyword research'],
platforms: ['perplexity', 'chatgpt', 'gemini'],
maxQueriesPerKeyword: 3,
responseFormat: 'detailed',
});
const dataset = client.dataset(run.defaultDatasetId);
const { items } = await dataset.listItems();
for (const item of items) {
console.log(item.keyword, item.platform, item.domain_cited, item.citation_rank);
}

Best results and outcome guidance

Start with a small set of tightly related topics that match the content on your domain. Add targetUrls when you already know which pages you want to audit. Use competitorDomains when you want the result set to focus on selected rivals. Keep queryTemplates aligned with the kind of questions your audience asks, and use customQueries when you have specific prompts that mirror real user intent. For trend work, keep the input structure stable across runs so the run_id, citation rank, and cited page patterns are easy to compare.

Design note

I found that the dataset contract includes both cited_page_url and cited_pages, which makes the record useful for seeing the first cited page and the full set of cited pages in the same check.

FAQ

Is this Actor for brand mentions or domain citations?

It is for domain and page citations in AI search answers. For brand-name tracking, use the ai-search-brand-monitor workflow referenced in the input description.

Which platforms are available by default?

Perplexity, ChatGPT, and Gemini are the default platform choices in the input schema. Claude is available when you add it explicitly for deeper audits.

What does content_gap mean?

It marks checks where the AI cited sources for the query and none of the cited sources came from the target domain.

How should I use citation_rank?

Use it as the 1-based position of the first target-domain URL in the cited source list. Lower values indicate the domain appears earlier in the list.

Can I focus the audit on specific competitors?

Yes. Set competitorDomains to the domains you want to emphasize in the competing_domains field.

Can I receive the run summary outside Apify?

Yes. Set webhookUrl to an HTTPS endpoint to receive the full run summary JSON when the Actor finishes.

Responsible use

Use this Actor for legitimate SEO research, content strategy, and website analytics. Review the terms of service for each AI platform you query, and make sure any scheduled audits fit your internal data handling and automation policies.