Skip to main content

2 posts tagged with "ai search"

View All Tags

The B2B GEO Playbook: What Actually Gets You Cited by AI Buying Agents [2026]

ยท 10 min read
Sunder Iyer
Founder, marketbetter.ai

Quick answer: To get cited by AI engines, measure your machine-query footprint in Search Console, lead every page with a direct 40-60 word answer containing a concrete number, publish verifiable pricing and stats (worth up to 40% more AI visibility per Princeton's GEO study), keep ranking top-3 (position 1 gets cited 43% of the time, position 7 gets 5%), and skip llms.txt โ€” 97% of those files never get fetched.

Three weeks ago we published 28 days of data showing AI agents googling our product โ€” a third of our search impressions came from queries no human typed, and they produced exactly zero clicks. The most common question we got back was: fine, so what do we actually do about it?

This is that post. A working GEO (generative engine optimization) playbook for B2B teams โ€” except every step is backed by published evidence or our own Search Console data, because the GEO advice industry is currently about 80% vibes. Some of what vendors are selling demonstrably does nothing. Some boring things work extremely well. Here's how to tell them apart.

The B2B GEO playbook: from machine queries to AI citations

Why this is worth your time nowโ€‹

Two numbers from G2's March 2026 survey of 1,076 B2B software buyers ("The Answer Economy"):

  • 51% of B2B software buyers now start their research in an AI chatbot, not a search engine.
  • 69% chose a different vendor than they originally planned based on what the chatbot told them โ€” and a third bought from a vendor they'd never heard of before the AI suggested it.

Meanwhile, Brandlight's tracking found the overlap between top Google results and AI-cited sources has collapsed from roughly 70% to under 20%. Ranking well on Google no longer guarantees you exist in the answer your buyer actually reads.

Our own data says the machine readers are already here: in our latest 28-day Search Console window (Aug 10 โ€“ Sep 6), queries of 8+ words โ€” overwhelmingly assistant-generated โ€” accounted for 32.9% of our 294,750 impressions and produced zero clicks. The evaluation is happening. You're just not seeing the visit.

Step 1: Measure your machine-query footprint (15 minutes)โ€‹

Before optimizing anything, find out how much of your search footprint is already machine-read. In Search Console, open Performance, add a query filter with Custom (regex), and use:

^(what|which|how|where|why|can|is|are|does|do|should)\b

That catches question-form queries โ€” the signature of AI assistants running query fan-out. Then compare CTR against your overall average.

Ours, for the last 28 days:

Query typeShare of impressionsCTR
All queries100%0.13%
Question-form queries24.5%0.02%
Queries of 8+ words32.9%0.00%

If your question-form bucket is piling up impressions with near-zero CTR, AI engines are reading you. That's not a problem to fix โ€” it's the channel you're about to optimize. (You'll also find oddities in there: we get queries prefixed with "is it" grafted onto complete other questions, and queries carrying % and + operator artifacts. Those are other people's AI tools malfunctioning in public. Enjoy them.)

Step 2: Put a quotable answer in the first 100 wordsโ€‹

The single highest-leverage change, and it costs nothing. When an AI engine fans a prompt out into sub-queries, it reads the top results and extracts whatever answers the question directly. A page that opens with context-setting throat-clearing gives the model nothing to extract.

The evidence: Princeton's GEO study (published at KDD, tested across 10,000 queries) found that the tactics that most improved visibility in generative engine answers were adding statistics, quotations, and explicit citations โ€” each worth roughly 25-40% more visibility. Fluent, keyword-stuffed prose did nothing. Machine-extractable specifics did everything.

In practice, every high-intent page should open with a 40-60 word block that states the answer with at least one concrete number. We rebuilt our Close CRM pricing breakdown this way โ€” it opens with the exact verified per-seat range and the date we verified it. That page now earns over 33,000 impressions a month on pricing queries, and when an AI engine answers "what does Close actually cost per rep," the extractable math is ours.

Step 3: Publish numbers competitors won'tโ€‹

AI engines cross-reference sources before citing them. Generic claims ("flexible pricing," "industry-leading accuracy") are unverifiable, so they're skipped. Specific claims get pulled into answers because they're what makes an answer worth synthesizing.

This is uncomfortable for B2B teams raised on "contact sales." But the SSRN cross-platform citation study found pages with concrete populated attributes โ€” real pricing, real ratings, real specifications โ€” were cited at substantially higher rates than pages with vague equivalents. It's also why our AI BDR tools comparison names actual prices and actual feature gaps for every vendor including ourselves, and why our visitor identification guide publishes tested match-rate ranges instead of "high accuracy."

The rule: if a claim can't be verified by a model reading five other sources, don't lead with it. If your real numbers are good, publishing them is now a distribution strategy, not a leak.

Step 4: Skip llms.txt โ€” the evidence says it's theaterโ€‹

Half the GEO consultants on LinkedIn will sell you an llms.txt file this week. Here's what the data shows:

  • Ahrefs analyzed server logs across 137,000 domains: 97% of llms.txt files received zero requests in the measured month. GPTBot, ClaudeBot, PerplexityBot, and Google-Extended crawl your HTML directly and don't even probe for the file.
  • No major AI company โ€” OpenAI, Google, Anthropic, Meta โ€” has committed to reading it in production.
  • Google's search team has said outright they don't support it and compared it to the keywords meta tag.
  • One research team found that removing llms.txt as a variable from their AI-citation prediction model improved the model's accuracy.

It takes ten minutes and does no harm, so ship one if it makes a stakeholder happy. But if a vendor's GEO pitch leads with llms.txt, that tells you what the rest of the engagement will be worth.

Schema markup deserves similar skepticism in moderation: Ahrefs tracked 1,885 pages that added JSON-LD and found AI citations barely moved. Schema with real populated data (pricing, ratings, authorship, dateModified) helps engines trust and attribute your content; schema as an empty ritual does nothing. Fill the fields or skip the exercise.

Step 5: Keep winning at boring old SEO โ€” position still decides citationsโ€‹

The most underreported finding in the AI-citation research: pages at position 1 got cited in 43% of the AI answers where they appeared; by position 7, that dropped to 5%. Each rank position costs you roughly a quarter of your citation odds.

Citation odds by rank: position 1 gets cited in 43% of AI answers, position 7 in 5%

GEO is not a replacement channel. The engines mostly read the same index Google ranks, which means the retrieval layer still runs on classic SEO: crawlability, internal links, topical authority, freshness. All the unglamorous work in our search intent study โ€” matching page format to query intent โ€” matters more now, because you're competing for a handful of citation slots instead of ten blue links.

Rank first. Get extracted second. There is no step where you skip ranking.

Step 6: Consolidate โ€” thin content fails with machine readers tooโ€‹

AI engines synthesize across sources. A page that adds no unique data to the synthesis gets read and discarded. If you spent 2024-2025 shipping templated comparison pages (we did โ€” about 680 of them), the machine reader is even less forgiving than Google's core updates were.

We deleted 161 posts in one day and consolidated the survivors into pillars like our signal-based selling guide and B2B intent data guide. Traffic went up. Fewer, denser pages concentrate your citable claims instead of scattering them across near-duplicates that dilute each other in retrieval.

Consolidation heuristic: if two of your pages could cite each other as sources, they should probably be one page.

Step 7: Change what you measureโ€‹

If you grade AI-era content on clicks, you will kill exactly the pages doing the invisible work. Our question-form pages look like failures by CTR โ€” 0.02% โ€” while feeding answers to the agents building our buyers' shortlists. G2's data says AI now assembles the majority of B2B shortlists before a human ever visits a vendor site.

What we track instead:

  1. Citation spot-checks โ€” monthly, we run our 20 highest-value buyer questions through ChatGPT, Perplexity, and Google's AI Mode and log who gets cited. Manual, 45 minutes, brutally clarifying.
  2. Branded search volume โ€” the buyer who reads an AI answer and later googles your name is the click you earned but never attributed.
  3. Machine-query share (the Step 1 regex) โ€” trending up means growing machine readership.
  4. Demo requests with "AI told me about you" โ€” we ask on the booking form. It's no longer a rare answer, which matches G2's finding that a third of buyers purchase from vendors an AI introduced.

And remember the impression isn't the end of the funnel you control. The buyers an AI sends you arrive anonymous โ€” identifying who's on your site and acting on it is how the invisible channel becomes pipeline. That part is literally our product.

The checklistโ€‹

StepActionEvidence
1Measure machine-query share with the GSC regexOur data: 32.9% of impressions, zero clicks
240-60 word answer with a number in the first 100 wordsPrinceton GEO: up to +40% visibility from stats/citations
3Publish verifiable pricing, rates, and limitsSSRN: concrete attributes cited at substantially higher rates
4Skip llms.txt; only ship schema with real dataAhrefs: 97% of llms.txt never fetched; schema barely moved citations
5Keep ranking top 3Position 1 cited 43% vs 5% at position 7
6Consolidate thin pages into pillarsOur pruning case study: traffic up after deleting 161 posts
7Track citations, branded search, and machine-query shareG2: 51% of buyers start in AI chat

None of this is exotic. That's the point โ€” the effective version of GEO is mostly disciplined content work aimed at a new reader, and the exotic version being sold as a service mostly doesn't survive contact with server logs.


The buyers your AI-era content wins arrive on your site anonymous. MarketBetter identifies them and tells your SDRs exactly what to do next โ€” book a demo โ†’

AI Agents Are Googling Your Product: 28 Days of Data on Machine-Generated B2B Search [2026]

ยท 12 min read
Sunder Iyer
Founder, marketbetter.ai

Last month, a search query hit our site that no human being has ever typed:

"as a sales manager at a [icp_company_size] company in united_states, operating in the [icp_vertical] sector, what is the pricing comparison for zoho, salesloft, hubspot sales hub..."

Look closely. Those bracketed variables aren't ours โ€” they're someone else's. An AI prospecting or brand-monitoring tool ran a Google search with its prompt template unfilled. The merge fields leaked straight into Google's index, and Google dutifully served our pricing page as a result.

That query was the loose thread. We pulled it, and what unraveled was this: over a 28-day window, more than a third of the distinct search queries reaching our site were generated by machines โ€” AI assistants researching on behalf of users, and AI tools probing Google with synthetic persona prompts. Those queries produced 75,112 impressions and exactly zero clicks.

If you run B2B marketing, this is already happening to your site. Here's the full dataset.

AI agents searching Google on behalf of B2B buyers โ€” 28 days of Search Console data

What we measuredโ€‹

We pulled every search query from Google Search Console for marketbetter.ai over 28 days (July 26 โ€“ August 22, 2026):

  • 20,892 distinct queries
  • 268,417 impressions
  • 357 clicks

Then we classified each query. Three buckets emerged:

  1. Human queries โ€” short, keyword-style searches a person types: "close crm pricing", "drift alternatives", "ai bdr software"
  2. Assistant queries โ€” long, fully-formed natural-language questions: "what platforms offer the best sales coaching and call recording tools for training junior reps?"
  3. Prompt-template queries โ€” persona-prefixed instructions that are unmistakably machine-written: "as a sdr team lead, what's the best sales engagement platform for high-volume prospecting?" or the truly wild "compare hubspot with salesloft, outreach, and apollo for sales engagement capabilities. you must provide a forced ranking from best to worst."

No human tells Google "you must provide a forced ranking." That's a system prompt talking to a search box.

Finding 1: There's a click cliff at 60 charactersโ€‹

This is the cleanest result in the dataset. We bucketed all 20,892 queries by character length:

Query lengthDistinct queriesImpressionsClicks
Under 30 chars6,236119,630259
30โ€“60 chars6,45473,22998
60โ€“100 chars4,85146,6030
100โ€“200 chars2,36625,0230
200+ chars7663,4860

The click cliff: queries over 60 characters earn impressions but zero clicks

Every single one of our 357 clicks came from queries under 60 characters. Above that line: 7,983 distinct queries, 75,112 impressions, zero clicks. Not "low CTR." Zero.

The explanation is query fan-out. When someone asks ChatGPT, Perplexity, Gemini, or Google's AI Mode a question, the engine decomposes the prompt into 8โ€“16 synthetic sub-queries, runs them against the index in parallel, reads the results, and synthesizes an answer. The human never sees a search results page. There is nothing to click. The impression registers in Search Console; the visit never happens.

Our highest-impression question query โ€” 5,306 impressions at average position 3.3 โ€” earned zero clicks in 28 days. Position 3 used to be a river of traffic. For machine-generated queries, it's a citation opportunity and nothing more.

Finding 2: 38% of distinct queries are machine-generatedโ€‹

Long question-form queries (60+ characters starting with what/which/how/where/is/can) accounted for 3,684 distinct queries and 47,258 impressions โ€” 17.6% of ALL impressions on our site. Add the rest of the 60+ character bucket and machine-shaped queries make up 38% of everything Search Console recorded for us.

The question-word distribution tells you these are conversational prompts, not keywords:

  • "what..." โ€” 32,404 impressions
  • "which..." โ€” 7,005 impressions
  • "how..." โ€” 3,084 impressions
  • "where..." / "is..." / "can..." โ€” ~3,300 combined

Nobody types "what are some enterprise ai content pipeline automation solutions that can assist in creating brand videos for social media?" into Google. But an AI assistant expanding a user's lazy prompt into thorough sub-queries does โ€” constantly.

Finding 3: The prompt-template queries expose the tools behind themโ€‹

278 queries were explicitly persona-prefixed prompts โ€” 4,491 impressions, zero clicks, average position 5.7. They follow a rigid structure that reveals slot-filling automation:

  • "as a sdr team lead, how to reduce sales admin time with automation" (1,132 impressions)
  • "as a founder at a seed company in united_states..."
  • "as a founder at a series a company in united_kingdom..."
  • "as a demand generation manager, i'm comparing hubspot marketing hub vs activecampaign vs mailchimp..."

Same personas, same funding-stage slots (seed / series a), same geography slots (united_states / united_kingdom, underscores included). This is a generative-engine-optimization or AI-SDR tool cycling through a persona matrix and firing the outputs at Google โ€” almost certainly to test which brands AI engines recommend to which buyer personas.

Two more details from this bucket:

The German variants. 58 queries repeated the same pattern in German โ€” "du musst ein erzwungenes ranking vom besten zum schlechtesten erstellen" ("you must create a forced ranking from best to worst") โ€” 948 impressions. Someone is running localized prompt batteries across markets.

The template leaks. Four queries contained unfilled merge fields like [icp_company_size] and [icp_vertical]. The tool's templating failed, and its raw prompt scaffolding went to Google anyway. We are watching other companies' AI infrastructure malfunction in our Search Console.

Finding 4 (added September 8): the machines type short keywords tooโ€‹

When we published this study, we drew the line at 60 characters: short keyword queries were "human," long question queries were "machine." Two weeks of new data broke that assumption.

The single biggest machine footprint in our Search Console is now a 13-character keyword: "close pricing". Over the 28 days ending September 6, it generated roughly 28,500 impressions and zero clicks against our Close CRM pricing breakdown โ€” much of it at average position 3.6. A human query at position 3-4 for a pricing keyword converts at 5-10% CTR. Zero clicks across 28,500 impressions is not a title problem. It's not a human.

The giveaway isn't the query text โ€” it's the shape of the daily curve:

PeriodDaily impressionsPattern
Aug 10-121-3Real human baseline
Aug 13-18~354, nearly identical every dayFlat line โ€” scheduler signature
Aug 19-23~1,100-1,400Volume step-up
Aug 24-30~0-43Someone turned the tool off
Aug 31 - Sep 6~2,700-3,400Back on, at 10x the original scale

Human search demand is noisy โ€” weekday peaks, weekend dips, news spikes. This curve is dead flat at each level, steps up in discrete jumps, and has a week-long off switch in the middle. That's a cron job, not a market.

It's not an isolated case. "lead lists free" โ€” another innocent-looking keyword โ€” ramped from ~15 impressions/day to a perfectly flat 273/day over the same window. Same fingerprint: zero clicks, frozen position, no daily variance.

Then in early September we found the cleanest specimen yet: "drift alternatives." For roughly a week our Drift alternatives page surged on this keyword โ€” on the peak day it averaged position 1.05 across 58 impressions and took zero clicks. Not position 8. Position one, essentially every serve, on a commercial "alternatives" keyword โ€” the kind of ranking SEO teams celebrate โ€” and not a single human clicked, because no human was searching. The burst ran about a week (steady 15-70 impressions/day), touched position 1, then collapsed back to 2-6 impressions a day. A rank check or retrieval job finished its run and moved on.

That's the finding in one line: position 1 with 0% CTR is now a real, recurring pattern in B2B Search Console data. If your reporting treats a #1 ranking as a win by definition, machine traffic will quietly inflate your scorecard on exactly the keywords that look most valuable.

We can't say for certain what's running these โ€” a rank tracker, a GEO monitoring tool checking who Google serves for pricing queries, or AI agents doing retrieval grounding at scale. What we can say: short-query volume is no longer proof of human demand.

The practical trap: every SEO "quick wins" report flags exactly these pages โ€” huge impressions, great position, terrible CTR, "just fix the title!" We nearly spent this week rewriting titles to win clicks from software that will never click anything. Before you optimize a high-impression zero-click page, pull the query's daily impression curve. If it's a flat line with step changes, the demand is synthetic โ€” spend your effort somewhere real.

What this means: your rankings are being read, not clickedโ€‹

The classic SEO contract โ€” rank well, get traffic โ€” is quietly being renegotiated. For a growing share of B2B research, the "searcher" is a model that reads five results, synthesizes an answer, and maybe cites you. The human sees the answer, not your site.

Three implications for B2B teams:

1. CTR is now a misleading metric for a chunk of your footprint. If we judged our question-form pages by CTR, we'd conclude they're failing. They're not โ€” they're being consumed by a different reader. When we ran our search intent study earlier this month, we found "best tool" listicles barely convert even with human readers; for machine readers, the click was never on the table. Judge these pages by whether AI engines cite and recommend you โ€” and by branded search and direct demo requests downstream.

2. Being the quotable source beats being the ranked source. Query fan-out means an AI engine runs a dozen sub-queries and fuses the results. Content that answers a specific question directly, in the first paragraph, with a concrete number, gets pulled into answers. Vague thought-leadership doesn't. This is why we lead posts with quick-answer blocks and real figures โ€” like the actual all-in cost math in our AI SDR pricing breakdown or the tested match rates in our visitor identification guide.

3. Thin templated content is worthless to machine readers too. AI engines cross-reference. A page with no unique data adds nothing to a synthesized answer and gets skipped. This is the same logic that led us to delete 161 blog posts in one day โ€” content that exists only to occupy a keyword has no audience left, human or machine.

The uncomfortable part: buyers are outsourcing evaluationโ€‹

Look again at what those persona prompts ask: "which scales better for demand programs?", "how do customer testimonials rate the impact on sales and marketing alignment?", "according to user reviews on capterra, which is best?" โ€” followed by a demand for a forced ranking.

B2B software evaluation โ€” reading reviews, comparing pricing, building the shortlist โ€” is being delegated to AI agents. The agent does the search, weighs the reviews, and hands its human a ranked list. If your product isn't legible to that agent โ€” clear pricing, specific capabilities, verifiable claims โ€” you're not on the shortlist and you'll never know an evaluation happened.

We've written before about what AI agents can and can't do for GTM work and how teams use Claude for lead generation and ABM workflows. The mirror image is now true: the same class of agents is evaluating you.

What we're doing about it (and what you should do)โ€‹

Publish real numbers. Actual pricing math, tested match rates, honest limitations. Machine readers reward specificity because it's what makes an answer synthesizable. Our AI BDR tools comparison names real prices and real gaps for every vendor โ€” that's the content that gets cited.

Answer the question in the first 100 words. Every high-intent page should open with a direct, quotable answer. The fan-out sub-query that matches your page gives you one shot to be extracted.

Keep your comparison claims verifiable. AI engines cross-check against reviews and other sources. Inflated claims don't just fail with skeptical humans โ€” they get you dropped from synthesized answers when the cross-reference disagrees.

Watch your own Search Console for this pattern. Filter queries by length or question words. If 60+ character queries are piling up impressions with zero clicks, AI engines are already reading you. That's not a problem to fix โ€” it's a channel to win.

Stop grading every page on clicks. Track citations in AI answers, branded search growth, and pipeline. The impression-with-no-click is the new top of funnel.

We've since turned these findings into a step-by-step B2B GEO playbook for winning AI buying agents โ€” how to structure pages, pricing, and comparison claims so machine readers cite you.


Methodology notesโ€‹

Data: full Google Search Console query export for marketbetter.ai, July 26 โ€“ August 22, 2026 (28 days). 20,892 distinct queries, 268,417 impressions, 357 clicks. Finding 4 added September 8, 2026 from a second window (August 10 โ€“ September 6): daily impression curves pulled per-query via the Search Console API; "close pricing" totals aggregated across all ranking URLs on the property. The "drift alternatives" example added September 10, 2026 (window August 11 โ€“ September 8) uses per-day query data on the same property. Classification: queries of 60+ characters beginning with interrogatives were classed as assistant-generated; queries matching persona-prefix or explicit instruction patterns ("as a [persona], ...", "you must provide a forced ranking", German equivalents) were classed as prompt-template queries. Classification was conservative โ€” short conversational queries were left in the human bucket, so machine-generated share is likely understated. Query text shown verbatim from Search Console; these are public search strings, not user data.


MarketBetter identifies the buyers already researching you โ€” human or otherwise โ€” and tells your SDRs exactly what to do next. See how it works: book a demo โ†’