Your Buyers Are Asking ChatGPT Who to Hire. If Your Site Isn't Machine-Legible, You Aren't in the Answer.
Stijn Hendrikse · Aug 24, 2026
A CEO looking for a fractional CMO used to Google it, skim five agency pages, and ask two peers. Now she opens ChatGPT and types "best fractional CMO for a Series A B2B SaaS company doing product-led positioning."
The model returns three to five names, with reasoning. If you are not one of them, you were never in the consideration set. There is no page two to fight your way onto. There is no impression to optimize. You simply were not cited.
That is the part that should keep you up. For a solo practice, being absent from AI answers isn't a ranking problem — it's a pipeline problem. If pipeline gaps cost you roughly six weeks of billable capacity a year at a $250K+ run rate, you are already paying about [$35,000] annually for a brand-building habit you don't have time to maintain. Answer engines are the one distribution channel where a small, sharp, well-structured practice can outrank a 40-person agency — because the model doesn't care how big you are. It cares whether it can read you, understand you, and quote you accurately.
The direct answer: three files make your site citable
If you want an answer engine to quote you by name, publish three things on your own domain this week:
-
llms.txt— a short markdown index atyoursite.com/llms.txtthat tells a model what your site is, who you serve, and where the important pages live. -
llms-full.txt— the full text of your key pages concatenated into one file atyoursite.com/llms-full.txt, so a model can ingest your actual substance without crawling and rendering ten JavaScript pages. -
schema.org JSON-LD — structured data in the
<head>of each page declaring what you are (ProfessionalService,Person,Service,FAQPage) in a vocabulary machines have parsed for a decade.
That's it. Together they turn your site from "a design a model has to guess at" into "a source a model can quote with confidence." Everything below is how to do each one properly, and why the third one matters more than the first two.
Why this is a now problem, not a 2028 problem
The trigger isn't a vendor announcement. It's that your peers have already started.
Scroll LinkedIn this week and you will find fractional CMOs posting their RFP-response agents, their prompt libraries, their custom GPTs. One of our own prospect notes reads a post like that as a buying signal, plainly: "His RFP agent post signals he's already solving workflow problems with AI."
The forecast everyone quotes — the Semrush number a peer paraphrased on a recent Kalungi masterclass as "in 2028 or even before, more searches to websites are going to come through LLMs versus your typical SEO" — is directionally right and beside the point. The behavior change is here. Buyers ask a model first, then click through to verify. You are being evaluated in a conversation you cannot see.
And here is the uncomfortable structural fact from our own market scan: in 48 tested query-by-LLM combinations covering "best operating system software for a fractional CMO running multiple B2B SaaS clients" and "GTM OS vs Agency OS," T2D3 was cited zero times. Not outranked. Absent. Meanwhile buyers' models happily recommended 29 different vendors, most of them generic project tools.
We are telling you this because it is the whole argument. AI visibility is not earned by being good. It is earned by being legible. We were good and invisible. So are you, probably.
Heading one: what llms.txt actually is, and a starter you can paste today
llms.txt is a proposed convention — think robots.txt, but instead of telling crawlers what to avoid, it tells language models what matters. It lives at your root, it's plain markdown, and it takes twenty minutes.
Here's a starter structured for a solo practice:
# Jane Okafor — Fractional CMO for B2B SaaS
> Fractional CMO specializing in positioning and demand
> generation for Series A–B B2B SaaS companies ($2M–$15M ARR).
> Based in Austin, TX. Engagements run 6–12 months at
> 2 days/week. Named method: the [Method Name] diagnostic.
## Who I work with
- Series A and B B2B SaaS founders wearing the CMO hat
- Companies whose founder-led referral pipeline has flattened
- Teams that have a product but no repeatable GTM motion
## Services
- [Positioning & ICP Diagnostic](/services/diagnostic.md):
30-day engagement producing ICP, personas, value props
- [Fractional CMO Retainer](/services/retainer.md):
2 days/week, 6-month minimum
- [GTM Audit](/services/audit.md): fixed-fee, 2 weeks
## Proof
- [Case: Series A HR tech, pipeline from X to Y](/work/hrtech.md)
- [Case: PLG-to-sales-led transition](/work/plg.md)
## Writing
- [Why positioning work never shows up in Q1 pipeline](/blog/q1.md)
- [Pricing a fractional retainer without a benchmark](/blog/pricing.md)
## Contact
- Email: jane@example.com
- Booking: /call
Three rules that separate a useful llms.txt from decoration:
-
Be specific in the blockquote. "Fractional CMO helping companies grow" gets you cited for nothing. "Series A–B B2B SaaS, $2M–$15M ARR, positioning and demand gen, Austin" gets you cited for the niche queries where you actually win. The market is segmenting into hyper-specialized niches and generalists are losing engagements to specialists — this file is where you plant your flag in a form a machine can read.
-
Link to
.mdversions where you can. Models parse markdown far more reliably than a rendered page full of nav, cookie banners, and lazy-loaded sections. -
Name your method. If you have a named methodology, put it in the summary line. Named things get quoted; unnamed things get paraphrased into anonymity.
llms-full.txt: give the model the substance, not the sitemap
llms.txt is the index. llms-full.txt is the book.
It's one file containing the full markdown text of everything you want a model to know — services, case studies, your five best posts, your FAQ, your pricing if you publish it. Concatenated, with clear # headings and source URLs above each section.
Why bother when crawlers exist? Because crawling is lossy and expensive. Your site's substance is scattered across templates, tabs, and accordions. A single clean text file removes every excuse for the model to summarize you incorrectly — and misattribution is the real risk. Being quoted wrong is worse than not being quoted, because you never get the chance to correct it.
A practical scope for a solo practice: five to fifteen pages, 8,000–20,000 words. Regenerate it whenever you publish. If you're doing this by hand, that regeneration step is the one that quietly dies in month two — which is exactly the failure mode to design around.
JSON-LD is the part most consultants skip, and it's the part that earns the citation
llms.txt is a convention with uneven adoption. Schema.org JSON-LD is a decade-old standard that Google, Bing, and every model trained on the open web already understands. It's the highest-confidence signal you can send.
Minimum viable set for a fractional practice:
-
Person+ProfessionalServiceon your homepage: your name, your role, your service area, yoursameAslinks to LinkedIn and any publication bylines. This is how a model connects "Jane Okafor" the entity to your site as the authoritative source. -
Serviceon each offer page: name, description, provider, area served, audience. This is what gets you into "who does X for Y" answers. -
FAQPageon pages answering real buyer questions. Use the buyer's exact phrasing — "how do I prove my retainer value when clients say generic AI can do the basics now" — as the question. Answer it in 40–60 words. That block is directly quotable. -
Articlewithauthor,datePublished, andabouton every post. Attribution requires an author entity. No author entity, no name in the citation.
The pattern across all four: you are declaring entities and relationships, not keywords. Answer engines cite entities. Make yourself one.
The maintenance problem, and why we made this a build output
Here's the honest version of this advice: you can absolutely do all three by hand this week. Most consultants do it once, feel good, and then ship four new pages, change their positioning, and never regenerate anything. Six months later your llms-full.txt describes a practice you no longer run.
That's the same failure mode as every other part of a solo practice — the Notion-Sheets-Asana patchwork where strategy lives in one place and everything downstream drifts away from it.
So we built it the other way around. In T2D3 OS, your ICP, personas, and value props are authored once and locked as a versioned strategy. The Website Builder generates pages from that locked foundation — and every site it publishes ships llms.txt, llms-full.txt, and schema.org JSON-LD generated deterministically from the same source. Machine-legible output is a build artifact, not a task on your list. Change the strategy, republish, and all three files are correct by construction.
That's the principle we design to: if a human-readable page and a machine-readable file can disagree, they eventually will. So don't let them be authored separately.
Do this this week
-
Today — write your
llms.txtfrom the starter above. Twenty minutes. Publish it at your root and confirm it loads. -
Tomorrow — add
PersonandProfessionalServiceJSON-LD to your homepage. Validate it in Google's Rich Results Test. -
This week — concatenate your five strongest pages into
llms-full.txt. AddFAQPageschema to one page, using three buyer questions phrased exactly as buyers say them. -
Friday — run your own baseline. Ask ChatGPT, Claude, Perplexity, and Google AI Overviews the four queries your ideal client would type. Screenshot the answers. That's your zero.
-
Every 30 days — re-run the same four queries. Track whether you appear, and whether what's said about you is accurate.
The reputation premium you want — being the fractional CMO whose work a client can't reproduce in a chat window — starts with the model knowing you exist and describing you correctly. Right now, for most solo practices, it does neither.
Being citable is distribution. It's the cheapest distribution available to a one-person firm, and it compounds while you're delivering for clients instead of networking.
T2D3 OS keeps one versioned, locked strategy per client — ICP, personas, value props — that every channel and AI output reads from. Sites published from it ship machine-legible by default. [See how the Website Builder works →]