You can find out whether ChatGPT recommends your devtool in one afternoon, without buying anything. Build about 25 prompts a real buyer might type, run each one in a fresh session on ChatGPT, Perplexity, and Gemini, log every mention and citation in a spreadsheet, and compute your mention rate. You will end up with three things no dashboard trial gives you: a baseline number, a list of who gets named instead of you, and the exact pages AI engines cite as evidence.
No tool required for any of this. That is deliberate. This method is how we suggest every team start, including teams that can afford any subscription on the market.
Why run it by hand first
Manual testing shows you exactly what a buyer sees, with no collection layer in between. Most tracking tools gather answers through UI automation rather than official APIs (Peec's CPO has said so publicly), so a dashboard's numbers can differ from yours. AI answers also move: Ahrefs measured Google AI Overviews rewriting themselves about every 2.15 days, with 45.5% of citations turning over between consecutive responses. One careful manual run beats a dashboard trial you learn nothing from.
Two honest caveats before you start. First, your manual run is also a small sample: two runs of 25 prompts across 3 engines is directional evidence, not a law of nature. Second, the numbers will not be stable, and that is fine. The point of round one is a baseline, and the point of round two (next month) is a trend. Ahrefs' own measurement of citation turnover in AI Overviews is the reason re-running matters more than any single result.
Why UI scraping matters: in a thread comparing the major trackers, users note that Peec's CPO admitted results come from scraping the web UI, so answers can differ from what a logged-in buyer sees (r/SEO_tools_reviews). When you run prompts yourself, there is no question about what was measured.
Step 1: build a 15 to 30 prompt set
Use about 25 prompts split across four buyer intents: discovery (how buyers ask for your category), comparison (head-to-heads), alternatives (switching queries), and implementation (task-adjacent questions). Write them the way a buyer would, never naming your own tool except in a few branded checks. The mix matters more than the count, because each intent measures a different part of the funnel.
| Category | Share of set | Example (for a feature-flag tool) | What it measures |
|---|---|---|---|
| Discovery | 40%, about 10 prompts | "best feature flag tools for startups", "tools to manage feature releases" | Whether you appear when buyers enter the category |
| Comparison | 25%, about 6 prompts | "LaunchDarkly vs PostHog", "Unleash vs Flagsmith" | Whether you survive head-to-head scrutiny |
| Alternatives | 20%, about 5 prompts | "LaunchDarkly alternatives", "open source alternative to LaunchDarkly" | Whether you are in the switching consideration set |
| Implementation | 15%, about 4 prompts | "how to roll out features safely in Next.js", "best library for A/B testing a React app" | Whether you appear when the prompt describes a task instead of a category |
Four rules for writing the prompts:
- Phrase them neutrally. "What's the best feature flag tool" measures reality; "Is AcmeFlags a good tool" measures your own bias.
- Include 3 to 5 prompts where your tool should appear if it is reasonably well known, and 5 to 8 where it probably will not. The second group is where growth lives.
- Fix the exact wording and save it in the sheet. Re-runs only mean something if the prompts are identical.
- Number them P01 to P25 so every recorded answer maps back to one row.
Step 2: run them properly
Run each prompt in a fresh session, in an incognito window or a logged-out profile, one prompt per conversation. Test ChatGPT, Perplexity, and Gemini rather than ChatGPT alone: engines cite at very different rates, and Perplexity averaged 21.87 citations per answer against ChatGPT's 7.92 in one analysis of 118,101 answers (Qwairy, Q3 2025). Only about 11% of domains cited by ChatGPT are also cited by Perplexity, per Muck Rack's analysis cited by Writer. Cross-engine is where the surprises live.
Practical details that change your results:
- Pick one ChatGPT mode (logged-out free or your paid account) and stay consistent across all runs. Same for Gemini.
- Do not prime the conversation. No system-prompt-style preambles, no "you're an expert" openers. Buyers do not type those.
- One prompt per fresh chat. Follow-up questions contaminate the sample.
- Spread the run over two or three days and run each prompt twice per engine. Expect different answers between runs; Ahrefs' turnover data says roughly half the citations can change between consecutive observations.
- On Perplexity, use the default mode. Deep research modes answer a different question than the one buyers ask.
The arithmetic: 25 prompts × 3 engines × 2 runs = 150 answers. That is one solid afternoon plus a second short morning.
Step 3: record everything in a spreadsheet
One row per answer. Twelve columns are enough, and two of them (competitors named, cited URLs) will turn out to matter more than your own column. If an answer names you with no citation, record the mention; if it cites your docs page without naming you, record that too. They are different signals and they fix differently.
| Column | Example value | Why it is there |
|---|---|---|
| date | 2026-10-21 | Tracks movement between rounds |
| engine | ChatGPT | Engines differ; citation overlap is low |
| run | 1 or 2 | Within-engine variance check |
| prompt_id | P07 | Maps back to the fixed prompt set |
| category | comparison | Gap analysis by intent category, not one overall rate |
| prompt (verbatim) | "launchdarkly vs posthog" | Reproducibility |
| mentioned | Y / N | The headline metric |
| position | 1st / 2nd-3rd / listed later / not named | Order tracks consideration, not presence alone |
| how described (one line) | "open source, self-hosted" | Shows whether positioning matches intent |
| competitors named | LaunchDarkly, Unleash, Flagsmith | Your real competitive set per AI engine |
| cited URLs | reddit.com/r/devops thread, vendor docs | The retrieval layer AI actually trusts |
| citation source type | docs / reddit / listicle / G2 / github | Tells you where to earn citations |
A pivot or a couple of formulas at the end gives you the only numbers that matter: mention rate per engine, mention rate per category, and how often each competitor is named instead of you.
Step 4: interpret it like a researcher
A single mention proves nothing; a rate does. The unit of finding is "named in N of 25 answers, per engine". If ChatGPT names you in 3 of 25 answers (12%) while a direct competitor is named in 15 of 25 (60%) on the same set, that gap is the finding. Everything else, rankings, vibes, one lucky answer, is noise until it repeats across runs.
How to read the sheet:
- Compute mention rate per engine and per category. The discovery rate is your category-entry visibility. The comparison rate is your consideration strength. A tool can look fine on one and invisible on the other.
- Distinguish named from cited. ChatGPT cites about 7.92 sources per answer against Perplexity's 21.87 (Qwairy), so the two engines run different retrieval games. Being named without a citation usually means the model is recalling training data, not reading the web.
- Read the "competitors named" and "cited URLs" columns hardest. If competitors keep coming up from specific Reddit threads or listicles, those pages are your retrieval gaps. Roughly 85% of AI citations point to sources the brand does not own (Muck Rack analysis, via Writer), so if all your evidence lives on your own site, weak recall is the expected outcome rather than a mystery.
- Treat a wrong description as a different problem. If ChatGPT names you but calls you "enterprise-only" when you are open source, that is a positioning failure, and it has a different fix than absence.
- Sanity-check any surprise across engines before acting on it. A single-engine, single-run result is a hypothesis.
No absolute "good" number exists, and any vendor quoting one is selling something. The one benchmark with published evidence behind it is directional: Ahrefs analyzed 17 million AI citations and found cited URLs are about 25.7% fresher than Google's organic results, with ChatGPT citing the newest pages most readily. Stale comparison pages cost you measurable odds.
Afternoon two: turn the baseline into a fix list
The sheet's last two columns are already a to-do list: every recurring competitor you are missing from, and every page AI engines keep citing that you are absent from. For devtools the fixes usually fall in the same places. Get into the comparison threads and listicles that already get cited. Restructure docs so each page answers one question completely, in passages an engine can lift whole. Publish honest comparison pages that name competitors, because engines reward pages that answer the comparison prompt directly. Keep llms.txt and AI crawler access open so nothing technical blocks retrieval. Refresh the stale pages that should be winning.
We will cover each of these fixes in depth in upcoming posts on this site.
Re-run it monthly
Run the identical prompt set, log into the identical sheet, once a month. Round one is a baseline, round three is a trend, and the trend is what you can manage. If a number moved, you will want the receipts; if it did not, you just saved yourself from attributing a coincidence to a launch.
If your rounds show a wide gap and you would rather have someone else close it, that is the job we do. CiteGap runs this same test across more engines and prompts, diagnoses why the gap exists, and hands you (or implements) the fix list, as a one-time engagement rather than a subscription. Start with the free lite audit, and bring your spreadsheet if you have one. It makes the diagnosis faster and cheaper.
Sources
- AI Overview churn (2.15 days average persistence, 45.5% citation turnover): Ahrefs
- Citations per answer (Perplexity 21.87, ChatGPT 7.92, 118,101 answers, Q3 2025): Qwairy
- Earned media share (~85% of AI citations) and low cross-engine citation overlap (11% of domains), Muck Rack analysis via Writer: writer.com
- Freshness (cited URLs 25.7% fresher, 17 million citations analyzed): Ahrefs
- UI scraping admission and tool comparison context: r/SEO_tools_reviews