✨ $500 AI Visibility Audit — live at Spurlock Studios. Book the audit
The AI Visibility Tools Stack Agencies Actually Need in 2026

The AI Visibility Tools Stack Agencies Actually Need in 2026

August 15, 2026(Updated: August 15, 2026)
30 min read
0 comments
William Spurlock
William Spurlock
AI Solutions Architect

Table of Contents

The AI Visibility Tools Stack Agencies Actually Need in 2026 #

An AI visibility agency stack in 2026 is a query bank, a citation monitor, crawler and log proof, schema tests, and a reporting layer that refuses to fake attribution — not a rank tracker with a GEO sticker on the invoice. There is still no Search Console for ChatGPT. Anyone selling you one is selling a prompt runner with a nicer chart.

I'm William Spurlock — AI Solutions Architect, Fractional AI CTO, and SEO-certified since 2021. I build AI-visibility-ready sites and help agencies productize GEO / AEO / AIO without inventing a dashboard that OpenAI does not offer. This spoke sits under how to sell AI visibility services. It is the tool stack, not the metric dictionary. For Share of Model, citation rate, and sentiment definitions, use how to measure AI visibility.

Prices below are list prices I checked on vendor pages in August 2026. They move. Confirm the live page before you buy. I am not quoting market share, and I am not inventing "X percent of agencies use Y."


What tools does an AI visibility agency need in their stack? #

You need five jobs covered: a buyer-question bank, an answer-layer citation monitor, crawler and robots proof, schema validation, and a client report that separates mentions, citations, Google AI impressions, and actual clicks. Everything else is optional software sitting on top of those jobs. If a tool does not do one of those five jobs, it is a toy or a second SEO suite.

I treat the stack as jobs, not logos. A solo operator can cover all five with Google Search Console, GA4, a spreadsheet, two free validators, and a monthly engine-by-engine run. A five-person shop adds one paid GEO seat so account managers stop pasting screenshots into decks. The jobs do not change.

Job What it answers Default tool Paid upgrade when
Query bank Which buyer questions do we track, and did the answer change? Spreadsheet + saved raw answers Prompt volume outgrows a weekly manual run
Citation monitor Were we named, cited, or skipped on those questions? Same spreadsheet, scored by hand You need daily runs, competitors, and a client login
Crawler / robots proof Can the retrieval bots even fetch the page? robots.txt + host or CDN logs Multi-site log joining (Peec Crawl Insights, Profound Agent Analytics, Semrush AI Search Site Audit)
Schema tests Can a machine extract Organization, FAQ, Product, Article? Rich Results Test + Schema Markup Validator CMS-scale audits, not a second validator
Reporting What can we claim without lying? One-pager: mention rate, citation rate, GSC AI impressions, GA4 referrals Looker / branded PDF from Otterly, Peec, Semrush, or Profound

Notice what is missing: rank position, domain rating, and "AI traffic revenue." Those are SEO leftovers or fiction. Keep Ahrefs or Semrush for the SEO half of the retainer. Do not let them impersonate the GEO half.

The stack also has a hard split I force on every kickoff: Google's own surfaces versus everyone else's chat. Google Search Console can now show generative-AI impressions on Google properties. ChatGPT, Perplexity, Claude, and Copilot still do not give you first-party query data. Your monitor for those engines is a prompt set you run, or a vendor that runs it for you.


What happens if you sell GEO with only rank trackers? #

You sell a screenshot of blue-link positions while the buyer is asking ChatGPT for a shortlist — then you get fired when the rank report looks fine and the pipeline does not. Rank trackers answer "where did we sit on a SERP." GEO work answers "did an answer engine name us, cite us, or skip us." Those are different instruments.

I have sat in retainers where the SEO suite still showed page-one informational terms and the owner had already started asking Perplexity who to hire. The tracker was not wrong. It was answering last decade's question. If your only artifact is a position graph, you have no proof you did the work you invoiced.

Three failure modes show up on the same call:

  1. False comfort. Rank holds, clicks soften, AI Overviews eat the informational SERP, and you have no citation log to explain it.
  2. False panic. A competitor "ranks" worse but gets named in ChatGPT because a review site and a Wikipedia row describe them cleanly. You cannot see that in Ahrefs Site Explorer.
  3. False attribution. Someone filters GA4 for "chatgpt.com / referral," multiplies sessions by close rate, and calls it GEO ROI. That is click traffic from people who already clicked. It is not citation share.
What the rank tracker shows What the GEO buyer needed What you should have brought
Position 3 for "best [category] agency" Whether ChatGPT named them in that exact prompt Query-bank row: mention / citation / competitors
Share of voice on a SERP Share of answers across engines Engine-split table, not a blended vanity score
Backlink delta Which third-party URLs the model actually cited Cited-domain list from the raw answers
Organic sessions Whether AI Mode showed their URL GSC generative-AI impressions, if the property has the June 2026 report

Ahrefs and Semrush still earn a seat. Ahrefs Brand Radar and the Semrush AI Visibility Toolkit are real AI-visibility layers on top of SEO suites. They do not make the classic rank report sufficient. If you only renew Position Tracking and call it GEO, you are billing for a sport the client is no longer watching.

For a pre-sale artifact that does not require a paid GEO seat, I still send prospects through the DIY AI visibility audit and then sell the agency version: more prompts, saved raw answers, schema and crawler proof, and a sprint list.


How do I assemble a query bank + citation monitor without a fake "GSC for ChatGPT"? #

Build a prompt list from real buyer questions, run it on a schedule across the engines you sold, and store the raw answer plus four scores: mentioned, cited, position in the shortlist, and sentiment or category fit. That is the monitor. A SaaS seat is optional automation around that loop. It is not a first-party log of what users typed into ChatGPT.

Google does not give you ChatGPT queries. OpenAI does not give agencies a Search Console. Profound, Otterly, Peec, Ahrefs, and Semrush all work the same mechanical way: they send prompts into the live interfaces (or adjacent APIs) and score the outputs. Ahrefs is explicit that Brand Radar is built on search-backed prompts, not a dump of private chats — see their Brand Radar methodology and the July 13, 2026 help article. Treat every vendor number as "on this prompt set, on this date, in this engine," not as census data.

What goes in the bank #

I start from four sources, in this order:

  1. Sales questions the client already hears on calls.
  2. GSC queries where impressions held and clicks fell — those are the terms Google still shows and AI often answers inline.
  3. Comparison prompts ("X vs Y," "best [category] for [job]").
  4. Local or vertical "who should I hire" prompts if that is how the buyer actually chooses.

Cap the first bank. Fifteen to forty prompts is enough to sell and to deliver. A 400-prompt universe is how you burn a Premium Otterly seat and still miss the ten questions that close deals.

Column What you store Why it exists
Prompt Exact wording, not a keyword Engines are sensitive to phrasing
Engine + model surface ChatGPT, Perplexity, AI Overviews, AI Mode, Gemini, Copilot, Claude Blended scores hide engine gaps
Run date ISO date You need a trend, not a vibe
Mention Yes / no Named in the prose
Citation Yes / no + URL A source link is a different win
Shortlist slot 1 / 2 / 3 / buried / absent "Mentioned last" is not a win
Sentiment / fit Positive, neutral, negative, wrong category Wrong category is worse than silence
Competitors named Who else appeared The actual competitive set
Cited domains Every source URL the engine showed Outreach and content targets
Raw artifact Screenshot or full paste The only thing that survives a dispute

How I run it without a dashboard #

Monthly is the default for a retainer. Weekly if the category is newsy or the client is in a launch window. I run the same wording, same country, same logged-out or consistent account state. I keep the raw answer. Scores without artifacts are how agencies lose arguments.

For a manual pass I will use ChatGPT (GPT-5.5), Claude (Sonnet 5 for volume, Opus 4.8 when the answer is a judgment call), Gemini 3.1 Pro, Gemini 3.5 Flash for cheap re-checks, and Perplexity's live search. That is an audit method. It is not a monitoring product. If you tell a client "we use Claude as our GEO platform," you are confusing a model with a system of record.

When the bank is stable, a paid runner is worth it because humans skip weekends. Until the bank is stable, buying the runner just automates a bad list.

Engine set I actually sell #

I do not track every surface on day one. I match engines to how the client's buyers choose.

Client type Engines in the first bank Why
Local service ChatGPT, Perplexity, Google AI Overviews, Google AI Mode Shortlist + map-adjacent answers
B2B / software ChatGPT, Perplexity, Gemini, Claude Comparison prompts and "best tool for X"
Ecommerce / retail ChatGPT, AI Overviews, AI Mode, Perplexity Product and "best of" answers
National brand already in Semrush or Ahrefs Whatever the suite already indexes, plus 15 custom money prompts Do not ignore the suite you already pay for

Country and language stay fixed per row. A US-English prompt and a UK-English prompt are two rows. Mixing them in one cell is how you invent a trend.


Which paid GEO dashboards are worth a seat vs a spreadsheet? #

Buy a seat when you need daily multi-engine runs, competitor rows, and a login a client will actually open. Stay on the spreadsheet until those three are true. I will not tell you one vendor "wins GEO." I will tell you what each public page claimed in August 2026 and which job I would pay for.

What I verified on vendor pages (August 2026) #

Product Official page I used What they say they track List price I saw When I would pay
OtterlyAI otterly.ai/pricing (fetched August 2026) ChatGPT, Google AI Overviews, Perplexity, Microsoft Copilot on base plans; Claude, Gemini, and Google AI Mode as add-ons Lite $29/month (15 prompts); Standard $189/month (100 prompts); Premium $489/month (400 prompts); Enterprise from $1,000/month Solo proof or a small prompt set. Read the add-on table before you assume Gemini and AI Mode are included.
Peec AI peec.ai/product/ai-visibility (page published August 14, 2026); peec.ai/pricing; Peec's own ai-instructions Visibility, position, sentiment, sources across ChatGPT, Perplexity, Gemini, and related surfaces; agency credit model in Peec agency docs Peec's ai-instructions page (published August 14, 2026) lists brand Starter at $95/month as of July 2026 and a separate agency track. Confirm peec.ai/pricing / peec.ai/pricing-agencies before you buy. Agencies that want unlimited seats and credit allocation across clients.
Profound tryprofound.com/pricing (fetched August 2026) Answer-engine insights, prompt tracking, Agent Analytics; Starter is ChatGPT-only Starter $99/month; Growth $399/month (3 engines, 100 prompts); Enterprise custom. Page shows yearly billing with two months free. Growth or Enterprise when the brand is paying for multi-engine plus procurement (SSO/SOC2). Do not buy Starter and tell the client you covered Perplexity.
Semrush AI Visibility Toolkit Semrush KB, toolkit pricing; solutions page Mentions, share of voice, sentiment, prompt tracking, AI Search Site Audit; engines listed on the solutions page include ChatGPT, Gemini, Perplexity, SearchGPT, Google AI Mode, Google AI Overviews Toolkit $99/month on the KB page (25 tracked prompts, 1 domain for Brand Performance). Extra toolkit license $99 per subuser. Extra Brand Performance domain $99. Extra 50 prompts $60/month. Semrush One bundles SEO + AI visibility; the features KB lists Semrush One starting at $199/month. Teams already living in Semrush who need one login for SEO + GEO.
Ahrefs Brand Radar ahrefs.com/brand-radar; help, July 13, 2026; metrics, June 26, 2026 Mentions, citations, impressions, AI share of voice across AI Overviews, AI Mode, ChatGPT, Perplexity, Gemini, Copilot, and related indexes. Help text: chatbot indexes refresh about monthly; AI Overviews more often. AI chatbot indexes need the Brand Radar AI add-on on a paid plan. Ahrefs does not publish a single public add-on sticker the way Otterly does. I am not inventing one. Existing Ahrefs shops that want a huge prompt index and custom prompts, and who will read the methodology instead of treating SOV as gospel.
Brand24 brand24.com; LLM Visibility; prices Core product: mention listening across web and social. LLM Visibility add-on: brand appearance in AI answers. Their LLM page listed a paid add-on at $99/month for 4 models and 30 prompts as of the August 2026 check. Confirm brand24.com/prices and the LLM page. Listening plans and the GEO add-on are different SKUs. PR / reputation in scope. Not a substitute for a citation monitor if that is the only job.

Otterly's own help article What is OtterlyAI (dated August 14, 2026 on the page I pulled) describes daily prompt runs across ChatGPT, Google AI Overviews, Google AI Mode, Perplexity, Gemini, Claude, and Microsoft Copilot, then scores mention, citation, and competitors. That is a runner, not a first-party log. Same category as Peec and Profound.

My buying rule #

  • Spreadsheet wins when you have one client, under ~25 prompts, and you can stand a monthly ritual.
  • Otterly Lite ($29/month list) is the cheapest honest "show the client a chart" seat I found on a public pricing page in August 2026. Fifteen prompts. Four engines. Gemini, AI Mode, and Claude cost extra — add-on table on the same pricing page.
  • Peec is the agency-shaped runner: credit formula in their docs is 1 prompt × 1 model × 1 day = 1 credit (understanding credits). Unlimited users is the feature SEO tools usually charge seats for.
  • Semrush or Ahrefs when the account already pays for the SEO suite and you would rather add a module than teach a third login.
  • Profound Growth ($399/month list) or Enterprise when the buyer is a brand team that wants agents, SSO, and a vendor they can take to security review. Starter at $99 is ChatGPT only. I would rather keep the spreadsheet than pretend one engine is the category.

I do not stack Otterly + Peec + Profound on one retainer. Pick one runner. Keep GSC, GA4, the bank, and the validators underneath it. Two runners on the same prompt set will disagree, and you will spend the QBR explaining vendor math.


How do I report AI visibility to a client without lying about attribution? #

Report four separate facts: mention rate on the query bank, citation rate on the query bank, Google generative-AI impressions when Search Console has them, and GA4 sessions that actually arrived from a known AI hostname. Never multiply a mention rate by average deal size. Never call a ChatGPT name-drop a lead.

On June 3, 2026, Google launched Search Generative AI performance reports in Search Console. The blog post lists impressions, pages, countries, devices, and dates for generative AI features in Search (AI Overviews, AI Mode) and Discover. Google also said the reports were rolling out to a subset of sites first. That is Google-property visibility. It is not ChatGPT. It is not Perplexity. The post does not promise clicks or query-level AI data. If the property does not have the report yet, say so. Do not invent a filter.

GA4 still does what Google's traffic-source docs say it does: it attributes sessions and users from campaign parameters and referrers. When someone clicks a citation, you may see a referral from a ChatGPT or Perplexity host. When they do not click — the common case — GA4 is silent. Silence is not "zero AI impact." It is "no click happened."

Line on the monthly report Allowed claim Forbidden claim
Query-bank mention rate "Named in 12 of 30 tracked prompts on ChatGPT this month" "We own 40% of AI search"
Query-bank citation rate "Cited with a URL in 7 of 30" "Those 7 citations produced $X pipeline"
GSC generative-AI impressions "Google showed our URLs in AI features N times" (if the report exists) "GSC proves ChatGPT cites us"
GA4 referral sessions "N sessions arrived from [hostname]" "AI visibility drove N opportunities"
Ahrefs / Semrush AI SOV "On this vendor's prompt index, our share was Y" "This is the market's true share of voice"
Brand24 mention count "N web/social mentions matched the keyword" "N AI citations"

I put the methodology in the appendix of every deck: prompt list, engines, dates, vendor if any, and a note that two vendors will not match. Procurement respects that more than a glowing "AI Visibility Score" with no denominator.

The one-pager I actually send has six blocks, in this order:

  1. Win condition restated. Named and cited on the money prompts — not "rank recovered."
  2. Bank scoreboard. Mention rate and citation rate, this month vs last, split by engine.
  3. Google block. GSC generative-AI impressions and pages, or an explicit "report not on this property yet."
  4. Click block. GA4 referrals from known AI hosts, labeled as clicks only.
  5. Work shipped. Pages, schema, crawler fixes, third-party URLs pursued. No work, no retainer renewal.
  6. Appendix. Prompt list, raw-answer folder link, vendor caveats.

If block 5 is empty, I do not send a prettier chart. I send the gap. That is how you keep the stack honest when the runner's score ticks up because a competitor fell off a prompt, not because you shipped anything.

If you need the metric definitions behind those rows — Share of Model, citation share, sentiment — that is the cousin post: how to measure AI visibility. Do not rename vendor scores to match my definitions unless you show the mapping.


How do I check AI crawlers and server logs without buying another dashboard? #

Read robots.txt for the retrieval bots, then confirm those user-agents (and published IPs) appear in host or CDN logs. A GEO dashboard that never asked for log access cannot tell you a WAF is 403ing PerplexityBot. That check is still yours.

OpenAI's crawler docs split the jobs. OAI-SearchBot is the search/index bot for ChatGPT search; blocking it keeps you out of those search answers. GPTBot is the training crawler; blocking it is a training opt-out, not a search opt-out. ChatGPT-User is a user-triggered fetch; OpenAI says robots.txt may not apply and that this agent is not the Search opt-out control. Settings are independent. OpenAI also publishes IP JSON for each agent.

Perplexity's crawler docs split the same way. PerplexityBot builds the index and they tell you to allow it in robots.txt if you want to appear. Perplexity-User fetches on a user's request and "generally ignores robots.txt." They publish perplexitybot.json and perplexity-user.json. Verify IP plus user-agent. User-agent strings are cheap to spoof.

Google's common crawlers doc is the one I bookmark. Googlebot is the Search crawler; Google says Googlebot preferences affect Google Search, including Discover and Search features. Google-Extended is a robots.txt product token for Gemini Apps / Vertex grounding and training uses. Google states it has no separate HTTP user-agent and that it does not affect inclusion or ranking in Google Search. If a junior marks "no Google-Extended in logs" as a critical finding, they misread the docs.

Token / agent Job (per vendor docs) Show up in logs? Visibility move I make
OAI-SearchBot ChatGPT search index Yes, if they crawl you Allow if the retainer includes ChatGPT citations
GPTBot OpenAI training Yes Client policy call. Independent from search.
ChatGPT-User User-triggered fetch Sometimes Do not treat as the Search switch
PerplexityBot Perplexity index Yes Allow + IP allowlist on the WAF
Perplexity-User User-triggered fetch Yes, when a query needs the page Allowlist; do not expect robots.txt to stop it
Googlebot Google Search crawl Yes Do not block if you want Search or AI Overviews
Google-Extended Gemini / Vertex control token No distinct UA Policy in robots.txt; do not hunt it in access logs

Paid help exists. Peec documents Crawl Insights if you connect logs. Profound lists Agent Analytics and CDN/host integrations on its pricing page. Semrush's toolkit includes an AI Search Site Audit. None of those replace opening robots.txt on day one of an audit.

I do not paste robots.txt samples in a code block here. The rule is simpler than a snippet: name each agent in its own group, allow the retrieval bots you sold, and keep admin, cart, and account paths disallowed for everyone.

WAF false positives are the silent killer. A "bot fight" rule that only allows Googlebot and Bingbot will 403 PerplexityBot and OAI-SearchBot while the homepage still looks fine in a browser. I check the last 14 days of 403/429s for those user-agent substrings before I accuse the content. Peec and Profound can chart crawls after you connect logs. They cannot see a block you never told them about.


How do I test schema so answer engines can extract the page? #

Validate the types you actually shipped — Organization or LocalBusiness, WebSite, Article or FAQPage, Product, Person — in two official testers, then fix errors before you argue about citations. Schema is extractability insurance. It is not a citation button.

Google's structured data documentation tells you to start with the Rich Results Test for Google-eligible rich results, and to use the Schema Markup Validator for generic schema.org checking. I run both. Passing Google's test means Google can read a supported type. It does not mean Perplexity will cite the URL tomorrow.

Test Official URL What a pass means What a pass does not mean
Rich Results Test search.google.com/test/rich-results Google can see supported structured data and may be eligible for that rich result ChatGPT will recommend the business
Schema Markup Validator validator.schema.org The JSON-LD / Microdata / RDFa matches schema.org types The content is trustworthy or unique
Search Console enhancements Property → enhancements / rich result reports Google is seeing the type in production FAQPage spam will be rewarded
URL Inspection Search Console Google's crawled version of that URL Other engines used the same HTML

Agency-grade schema work is boring on purpose:

  • One Organization (or LocalBusiness) with a stable @id, same name as the homepage and the Google Business Profile.
  • FAQPage only on pages that are real FAQs, not a stuffed keyword block.
  • Article + author Person on editorial URLs.
  • Product only on real products.
  • No three plugins emitting three Organizations.

I do not buy a third "AI schema optimizer." If the CMS cannot emit clean JSON-LD, that is a site build problem. I sell that build. I do not sell another validator subscription.


What's the difference between a brand mention and a citation in the stack? #

A mention is your name in the answer. A citation is a source URL the engine shows. Web listening (Brand24 and friends) catches pages that talk about you. GEO runners catch whether the model used your name or your URL in a tracked prompt. If you invoice those as one line item, you will over-report.

This is the distinction I make clients repeat back before we pick software.

Signal Where it lives Tool that sees it Typical action
Web / social mention News, Reddit, reviews, blogs Brand24 core listening (brand24.com) PR, reviews, corrections
Answer mention Prose inside ChatGPT / Perplexity / AIO Query bank or Otterly / Peec / Profound / Ahrefs / Semrush Entity cleanup, comparison pages
Answer citation URL or footnote the engine displayed Same GEO runner + raw artifact Make that URL more extractable; earn the third-party URL they already trust
Google AI impression URL shown in AI Overviews / AI Mode / Discover AI GSC generative-AI report (June 3, 2026 announcement) Page-level content and crawl health
Click Session in GA4 GA4 referral / campaign UX and conversion — not the citation program

Brand24's LLM Visibility page is an add-on that sits on the listening product. That is a legitimate second job: "are we in the answers" plus "is the web still saying the old story." It is not a reason to skip the query bank. Thirty prompts on four models, which is what that page listed for the $99 add-on in August 2026, is a sample, not a program.

Ahrefs Brand Radar's metrics article (June 26, 2026) also splits mentions and citations. Use their words when the client already pays for Ahrefs. Do not merge them into one "visibility" blob so the slide looks simpler.


What should a solo operator buy vs a 5-person agency team? #

A solo operator should buy almost nothing until the query bank exists. A team should buy one GEO runner, keep one SEO suite, and share a report — not a tool per person. Headcount changes who clicks the buttons. It does not change the five jobs.

Solo / freelancer stack I actually run #

Layer What I use Monthly list cost (August 2026)
Search + Google AI impressions Google Search Console $0
Click traffic GA4 $0
Query bank + scores Spreadsheet $0
Schema Rich Results Test + Schema Markup Validator $0
Crawlers robots.txt + host/CDN logs $0 (time)
Optional chart Otterly Lite if a client needs a URL $29/month on otterly.ai/pricing
SEO leftover Existing Ahrefs or Semrush seat, if I already have one Already on the books

That is enough to sell an audit and a 90-day sprint. If I cannot describe the gap from that stack, a $399 Profound seat will not save the proposal.

Five-person agency stack I would approve #

Seat Who uses it Why one copy is enough
GSC + GA4 per client Analyst + AM First-party Google data
One GEO runner (Otterly Standard/Premium, Peec agency credits, or Semrush AI Visibility) Delivery lead Daily runs + exports. Not one login per intern.
Ahrefs or Semrush SEO toolkit SEO lead Links, keywords, tech audit — still the other half of the retainer
Brand24 Only if PR is in the SOW Mentions, not a second citation product
Shared report (Sheets or Looker) Everyone One scoreboard; vendor PDFs are attachments
Log access (Cloudflare / host) Tech lead Crawler proof the runner cannot see
Profound Growth / Enterprise Optional, brand-side accounts When security review and multi-engine agents are the buying motion

Peec's agency docs are built around allocating credits across projects, not stacking user seats (agency getting started). Semrush's KB is the opposite motion: $99 per extra subuser for the AI Visibility Toolkit. If you staff five people on Semrush AI, you are buying five toolkits. Price the org chart before you promise "the whole team will live in Semrush."

Otterly's pricing page advertises unlimited team members on paid plans and an Agency Partner path on Standard/Premium with extra prompts. That is a better seat math for a small shop than per-user SEO add-ons — if the prompt cap fits the book of work.


What should I not buy for an AI visibility stack in 2026? #

Do not buy a second rank tracker, a "GSC for ChatGPT" story, an auto-GEO rewriter, or an attribution product that turns mentions into revenue. Those four purchases are how agencies light money on fire and then blame the category.

Skip Why it fails Buy this instead
Second rank tracker Same SERP, new logo Keep one SEO suite
"Official ChatGPT Search Console" OpenAI does not sell agencies that log Query bank + a runner
Profound Starter sold as multi-engine Pricing page: ChatGPT only, 50 prompts Spreadsheet, or Growth if they need three engines
Brand24 as the only GEO tool Core product is listening; LLM add-on is a thin prompt sample Bank + Otterly/Peec/Semrush/Ahrefs
Extra Semrush AI licenses for every AM KB: $99 per subuser One toolkit + exported PDF
"AI revenue attribution" suite Mentions are not sessions; sessions are not opportunities Four-line honest report
GEO content spinner Thin pages do not get cited; they get ignored Extractable pages and third-party proof
Third schema plugin Duplicate Organization graphs One clean JSON-LD path
Training-opt-out product sold as visibility Blocking GPTBot is not a citation strategy Separate training policy from OAI-SearchBot / PerplexityBot
Two GEO runners on one client Scores will disagree One runner, raw artifacts underneath

I also will not buy a tool because a vendor homepage says "30,000 marketers" or "3,000 brands." Those are marketing claims. They are not a reason to skip the prompt list.

If a salesperson leads with "we have the data Google and OpenAI will not give you," hang up. They have a prompt runner. You can rent one. You can also build the runner's job in a sheet for the first client.


Frequently asked questions #

Do I need a paid GEO tool to sell AI visibility services? #

No. You need a query bank, raw answers, crawler proof, and schema tests. A paid runner helps you look like a productized shop and saves the weekly grind. I will sell an audit from the free layer. I will not pretend Otterly Lite is required to know whether ChatGPT names the client.

Can Google Search Console show ChatGPT or Perplexity citations? #

No. Search Console is Google. The June 3, 2026 Search Central post adds generative-AI impressions for Google Search and Discover features. Use a query bank or a GEO runner for ChatGPT and Perplexity.

Is Ahrefs or Semrush enough for GEO work? #

Enough for the SEO half plus a vendor AI index — not enough if you never save raw answers for the client's actual sales questions. Brand Radar and the AI Visibility Toolkit are real. They still sit on prompt corpora and refresh cadences the vendors document. I keep custom prompts for the money questions either inside those tools or in the sheet.

How often should I re-run a query bank? #

Monthly for a standard retainer. Weekly during a launch or a reputation event. Daily is for a paid runner on a volatile set, not for a human clicking thirty tabs. Date-stamp every run. A score without a date is a vibe.

What's the cheapest stack that still looks professional? #

GSC, GA4, a 20-prompt sheet with screenshots, both schema testers, and a robots/log pass. If the client needs a hosted chart, Otterly Lite at $29/month list on otterly.ai/pricing (August 2026) is the lowest public GEO seat I verified. Fifteen prompts. Read the engine add-ons.

Should I use Brand24 for AI citations? #

Use Brand24 for web and social mentions. Use the LLM Visibility add-on only if you already want listening and a small AI sample in the same login. Do not replace a citation monitor with a listening tool. Their LLM page listed $99/month for 4 models and 30 prompts in the August 2026 check — confirm live.

How do I pick between Otterly, Peec, and Profound? #

Otterly if you want a public cheap-to-mid ladder and can live with Gemini / AI Mode / Claude as add-ons. Peec if you are an agency allocating credits across clients. Profound if the buyer is a brand team that will pay Growth or Enterprise and understands Starter is ChatGPT-only. I would not run all three. I would run a two-week trial of one against the same bank and keep the raw answers as the tie-break.

Do I need GA4 for AI visibility reporting? #

Yes, as the click layer — not as the citation layer. GA4 traffic-source dimensions explain sessions and campaigns. Report referrals when they exist. Do not treat missing referrals as proof the GEO work failed.

Can I use ChatGPT or Claude as the monitoring tool? #

You can use GPT-5.5, Claude Sonnet 5, Claude Opus 4.8, Gemini 3.1 Pro, or Gemini 3.5 Flash to run the bank by hand. That is labor. It is not a system of record. No export, no competitor panel, no daily cadence unless you wrap it. I use the models to audit. I use the sheet or a runner to remember.

What schema types should I validate first? #

Organization or LocalBusiness, WebSite, then the page-level type (Article, FAQPage, Product). Run the Rich Results Test and validator.schema.org. Fix errors before you buy another "entity SEO" app.

How many prompts do I need per client? #

Start with 15–40 that map to revenue conversations. Otterly Lite includes 15. Semrush's toolkit KB includes 25 tracked prompts. Profound Starter includes 50 on ChatGPT only. More prompts are not more strategy. A bloated bank is how you pay Premium prices to track questions nobody asks on a sales call.

Not according to OpenAI. Their bot docs say GPTBot is the training crawler and OAI-SearchBot is the search crawler, and the settings are independent. Blocking GPTBot is a training policy. Blocking OAI-SearchBot is a search-visibility policy. Decide them separately, in writing, with the client.


Book the audit, then buy the seats #

If you are packaging GEO for a book of SEO clients, start with the jobs, not the logos. I will run the query bank, the crawler and schema pass, and an honest scoreboard before I tell you which paid seat — if any — belongs on the retainer. That is the same motion as the DIY audit, with agency coverage and a sprint list you can sell.

Book an AI visibility audit and bring your current SEO suite, one client you want to pilot, and the ten questions that client actually hears on sales calls. We will map audit → stack → retainer without a fake Search Console and without attributing revenue to a mention.

0 views • 0 likes