AI Search Visibility Audit — ChatGPT, Google AI & Perplexity
Pricing
from $1,500.00 / 1,000 brands
AI Search Visibility Audit — ChatGPT, Google AI & Perplexity
Enter a domain and up to 5 competitors, no prompt list needed. Get the AI search questions where ChatGPT and Google AI Overview name each brand, with AI search volume, gaps, cited sources, share of voice and changes since your last run. Optional live re-check incl. Perplexity and your own questions.
Pricing
from $1,500.00 / 1,000 brands
Rating
0.0
(0)
Developer
Andrey Afanasenko
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 hours ago
Last modified
Share
Enter your domain and up to 5 competitor domains. Get the AI search questions where ChatGPT and Google AI Overview name each brand — with monthly AI search volume — and the gap list: questions where a competitor is named and you are not. No list of prompts needed: the questions come from what people already ask AI.
🆓 Start on the free plan: audit your domain against one competitor on up to 20 questions, with the gap list, once a month.
🎯 What it does
Other AI visibility trackers ask you to write the prompts first. This audit starts from a domain.
You give your domain and up to 5 competitor domains. Country and language are optional.
You get one row per AI search question, highest AI search volume first: who is named, in what order, and which sites are cited. The first row is a summary with share of voice and the gap list.
What you won't get: an audit built from prompts you write — the audited questions come from the index. You can add up to 10 questions of your own to the live re-check. The question discovery covers ChatGPT (United States, English only) and Google AI Overview. Perplexity and Google AI Mode are asked only in the optional live re-check.
| You give | You receive |
|---|---|
| Your domain | The questions where AI answers name your brand |
| Up to 5 competitor domains | For each competitor, the questions where it is named and you are not — your gaps |
| A country and language (optional) | Share of voice per brand on ChatGPT and on Google AI Overview |
| Live re-check (optional) | The top questions asked again right now on ChatGPT, Perplexity, Google AI Overview and Google AI Mode — plus up to 10 questions of your own |
| Compare with my last run (optional) | Per question, what changed since your last audit: brands that appeared or disappeared, your position, gaps opened or closed |
Old answers and today's answers. The questions come from an index of real AI answers, which can be months old (lastSeen). The live re-check shows today's answer.
Every answer is re-read. A brand counts as named by its link, domain or name. A link alone counts as cited, not named.
📦 Output sample
Every question is one row. Here is what a row holds:
- The question —
question,questionSource(index, orownfor a question you wrote),aiSearchVolume,monthlySearches,platforms,firstSeen,lastSeen. - Your visibility —
youNamed,youCited,isGap,gapPlatforms,competitorsNamed,yourPositionChatgpt,yourPositionAiOverview. - What each platform says —
brandsInOrderChatgpt,brandsInOrderAiOverview,allBrandsChatgpt,allBrandsAiOverview,answerChatgpt,answerAiOverview. - Sources —
citedDomainsChatgpt,citedDomainsAiOverview,sources(platform, position, domain, URL, title). With the live re-check on, the re-checked rows also holdliveCheckedAt,liveYouNamedOn,liveCompetitorsNamedandliveAnswers. - Since your last run — with Compare with my last run on,
sinceLastRun:status(new,unchanged,changed),lastRunAt,youNamedBefore/youNamedNow,gapBefore/gapNow, andchanges— per answer (ChatGPT,Google AI Overview,Live: Perplexity…) the audited brands that appeared and disappeared, the brand names that appeared and disappeared, and your position before and now.
Your own questions come after the audited questions, one row each with questionSource: "own". They are not in the index, so their index columns are empty; youNamed, youCited, isGap, gapPlatforms and competitorsNamed are read from their live answers.
A real gap row from the clickup.com audit of 27 October 2026 (answer and lists shortened):
{"type": "question","auditedDomain": "clickup.com","question": "team collaboration tool","aiSearchVolume": 301000,"platforms": ["Google AI Overview"],"youNamed": false,"youCited": false,"isGap": true,"gapPlatforms": ["Google AI Overview"],"competitorsNamed": ["asana.com", "monday.com"],"brandsInOrderChatgpt": null,"brandsInOrderAiOverview": ["asana.com", "monday.com"],"yourPositionChatgpt": null,"yourPositionAiOverview": null,"allBrandsChatgpt": null,"allBrandsAiOverview": ["Slack", "Zoom", "Asana", "Monday.com", "Google Workspace", "Microsoft Teams"],"citedDomainsChatgpt": null,"citedDomainsAiOverview": ["reclaim.ai", "zapier.com", "youtube.com", "microsoft.com", "workspace.google.com"],"sources": [{ "platform": "Google AI Overview", "position": 1, "domain": "reclaim.ai", "url": "https://reclaim.ai/blog/collaboration-platforms", "title": "12 Best Online Collaboration Platforms – 2026 Team Apps (Reviewed)" },{ "platform": "Google AI Overview", "position": 2, "domain": "zapier.com", "url": "https://zapier.com/blog/collaboration-apps/", "title": "The best team collaboration tools in 2026 - Zapier" }],"answerChatgpt": null,"answerAiOverview": "Top team collaboration tools for 2026 include Slack for messaging, Zoom for video conferencing, and Asana or Monday.com for project management…","monthlySearches": [{ "year": 2026, "month": 2, "searchVolume": 590 }],"firstSeen": "2026-03-11T22:32:28.000Z","lastSeen": "2026-03-11T22:32:28.000Z"}
A platform with no answer to the question is null in its columns.
The summary row (type: "summary") holds:
- Counts —
questionsAudited,questionsNamingYou,questionsCitingYouOnly,headToHeadQuestions,gapQuestions. - The gaps —
gapList(the 25 highest-volume gaps),gapAnswersInIndexByCompetitor. - Share of voice —
shareOfVoice(whole index),auditedShare(audited questions),answersInIndexNamingYou. - Sources —
topCitedDomains, the sites the AI cites most. - About the run —
notes,unconfirmedAnswersDropped,liveRecheck(withownQuestions, how many of your questions were asked),brandsCharged. - What changed — with Compare with my last run on,
changesSinceLastRun:status(compared,first_run,unavailable),lastRunAt, the counts of new, gone, changed and unchanged questions, and by name the questions where you are now named or no longer named, the gaps opened and closed, and the questions no longer in the audit (25 of each).
Views — three ways to look at the same rows, in the Storage → Dataset tab:
| View | What each row is | Best for |
|---|---|---|
| Questions (default) | The same rows, trimmed to the question, volume, you named, gap, competitors and the order of brands | Reading the whole audit |
| Gaps | The same rows, trimmed to the gap columns: platforms where you are missing and the sites cited there. Filter isGap to true | Planning content |
| Summary | The same rows, trimmed to the summary columns. Only the first row fills them | Share of voice and the gap list |
The full per-field schema is in .actor/dataset_schema.json, which AI agents also read.
⚡ Quick start
A minimal input that works on the free plan:
{"domain": "clickup.com","competitors": ["asana.com"]}
- Enter Your domain, e.g.
clickup.com. - Add Competitor domains, one per line, e.g.
asana.com. - Click Start. An audit takes about 5 seconds; a live re-check adds about 30 seconds per 3 questions.
- Open the Summary view for share of voice and the gap list, then Questions for every row.
🧭 When to use it
- Before you write content — see the high-volume questions where AI recommends your competitors and not you.
- In a GEO or AEO audit for a client — one domain in, a full picture out, without inventing prompts.
- To pick sites to be mentioned on —
topCitedDomainslists where the AI gets its answers. - To confirm a gap is still true today — turn on the live re-check.
- To compare share of voice by platform — ChatGPT and Google AI Overview are counted separately.
- To track AI visibility over time — schedule the same audit with Compare with my last run on, and add the prompts you care about as your own questions in the live re-check.
🛠 Input
The form has four sections: What to audit, Live re-check, Track changes and Brand matching.
| Field | Default | What it does |
|---|---|---|
domain | — | Your site, e.g. clickup.com. A full URL works too. |
competitors | [] | Up to 5 competitor domains. Each one adds its own gap questions. |
country / language | US / en | The market whose AI answers are read. |
platforms | both | ChatGPT and/or Google AI Overview. ChatGPT answers exist for the United States in English only. |
maxQuestions | 100 | 10–100 questions, highest AI search volume first. The price does not depend on it. |
liveRecheck | false | Ask the top questions again now, gap questions first. |
liveRecheckQuestions | 10 | How many questions to re-check live (1–10). |
liveRecheckEngines | all four | ChatGPT, Perplexity, Google AI Overview, Google AI Mode. |
liveRecheckOwnQuestions | [] | Up to 10 questions you write, one per line, asked live before the top questions. Needs liveRecheck. |
compareWithLastRun | false | Show what changed since your last audit of the same domain in the same country and language. Free. |
brandNames | [] | Only if a brand goes by a name its domain does not show: hey.com = HEY. |
Maximum cost per run caps charges. If it pays for fewer brands than you entered, the last competitors are left out before any lookup, and Skipped Items names them.
💰 How much will an AI visibility audit cost?
The Actor uses Apify's Pay Per Event model. The price is the same on every Apify plan.
| Event | Price | When |
|---|---|---|
| Brand | $1.50 | Once for each brand in the audit — your domain and each competitor — that appears in at least one AI search question |
| Live answer | $0.06 | Per answer received in the optional live re-check — the top questions and your own questions alike |
A brand with no question found is not charged; neither is an audit that finds nothing or fails. The number of questions does not change the price. brandsCharged in the summary row lists the brands charged.
Pricing math
| Audit | Brands found | Cost |
|---|---|---|
| Your brand alone | 1 | $1.50 |
| Your brand + 1 competitor | 2 | $3.00 |
| Your brand + 2 competitors | 3 | $4.50 |
| Your brand + 5 competitors | 6 | $9.00 |
| Live re-check of 10 questions on four engines | — | up to 40 answers, at most $2.40 |
| 3 of your own questions on four engines | — | up to 12 answers, at most $0.72 |
| Compare with my last run | — | free |
An engine that gives no answer in the live re-check is not charged. Apify platform usage is included in these prices.
🆓 Free vs paid plan
| Free plan | Paid plan | |
|---|---|---|
| Competitors per audit | 1 | up to 5 |
| Questions | up to 10 + 10 | up to 100 |
| Gap list | ✓ | ✓ |
| Share of voice across the whole index | — | ✓ |
| Live re-check | — | ✓ |
| Audits | one a month | no limit |
| Price per brand found | $1.50, from your free platform credits | $1.50 |
The free allowance resets at the start of each UTC calendar month. Upgrade to audit up to 5 competitors on 100 questions, with share of voice and the live re-check. Paid plans start at $19/mo with $19 in platform credits.
🧪 Recipes
A full audit against five competitors:
{ "domain": "clickup.com", "competitors": ["asana.com", "monday.com", "notion.so", "trello.com", "wrike.com"] }
Six brands, so at most $9.00.
Confirm the top gaps live:
{ "domain": "clickup.com", "competitors": ["asana.com", "monday.com"], "liveRecheck": true, "liveRecheckQuestions": 5 }
Five gap questions asked today on four engines: at most 20 live answers, $1.20.
Weekly tracking with your own prompts:
{ "domain": "clickup.com", "competitors": ["asana.com", "monday.com"], "compareWithLastRun": true, "liveRecheck": true, "liveRecheckQuestions": 3,"liveRecheckOwnQuestions": ["best project management tool for agencies", "clickup vs asana"] }
Schedule it weekly: each run says per question what changed since the last one. Three brands ($4.50) plus up to 20 live answers ($1.20).
A UK audit on Google AI Overview:
{ "domain": "monzo.com", "competitors": ["revolut.com", "starlingbank.com"], "country": "GB", "language": "en", "platforms": ["google_ai_overview"] }
Outside the United States the index holds Google AI Overview answers only.
📡 Live status & storage records
| Record | What it holds |
|---|---|
status.html | Live status page: progress, then questions audited, gaps and cost |
RUN_SUMMARY | Domains, questions, gaps, brands charged, prices and why the run stopped |
USER_MESSAGE | What happened and what to change — always written when no audit was saved |
FREE_LIMITS_APPLIED | Free-plan limits that applied to this run |
SKIPPED_ITEMS | Competitor lines not used, and why (not a domain, your own domain, more than 5, free plan, maximum cost) |
Every delivered audit is also kept, for Compare with my last run, in a key-value store named av-history-… in your account's Storage: one record per domain, country and language, holding which brands each answer named — not the answer texts. It is kept whether the option is on or off, from version 0.0.7, so the first comparison is ready when you switch it on. Delete the store to start over. The sample audit is never kept.
The Output tab links to the audit, the gaps and these records.
🤖 Programmatic / API use
Run it from the Apify API, the CLI, a schedule or an AI agent. The first row is the summary, so one row gives the answer.
curl -X POST "https://api.apify.com/v2/acts/afanasenko~ai-visibility-audit/run-sync-get-dataset-items" \-H "Authorization: Bearer $APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"domain":"clickup.com","competitors":["asana.com","monday.com"]}'
AI agents can call the Actor through Apify's MCP server with a request like "Which AI search questions name asana.com and not clickup.com?". Export the dataset as JSON, CSV or Excel.
💡 Tips & Best Practices
Choose the right competitors
- Add the rivals your buyers compare you with, not the biggest names: gaps are found per competitor.
- Each brand found is one charge, so start with two or three.
Read the gaps by platform
- Read
gapPlatforms, not onlyisGap: you can be named on ChatGPT and missing on Google AI Overview. brandsInOrderAiOverviewandbrandsInOrderChatgptshow who is named first.
Check the age of an answer
lastSeenshows when the index last saw the answer.- Before acting on an old gap, run the live re-check.
Help the audit recognise your brand
- If your brand name is a common word, add it under Brand names so it is matched as you write it.
- Use
topCitedDomainsto find the sites worth a mention or a guest post.
❓ FAQ
How do I find which questions AI answers name my brand for? Enter your domain and run the audit. The questions come from real AI answers; you do not write prompts.
How do I find where competitors are recommended and I am not? Add competitor domains. Each gets its own gap search, re-read answer by answer.
Is there a free AI visibility checker? Yes: the free plan audits your domain against one competitor on up to 20 questions, once a month, from your free platform credits.
How much does one audit cost? $1.50 per brand found: your brand and two competitors cost $4.50.
Which AI platforms does it cover? The question discovery covers ChatGPT (United States, English) and Google AI Overview. The live re-check also asks Perplexity and Google AI Mode.
Why is ChatGPT empty for my country? The index holds ChatGPT answers for the United States in English only. Elsewhere the audit reads Google AI Overview answers and says so in notes.
How old are the answers? An index answer can be months old; firstSeen and lastSeen show its dates. The live re-check shows today's answer for the top questions.
How is share of voice counted? Answers in the whole index that name each brand, per platform, corrected by how many of the brand's own top answers really name it (confirmedInSample / sampleSize).
What is AI search volume? An estimate of how often the question is asked to AI each month; monthlySearches is its history.
Why was an answer left out? On re-reading, it did not name the brand — for example «asana» the yoga pose. A plain dictionary word counts only next to the brand's citation or another audited brand. Left-out answers are counted in unconfirmedAnswersDropped.
What happens if I leave the domain empty? The run announces a sample audit of clickup.com against asana.com on up to 20 questions. The sample is not charged and runs once a month per account.
Is this an alternative to AI visibility trackers? It answers the first question: which questions matter. Run on a schedule with Compare with my last run on, it also shows what changed in those answers since the last audit, and your own questions in the live re-check follow the prompts you care about.
Can I add my own prompts? Yes, up to 10, in Your own questions under Live re-check. They are asked live on the engines you chose, before the top questions, and charged like every live answer ($0.06 per answer received). Each becomes its own row with questionSource: "own".
How do I see what changed since my last audit? Switch on Compare with my last run. Each question row gets sinceLastRun, and the summary row lists the questions where you are now named or no longer named and the gaps opened or closed. It compares with the last audit of the same domain in the same country and language; a competitor you added since is not reported as "appeared". It is free. Two audits started at the same moment may compare with the same earlier one.
🔗 Related actors
| Actor | Purpose |
|---|---|
| Keyword Search Volume | Google search volume, CPC and difficulty for the same questions |
| Backlink Scraper | The backlinks of the sites the AI cites most |
🛟 Support & feedback
- Open the Issues tab of this Actor with your run link. We read every one.
- Include your domain, competitors, country and language so the audit can be checked.
- Leave a review if the audit helped you.
⚖️ Is it legal to audit AI search visibility?
The audit reads published AI answers and their sources. Use the results for lawful research. See Apify's guidance on web scraping.