Skip to content



Generative engine optimization icon

Get cited by the AI engines your buyers use

We run a closed loop that monitors your citations across ChatGPT, Claude, Perplexity, and AI Overviews, drafts the fixes, and ships them under your approval. GEO and AEO grounded in first-party research.



What this is

Most teams running GEO today publish definition posts and add an llms.txt file. That is the floor. The work that moves citations starts after it. We treat citation as an engineering problem: instrument where AI engines pull their answers from, ship the changes that put you inside those answers, and measure whether they worked.

The ground is moving fast. Reddit's share of AI citations roughly doubled between October 2025 and January 2026, Perplexity now attributes 31% of its citations to social sources, and AI Overviews citations dropped 46% in the same window, according to Profound's Q1 2026 AI Citation Trends Report. The platforms doing the citing are often not the ones you are tracking.



What most GEO gets wrong



Definition and comparison content

Most GEO content published today is taxonomy work: "What is GEO?", "GEO vs SEO". LLMs already have this, and it competes with Wikipedia and five hundred near-identical posts. The citation wins live in specific, evidence-backed claims that can't be scraped from a dictionary.

One layer treated as the whole job

llms.txt and schema both help. Profound and Vercel publish evidence for llms.txt, and structured data improves crawlability and context. Each is one ingredient. Ship a 30-line llms.txt file or a schema pass on its own, leave content negotiation untouched, and you have optimised the wrong layer.

Publishing more, without gates

Volume without editorial infrastructure is AI slop. LLMs weight source trust, so a corpus full of AI tells and unverified claims trains the wrong signal. More content behind no quality bar can move citation share in the wrong direction.

An SEO retainer with a new label

A monthly content brief delivered as a PDF is not GEO work. The diagnostic-to-ship gap in advisory retainers is measured in quarters. GEO needs a closed feedback loop: detect a citation shift, draft a remediation, ship it, re-monitor. That loop can't run on a monthly report cadence.



How we do it



Content negotiation is the highest-impact technical change

How it works

Per Ramp's first-party research, markdown was the only format that reliably surfaced in LLM responses. Bots ask for markdown. Browsers get HTML. The same URL can serve both. That is content negotiation, and instrumenting it per page is the single change with the widest citation coverage.

Roboto's own site is the worked example. The content is MDX on disk, so the markdown is the source rather than a format derived from a CMS export. When an LLM crawler asks for markdown at a given URL, it gets a clean document with structured headings, inline links, and no CMS wrapper noise. We wrote up the approach in our Next.js AEO/GEO guide. On a CMS-driven stack it's a transform step rather than a route handler, but the goal is the same clean markdown at the canonical URL.



A closed loop, not a quarterly report

How it works

Quarterly advisory cycles break at the feedback step. You get a report in month three describing what happened in month one, and by the time an edit clears approval and publish, the competitive set has shifted again. The diagnostic is stale before the fix ships.

A background agent watches citation share across platforms on a weekly cadence. When share drops on a target prompt cluster, it flags the change, identifies what moved in the competitive set, and drafts a remediation PR: a content edit, a schema patch, an llms.txt update, or a content negotiation rule. A human reviews and ships, then the agent re-monitors that cluster and measures whether share recovered. We run this on our own site and documented the build in why we built our own background agent. For an engagement we set the same loop up on your stack: your data sources, your content repo, your approval flow.



Technically watertight

How it works

Bot classification is where most implementations break. Single-signal classification on User-Agent alone misses the bulk of AI crawler traffic. Correct classification combines UA, IP range, ASN, and bot score. The Cloudflare gotcha compounds it: ChatGPT, Perplexity, and Claude bots are categorised as "AI Assistants" in Cloudflare's taxonomy, not "AI Search", so firewall and analytics rules targeting only "AI Search" miss all three major platforms.

The rest is table stakes we verify before touching anything higher up. Schema goes in where it helps LLMs parse structure (ServiceSchema, FAQPage, BreadcrumbList, Article). The llms.txt file gets prioritisation logic rather than a flat list of 400 pages. Crawlability is genuinely non-negotiable: every list item rendered into the DOM, navigation in static HTML, correct status codes, and clean submitted sitemaps.



Publishing velocity without slop

How it works

Volume compounds citation share only when the content clears a quality bar that LLMs trust. The editorial infrastructure is what makes volume safe to ship, so we build three gates into the publishing pipeline.

An AI-tell detector runs before merge, flagging em-dashes, negative parallelism, banned phrase families, and AI vocabulary; content that fails goes back for a humanizer pass. A fact-checker agent verifies specific claims against their cited primary sources and flags any that don't hold. A humanizer pass strips the sentence structures that read as generated. The cms-auto-updater pipeline is the worked example: it pulls evidence from primary sources on a weekly cadence, drafts updates, runs all three gates, and opens a PR for review. The result is far more content per quarter without the citation-eroding slop that comes from raw AI publish pipelines.



How we deliver



Audit

Fixed-scope review of your current citation footprint and technical readiness. Covers content negotiation, bot classification, schema, llms.txt, and crawlability, plus competitor citation analysis across target prompt clusters and a prioritised remediation roadmap ordered by expected impact. Duration: 1 to 2 weeks. Deliverable: written report and walkthrough call.

Setup

Implementation engagement. We wire up content negotiation across key pages, fix bot classification, implement llms.txt with prioritisation logic, add schema where missing, and restructure high-value content for citation extraction. Monitoring dashboards for citation share, crawler activity, and AI-referral traffic come standard. Duration: 4 to 6 weeks typical, scoped per engagement.

Retainer

The closed loop running continuously on your stack. Weekly agentic monitoring across citation, crawler, and search data sources. Agent-drafted remediation PRs reviewed and shipped by Roboto. Monthly synthesis call covering what moved, what we shipped, and what's queued. Re-baselined quarterly. Minimum 3-month commitment.

Common questions

The skeptic's FAQ

What people actually want to know about GEO

Does llms.txt actually do anything?

It helps, and Profound and Vercel publish positive evidence on it. Ramp's first-party experiment notably didn't recommend it as a lead tactic. Treat llms.txt as one layer alongside content negotiation, schema, and crawlability, not a silver bullet.

Is GEO real or just SEO with a new label?

The substrate is different. SEO optimises for ranked search results. GEO optimises for citation inside an LLM response. The technical work overlaps (crawlability, schema, content quality) but the diagnostic loop is new: which prompts cite you, which models, on which platforms, and how that share moves week to week. Selling an SEO retainer as a GEO retainer is the grift.

How fast can citations actually move?

Faster than organic rankings, slower than paid ads. A substrate change like content negotiation, a schema patch, or a content rewrite can move citation share within weeks rather than the quarters an advisory retainer takes to close the loop. How fast depends on your starting point and how competitive your target prompt clusters are.

Why isn't publishing more content the answer?

Volume without editorial gates and fact-checking compounds AI slop. Doubling publishing cadence without those gates risks moving citation share the wrong way, because LLMs deprioritise low-trust sources. The win is volume with infrastructure: gates that catch AI tells before publish, fact-checker agents that verify claims against primary sources, humanizer passes that strip AI vocabulary.

Do I need GEO if I already do SEO?

If your buyers use ChatGPT, Claude, Perplexity, or Google AI Overviews to evaluate vendors, yes. The first-party data shows AI search is now a meaningful share of the discovery funnel. If your buyers still arrive exclusively via blue-link Google, no, but that's a shrinking population, especially in B2B.



The research behind it



Profound Q1 2026 AI Citation Trends

Profound Q1 2026 AI Citation Trends

The most specific public dataset on AI citation dynamics to date. Reddit citation share roughly doubled October 2025 to January 2026. Perplexity attributes 31% of all citations to social media, with Reddit at 24%. AI Overviews citations dropped 46% in the same period. The implication: social platforms are now a primary citation surface, and tracking only your own domain misses where citations originate. Source: tryprofound.com

Ramp Builders: marketing to AI agents

Ramp Builders: marketing to AI agents

First-party experiment on what formats LLMs actually surface. Markdown was the only format that reliably appeared in responses. Bot classification requires combining UA, IP, ASN, and bot score, since single-signal approaches miss the major platforms. llms.txt was not recommended as a lead tactic in their findings. Source: builders.ramp.com

Merj: server log analysis for AI crawlers

Merj: server log analysis for AI crawlers

A playbook for distinguishing real LLM crawlers from spoofed user agents via server log analysis. The spoofing rate for AI crawlers is material, so acting on UA alone gives a distorted picture of which platforms are actually crawling your content and how often. Server logs are the ground truth. Source: merj.com

Vercel: AI crawler studies and llms.txt

Vercel: AI crawler studies and llms.txt

First-party data from Vercel's CDN on AI crawler behaviour, llms.txt adoption and impact, and framework-level responses to AI traffic. Their data shows a positive correlation between llms.txt presence and citation rate, alongside the content negotiation patterns that improve LLM ingestion. Source: vercel.com/blog

iPullRank: LLM ranking factor research

iPullRank: LLM ranking factor research

Mike King's technical research on the factors that correlate with LLM citation: content structure, entity coverage, E-E-A-T signals as proxied by LLMs, and the structural differences between content that gets cited and content that doesn't. One of the more rigorous public treatments of GEO. Source: ipullrank.com

Ahrefs: AI Overview impact on CTR

Ahrefs: AI Overview impact on CTR

Research on how AI Overviews affect click-through rates on organic results, and the crossover between pages that rank organically and pages that get cited in AI responses. The data suggests high overlap at the top end, so strong organic pages stay relevant while citation remains a separate signal worth tracking on its own. Source: ahrefs.com/blog



From the blog





Get cited

Ready to find out if AI engines cite you?

If your buyers research vendors through ChatGPT, Claude, Perplexity, or Google AI Overviews and you don't know whether you show up, a discovery call is the fastest way to find out. We'll show you the citation gap and walk you through the closed-loop fix.





Get in touch

Tell us what you're building. We reply within one working day — Jono or someone on the team picks up every message personally.