When somebody asks ChatGPT "who builds custom software in Oregon," or asks Perplexity whether their WordPress site can be saved, the answer that comes back names specific businesses. Not ten blue links to sort through — two or three names, presented as *the answer*.
To get your business cited by ChatGPT, Google AI Overviews, Perplexity, and Copilot, you need five things: a site AI crawlers are allowed to read, structured data that lets machines verify who you are, pages written as direct answers to real questions, FAQ content that is visible on the page and matches your markup exactly, and an llms.txt file that hands AI engines a verified summary of your business. That's the whole system. The rest of this post is how to build each piece.
This isn't theory. In August we launched a new site for [a McMinnville law firm →](/work/abraham-hanson-law) built on exactly this system. It earned 339 AI-search citations in its first 30 days live — up from zero on the old site — peaking at 40 citations in a single day, while Google impressions grew 3.9× month over month. Every mechanic below is something that site runs in production.
What an AI citation actually is
When an AI assistant answers a question, it increasingly does live retrieval: it searches, reads a handful of pages, and synthesizes an answer with sources. A citation is your business being named or linked as one of those sources. For a service business, that's a warm lead arriving pre-sold — the machine already told them you're the answer.
The good news for small businesses: AI engines don't wait months to trust a site the way classic Google rankings do. They cite whoever gives them the cleanest, most verifiable answer *right now*. A brand-new site can win the same week it launches. Ours did.
Step 1: Stop blocking the crawlers
Most businesses that are invisible in AI search blocked the door by accident. Security plugins, CDN bot protection, and copy-pasted robots.txt files routinely block GPTBot (ChatGPT), OAI-SearchBot (ChatGPT search), ClaudeBot (Claude), PerplexityBot, and Google-Extended (Gemini).
Open your robots.txt file — it's at yourdomain.com/robots.txt — and check. If those user agents are disallowed, no amount of great content will ever be cited, because the engines literally cannot read it. Our own [robots configuration →](/robots.txt) explicitly welcomes every major AI crawler, and every client site we ship does the same.
Step 2: Give machines an identity they can verify
Before an AI engine cites you, it cross-checks you. Is this really a law firm? Is it really in McMinnville? Do the name, address, phone, and services match everywhere they appear?
This is what schema.org structured data is for — machine-readable JSON on every page stating who you are, where you are, what you do, and how you're rated. The key is *consistency*: every page's markup has to agree with every other page, with your Google Business Profile, and with the visible text. Machines cite what they can verify, and they skip what contradicts itself.
Step 3: Write pages shaped like answers
AI engines assemble answers from content that already looks like an answer. "We deliver innovative solutions with a passion for excellence" is not quotable. "A custom small-business website costs $3,000–$5,000 and ships in 2–4 weeks" is.
The pattern that works: open the page with a two-or-three-sentence direct answer to the question the page exists to answer — with real numbers — then expand below. We call these answer capsules, and we just added one to every service page on this site. Look at the "short answer" box on our [AEO service page →](/services/aeo): that box is written for a machine to lift verbatim, and for a human to read and think "finally, a straight answer."
Step 4: Make your FAQs visible, and make them match
FAQ schema is one of the most-cited content formats in AI answers — but engines check that the markup matches words a visitor can actually see. Sites that stuff hidden text into schema get skipped, and sites with great visible FAQs but no markup make the machine work harder than it needs to.
Do both: real questions your customers actually ask, answered plainly on the page, with FAQPage markup that matches the visible words exactly. Every service page on this site carries matched visible-plus-schema FAQs, and so does every client site we ship.
Step 5: Publish an llms.txt file
llms.txt is a plain-text file at the root of your site — like robots.txt, but instead of telling crawlers where they can't go, it hands AI engines a verified summary of your business: who you are, what you do, your key facts, and where your important pages live. It's a young standard, but it costs almost nothing to publish and it removes every excuse a machine has to get your facts wrong. [Ours is here →](/llms.txt).
How do you know it's working?
You track citations, not just rankings. Classic SEO tools won't show you this — you need AI-citation tracking that records when ChatGPT, Perplexity, Copilot, or Google's AI features cite your domain, which is exactly what the reporting in our [AEO service →](/services/aeo) does. That's how we know the law firm's number was 339 in its first month and not a vibe.
One more honest note: none of this replaces the fundamentals. A slow site loses citations to a fast one, and a site with nothing worth citing gets nothing regardless of markup. If you want the deeper background first, start with [What is Answer Engine Optimization? →](/blog/what-is-answer-engine-optimization-aeo-guide)
Do it yourself, or have us do it
Everything above is doable in-house if you have the time and a developer who enjoys structured data. If you'd rather have the team that already ran this play run it for your business, [that's the service →](/services/aeo) — and a [15-minute conversation →](/contact) will tell you honestly whether AI search is worth investing in for your market yet.





