For B2B SaaS · 20–200 people · US & UK · one consultant
GEO for B2B SaaS is the work of getting a software company named and cited by AI assistants at the moment a buyer asks which vendors to consider.
Software categories are the worst-affected case: the buyer is technical enough to trust an assistant, the category has dozens of near-identical options, and the pages engines cite are review sites you do not control.
I work only with B2B SaaS, because the failure patterns repeat: docs behind JavaScript, comparison pages that read like brochures, a G2 profile doing more work than the website, and a marketing team that cannot prove any of it in GA4. Knowing the pattern is most of the speed.
Where SaaS loses the citation
Typical shape of a cited-source inventory in a software category. Your own numbers come from the audit; the pattern is remarkably stable.
Because software buying was already research-driven, and assistants replaced the research step rather than the buying step. Your buyer used to open six tabs, a comparison post and a review site; now they describe their situation once and read a synthesised answer built from those same sources. Nothing about their intent changed — only the surface where the shortlist gets written.
That surface rewards a set of things SaaS marketing is not organised around. Not brand, not design, not a well-argued homepage: specific claims, in plain sentences, on pages a crawler can read, corroborated somewhere the engine already trusts. A category leader with a beautiful site and no presence in the roundups loses to a smaller competitor sitting in every listicle.
Three things. Review platforms hold enormous citation weight, so a stale G2 or Capterra profile speaks for you more loudly than your own site. Product docs are usually the most quotable material you own and are often the least accessible, hidden behind an app shell no AI crawler will execute. And pricing pages, the single most-asked-about page in any SaaS category, are frequently gated or dynamic — so the engine answers from a two-year-old blog post instead.
Yes. Below roughly 20 people there is rarely enough authority anywhere for engines to pick you up, and the honest advice is to build demand first. Above 200 the work becomes an internal programme across several teams, which is an agency job, not a solo one. Between those two is where one consultant can measurably move the number.
Pick one to see the fix
None of these is exotic and none of them is a content-volume problem. They are the same five findings, in roughly the same order of severity, in nearly every audit I run — which is good news, because it means the first month of work is predictable and cheap relative to its effect.
How it shows up
The engine describes your product from a marketing page or an old blog post, gets a feature wrong, and never cites your documentation — because no major AI crawler executes JavaScript and your docs live inside an app shell.
Nobody blocked anything deliberately, yet GPTBot, ClaudeBot, PerplexityBot or Google-Extended are being served a challenge page. Bot management defaults did it, and the marketing team has no visibility into it.
Your G2 or Capterra listing has old pricing, a discontinued plan and three-year-old reviews — and it carries more citation weight in your category than your website does.
Comparison-stage prompts return third-party posts exclusively. Your own “vs” pages either do not exist or read as brochures, so nothing in them is quotable as a fact.
Your team suspects AI-sourced pipeline exists but cannot prove it, so the budget conversation stalls every quarter and the work looks unaccountable.
What I do about it
Identify which routes are client-rendered, get server-rendered or pre-rendered HTML for the doc tree, and verify with a fetch that mimics each bot rather than a browser.
Audit robots directives and bot-management rules per bot, separate training crawlers from retrieval crawlers, and decide each one on purpose instead of by default.
Bring the profiles up to date, fix factual drift against your current pricing, and build a steady review cadence so the corpus engines read stays current.
Build genuinely specific comparison content: named limitations, real pricing, honest trade-offs. Engines quote sentences that commit to something, not sentences that hedge.
Build the segments that do survive in GA4 and your CRM, report leading indicators, and state plainly which parts genuinely cannot be attributed.
Effort and honesty
1–3 weeks
Days
Ongoing
4–8 weeks
1–2 weeks
Engineering work, not marketing work. Usually the single highest-value fix in a SaaS audit.
Cheapest fix on the list. Also the one most often found already broken.
Not glamorous, and it moves the number more than a quarter of blog posts will.
Requires you to say something true and unflattering. That is the part clients resist.
Fixes the reporting problem, not the attribution problem. That distinction is the honest part.
Qualification, both directions
I take four to six clients at a time, so saying no is part of the job. Read the right-hand column first — if two or more of those describe you, we should not start, and I would rather tell you here than after an invoice.
Good fit
Wrong fit — I'll say so
Measurement first, access second, sources third, re-measurement fourth. Content volume is deliberately last, because in a software category the citation usually already exists on somebody else's page — the job is to be in it, not to publish more.
Days 1–10
Baseline and diagnosis
Frozen set of 150–200 prompts across four engines, cited-source inventory, crawler access check, prioritised backlog. This is the $1,500 audit, and it stands alone.
Weeks 3–6
Access and rendering
The unglamorous half: server-rendered docs, bot rules decided deliberately, structured data corrected, pricing made readable to a crawler that will not run your app.
Weeks 5–12
Sources and content
Review profiles brought current, presence in the roundups engines actually cite, and comparison pages specific enough to be quoted in a sentence.
Day 90
Re-measurement
The identical frozen set, run again, compared as a paired comparison. If the intervals overlap, the report says no trend — and we decide whether to change approach or stop.
AI Visibility Audit
$1,500
10 working days
Monitoring
$750 / mo
weekly runs
Full GEO retainer
from $3,000 / mo
3 months minimum
Advisory call
$250 / hr
one-off
The eight that come up on almost every first call, answered here so the call can be about your category instead.
The protocol is the same; the failure patterns and the citation sources are not. Software categories lean unusually heavily on review platforms and roundups, and SaaS sites break in specific ways — client-rendered docs, gated pricing, app shells no crawler will execute.
Partly, and it helps more than nothing — but rank and citation are different outcomes. Plenty of category leaders rank first organically and are absent from assistant shortlists because the pages engines cite are third-party comparisons they have no presence in.
Usually less than you expect. In a software category the citation typically already exists on somebody else's page, so the first work is being in that page and making your own facts readable — not adding to a blog nobody cites.
One marketing owner and some engineering time. The access and rendering fixes are genuinely engineering work; if nobody can ship a site change within a month, the measurement will simply confirm the same problems next quarter.
Cleanly, in my experience: they keep the hygiene and content operation, I take measurement, per-bot crawler access, and the third-party sources. I will send them the specs rather than duplicate their work.
Then the audit says so and you should not buy a retainer. Some B2B categories have almost no assistant-driven demand today; you keep the baseline and re-measure in two quarters, which is a much better use of $1,500.
Access fixes can show up within weeks because they remove a hard blocker. Citation-share movement on a low-authority domain realistically takes four to six months before it clears the interval, and I plan engagements on that basis.
The audit is $1,500 regardless of size. A full retainer starts at $3,000 a month, and where you land in the $3,000–6,000 band depends mostly on how much implementation work your site needs rather than your headcount.
I will tell you whether your category has enough assistant-driven demand to be worth the spend — before you pay for anything. If it does not, you get that in writing and we both save a quarter.