Someone on your team asks ChatGPT about your category, sees a rival, and screenshots it. That one answer tells you almost nothing, because AI engines change their answers from run to run. This page helps you measure it properly: real buyer prompts, repeated runs, competitors on the same answers, and a short report that ends in one next action.
Where to start
- No prompt list yet, or a list full of your own brand name? Start at Step 1. Bad prompts make every later number wrong.
- Already ran your prompts and counted mentions? Go to Step 2 and see your share against competitors, with ranges.
- Need to tell your boss or client what happened this month? Jump to Step 3 and generate the update.
Build a prompt set that measures buyers, not your ego
AI visibility is the share of AI answers to your buyers' questions that name your brand. The questions decide the score. A prompt like "is Brand X any good?" almost always returns Brand X, so it inflates the number. A one-word topic like "skincare" returns a generic essay. You want 10 to 20 questions a buyer types while choosing: a product, a constraint (budget, place, skin type, team size) and a reason.
Pull the wording from reviews, support chats, marketplace Q&A and sales calls. Then paste your list below with your brand name and its variants (misspellings, domain, product line).
Prompt quality checker Example prompts
Runs in your browser. Nothing is sent anywhere. One prompt per line. You get pass, warn or fail per prompt and a clean list to copy.
Clean prompts to track
Run each prompt 3 times and count your share against competitors
Open ChatGPT, Gemini and Perplexity in a private window, logged out or in a Temporary Chat, so your memory and history don't tilt the answer. Ask each prompt 3 times per engine, a new chat each time. For Google, search in a private window and note whether an AI Overview appears. 15 prompts × 3 runs × 3 chat engines is 135 answers, a little over 2 hours at a minute each; 10 prompts gets you there in about 90 minutes.
Log every answer in a sheet, then count, per engine, how many answers name you and each of up to 3 competitors. Leave "No Overview" searches out of the Google answer count.
The log sheet: copy these columns into Google Sheets
| Date | Engine | Language | Prompt ID | Prompt | Run | Named us | Position | Sentence about us | Competitor 1 | Competitor 2 | Competitor 3 | Cited sites |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 3 Oct 2026 | ChatGPT | English | P01 | Which face wash should I buy for oily skin in India under ₹500? | 1 | Yes | 2 | Neutral: "a budget pick" | Yes | No | No | nykaa.com, reddit.com |
Write Yes or No in the brand columns, the position as 1 for named first, and every cited domain separated by commas. These formulas then give you the counts for the tool below (columns as above):
Answers on ChatGPT: =COUNTIF(B:B,"ChatGPT") Named us on ChatGPT: =COUNTIFS(B:B,"ChatGPT",G:G,"Yes") Competitor 1 on ChatGPT: =COUNTIFS(B:B,"ChatGPT",J:J,"Yes") Average position (named): =AVERAGEIFS(H:H,B:B,"ChatGPT",G:G,"Yes")
Share-of-voice tracker Example numbers
Runs in your browser and saves here for next month. Enter the answers you collected per engine and how many named each brand. Set answers to 0 to skip an engine.
| Engine | Answers | You | C1 | C2 | C3 |
|---|
| Engine | Answers | Your visibility | 95% range | Share of voice | Leader | Gap |
|---|
Turn the numbers into a team update with one next action
A percentage can tell you that something moved. It can't tell your team what to do on Monday. The update below uses this month's numbers from Step 2, compares each engine with last month, and only calls a change real when the two 95% ranges don't overlap. Everything else is labelled as noise, so nobody rewrites the homepage over a 5-point wobble.
Monthly report generator Example numbers
This month's numbers come from the tracker above automatically. Add last month's counts and what you did. Saved in this browser.
| Engine | Answers | Named you |
|---|
Questions
Questions people ask
How many runs per prompt do I need?
At least 3 per engine for a by-hand baseline, 5 if you can. What matters is the total answers per engine: at 50% visibility, 20 answers give a range of 30% to 70%, 100 answers give 40% to 60%, and 400 give 45% to 55%.
Why not just average all engines into one score?
Because the engines pick sources differently, and the average hides it. A brand at 70% on Gemini and 10% on Perplexity looks the same as one at 40% everywhere. Report each engine on its own line.
Should I test while logged in?
For the tracked score, no. ChatGPT can use your memories and approximate location, so your own account drifts toward you. Use a private window or a Temporary Chat, and keep the country, wording and language fixed.
When is a spreadsheet no longer enough?
When filling it takes longer than acting on it. Daily tracking of 20 prompts on 3 engines is about 1,800 answers a month. At that point a tracking tool that stores answers and scores them is cheaper than your time.
Ranges use the Wilson score interval. Free guide by SEO to GEO HQ.