I spent over a year developing a framework for how websites earn AI citations. The framework is built on three conditions — structure, visibility, and discoverability — and I tested it by building a website from scratch with no backlinks, no social media, no reviews, no founder bio, and no authority of any kind.
ChatGPT cited that site in 33 days. Over the next 28 days it generated 122 leads at a 24.9% conversion rate.
This is the framework, the experiment that proved it, and why each condition matters.
What is the AI Citation Framework?
The AI Citation Framework defines three conditions that determine whether a website earns citations from AI systems. These conditions work in sequence, and all three have to be true.
Structure is the machine-readable architecture that makes a website legible to AI. This includes semantic HTML, clean code, disciplined page weight, and schema as the structured data feed. Either the building blocks are there or they are not.
Visibility is whether the model can access, parse, understand, and verify what the website is claiming. Structure gives AI the facts. Visibility is whether the model trusts those facts enough to use them.
Discoverability is the outcome layer. It is not about being seen by AI — it is about being recommended when a user is ready to act. This is where the model decides whether a website is the right destination to complete a user's request.
None of these conditions work in isolation. Structure without visibility is a well-built site nobody trusts. Visibility without discoverability is a trustworthy site nobody recommends. Discoverability without structure is a recommendation the model cannot verify.
I developed this framework over the course of a year through applied research on how AI systems discover, cite, and recommend websites. The experiment below is the controlled test that proved it.
How was this framework tested?
The SEO industry says you need backlinks, domain authority, social proof, and time to earn citations. I wanted to know if that was still true when the search engine is an LLM.
So I designed a controlled experiment. I needed a test case that would isolate the framework conditions from every traditional ranking signal. The site had to be brand new, in a competitive space, with no external signals of any kind — so the only variables that could explain a citation were the ones I was testing.
It also had to be a physical service, not a digital one, because digital content is saturated and harder to control for. It had to represent a real business where someone could actually fulfill the request. And it had to be a space where I could observe AI behavior clearly.
I picked art valuation.
Why art valuation?
I picked art valuation because it is easy to explain. If the framework worked, I wanted people to be able to understand it without getting lost in the industry. Most people can identify with "I built a site that values art" — and that simplicity makes the experiment easier to share, easier to follow, and easier to evaluate.
But beyond simplicity, the space had a gap I could target. I researched the competition and knew immediately I would lose a content war. There are hundreds of sites built around famous artists. Competing with galleries and art universities on content alone would be a waste of time.
So I looked at how people actually end up needing art appraised. The answer was inheritance and gifts. People receive artwork and do not know what it is worth. That was the gap.
Every competitor targeted people ready to sell. I targeted the question before that: is this even worth anything?
That became the domain name. WhatsMyArtWorth.com.
What role does structure play in AI citations?
Structure is the machine-readable architecture that makes a website legible to AI systems. Either you have the building blocks or you do not. It is not a guessing game — there are specific building blocks and they are either present or missing.
I built a static site. No JavaScript rendering. No dead code. Every line of code and content was justified.
My reasoning on JavaScript was a bias insight from working in web development. As a developer, I have a bias against sites that load through JS — and I am not alone. It is a common bias among developers, and AI systems are built by developers who share it. That matters because the people writing the crawlers, the parsers, and the ingestion pipelines carry those preferences into the tools they build. On top of that, AI agents interact with websites in different ways — some take screenshots, some parse HTML, some read JSON — and server-rendered content is the most reliable across all of those methods. I assumed AI would prefer on-page content, and I built accordingly.
Token input size mattered too. I measured my homepage at 5,882 tokens using OpenAI's tokenizer tool, while the top organic competitor for the same query measured at 112,437 tokens. My homepage was 6.5KB. The competitor was 1.0MB. When two websites fulfill the same need and tokens are a real-world cost, the lighter page that communicates the same information more clearly has a structural advantage.
Page speed was another factor. I scored 90+ on PageSpeed Insights, which a static site made trivial.
Why does schema matter as part of structure?
In ecommerce, product feeds are essential for communicating with platforms. Shopify uses them. Google Shopping uses them. But for non-ecommerce sites, there is no obvious equivalent — and that is where schema comes in.
JSON-LD is the closest thing to a structured data feed that already exists in production. LLMs are built on top of search infrastructure, and Google already uses schema for snippet answers, so it is the natural place for AI to look when it needs to understand what a business actually does.
I added everything I thought AI needed to understand the business: location, service-based positioning, FAQs, logo, organization type, website URL, and contact information. I deliberately left off reviews, social media profiles, and founder information because I did not have those signals and I wanted to test whether they were actually required.
The contact email was only in the JSON-LD schema. Nowhere else on the site. There is no contact page.
During the experiment, a user emailed requesting an expedited review. They had asked ChatGPT for contact information and ChatGPT gave them the email address that only existed in the JSON-LD markup. Not on the page. Not in the visible content. In the schema.
That confirmed what I believed but had not yet proven — AI is parsing schema data and using it operationally, not just for classification. The research on which schema fields AI systems actually read is what eventually became the foundation for the AIFDS blueprint library.
What matters here is not the technical implementation — it is the why. Schema gave AI structured facts about the business without requiring it to infer anything from prose. The fields that mattered were contact information, service positioning, and location. The fields that did not matter were reviews, social links, and founder credentials.
How does a site become visible to AI without traditional authority?
Visibility is whether an AI system can access, parse, understand, and verify a website. Structure gives the model machine-readable facts, but visibility is whether the model trusts what it is reading.
I had no traditional trust signals. No reviews. No social media. No directory listings. No third-party mentions of any kind. By every conventional measure, this site had no reason to be trusted.
So I replaced trust signals with expertise signals.
The artist directory was built to go deep on specific knowledge — not broad content marketing, but deep, specific information that demonstrated the site knew what it was talking about. The logic was that if the model could not verify the business through third-party sources, it would have to evaluate the content itself. And if the content demonstrated real expertise in a narrow domain, that would increase the model's confidence enough to cite it.
The other half of visibility was alignment. Content had to match schema context exactly. If the schema said this is an art valuation service, the page content had to say the same thing in the same terms. AI cross-references structured data against visible content, and when they conflict, the model looks for a clearer source. When they align, confidence increases.
Why would AI cite a website instead of answering the question itself?
There are two categories of AI knowledge that matter here. The first is foundational knowledge — information that lives in training data. AI knows historical sale prices for popular artists. It knows how the auction process works. It can explain art valuation in general terms. This is knowledge the model already has.
The second category is need-based — moments where a handoff has to happen. AI can explain what art valuation is, but it cannot appraise the specific painting on someone's kitchen table. That gap between general knowledge and specific human action is what triggers citation, because the model needs a provider to complete the loop.
This created two distinct opportunities for citation in this experiment: at the evaluation stage, where the user needs someone to assess the artwork, and at the selling stage, where the user needs someone to facilitate the transaction. Both are moments where AI reaches the boundary of what it can do on its own.
On top of the completion gap, there is a liability gap. General knowledge questions carry low risk. Shopping for clothes carries low risk. But making a financial decision about an inherited asset carries real risk. AI does not want to be the reason someone makes a harmful financial decision, so the higher the liability attached to an answer, the higher the likelihood of a citation to a qualified provider.
How do you target an entire conversation instead of a keyword?
I did not target a keyword. I targeted an entire conversation thread — what I call outcome based targeting.
A typical user conversation moves through a predictable sequence:
- "I inherited art."
- "Is it worth anything?"
- "If it is, what are my options?"
- "How do I sell?"
- "Who can help me?"
Every competitor entered that thread at the selling moment. I entered at the uncertainty moment, and I positioned the site to stay relevant at each step through the handoff. I targeted the upstream context — is this art worth anything? I targeted the next step — if it is worth something, what are my options? I targeted the handoff — here is someone who can identify the art and give you options based on the outcome. And I targeted the feedback loop — where the user tells ChatGPT what those options are and decides what to do next.
That is a very different positioning decision from targeting a keyword, and it changes which queries trigger a citation. I was not targeting the conversion moment. I was targeting the context that creates it.
Change the content and it changes the context. Change the context and it changes when AI recommends you.
What were the results?
33 days from domain purchase to first AI-sourced lead.
122 leads generated in 28 days of measurement.
24.9% conversion rate from ChatGPT traffic.
ChatGPT delivered 105 sessions during that period, while Google Search Console shows 22 clicks to the website. This was confirmed in GA4 traffic sources.
Homepage token count: 5,882. Top organic competitor: 112,437.
Homepage transfer size: 6.5KB. Top organic competitor: 1.0MB.
A user emailed a contact address that existed only in JSON-LD schema markup, nowhere visible on the page.
The site had zero backlinks, zero social media profiles, zero reviews, zero directory listings, and zero third-party mentions at launch.
The detailed findings from this experiment are published separately in the research notes.
What does this framework prove?
Three conditions produced this result, and they work in sequence.
Structure gave AI a machine-readable version of the website. Semantic HTML, clean code, disciplined page weight, and schema as the data feed meant the model could parse the site without guessing.
Visibility gave AI a reason to trust what it found. Content matched schema context, expertise depth replaced traditional authority signals, and alignment between structured data and visible content built confidence.
Discoverability gave AI a reason to recommend the site. The completion gap, the liability gap, and outcome based targeting positioned the site inside the conversation thread before the commercial moment arrived.
None of these conditions work in isolation. Structure without visibility is a well-built site nobody trusts. Visibility without discoverability is a trustworthy site nobody recommends. Discoverability without structure is a recommendation the model cannot verify.
All three have to be true.
What is being tested next?
This is an ongoing experiment. The site is live at WhatsMyArtWorth.com and I plan to publish all findings publicly.
The next phase tests what happens when traditional trust signals are layered on top of the existing framework — directory listings, social profiles, third-party mentions. The question is whether those signals increase citation frequency once the structural foundation is already in place.