
Own Site vs. Third-Party AI Citations: Who Really Gets Cited?

AI search optimization has a prioritization problem. The tactics are well documented, the tracking tools are mature, and recommendations arrive faster than any team can ship. Part of the problem is the lack of evidence. Only a handful of tactics have been tested properly (most have not been tested at all), and I know of no test that followed a tactic long enough to show the effect holds as AI engines keep changing. Any AI search optimization roadmap has to start from that problem.
SEOs see the same problem. In the SEOFOMO 2026 State of AI Search Optimization survey by Aleyda Solis, 171 search professionals answered, and 57% had a dedicated AI search strategy for all or most of their sites, up from 35% a year earlier. Yet the top challenges were measuring visibility reliably and understanding what drives it, and 35% could not say what AI search contributes to revenue. As Cyrus Shepard, founder of Zyppy SEO, put it in the report’s commentary, “very few people know what they should be doing with AI.”
With strategies spreading faster than proof, it is hard to decide what to do first. People talk about tactics much more than they talk about that.
The fix is to work in short, testable commitments. Rank every candidate action by evidence and effort, assign each an owner and a KPI, and schedule re-tests so the plan changes as the results do. Commit to the next 90 days instead of the next three years, and treat every action as a test. This is what people call a roadmap.
This guide builds the roadmap in five steps for any website, using a method I call the Evidence-Sorted Roadmap. It comes with a Google Sheet template, two prompts that fill it with Similarweb data through Claude, and a full example on real OpenAI data.
An AI search optimization roadmap, which some teams call a GEO roadmap, is a sequenced plan that decides which actions to take, in what order, who owns each, and how to measure results. It isn’t a checklist because it ranks actions by evidence and effort, and it isn’t a strategy because it includes dates and owners.
The roadmap has five parts: a measured baseline, a ranked list of actions, calendar blocks, one owner per action, and one KPI with a re-test date per action. It sits on top of your SEO roadmap and does not replace it. Google’s 2026 guide says that optimizing for generative AI search is still SEO, and it names AEO and GEO as terms you may see for work inside SEO.
Here is what each of those five parts answers, and what it looks like in practice:
| Part | Question it answers | Example |
| Baseline | Where does the brand appear today, and how accurately? | Mention, recommendation, and link rates across 30 to 50 tracked prompts |
| Ranked actions | What is worth doing, and in what order? | Fix, refresh, or earn coverage, ranked by impact and effort |
| Calendar blocks | When does each action ship? | Two 30-day build blocks inside a 90-day cycle |
| Owner | Who is accountable? | One named person per action |
| KPI and re-test date | How will we know it worked? | Citation rate on the affected prompts after 90 days |
An AI search optimization roadmap and an SEO roadmap share a foundation but answer separate questions. The SEO roadmap plans the work that earns rankings and clicks. The AI search roadmap adds the work that earns mentions and citations inside answers, and it measures presence before web traffic.
I keep one roadmap, not two. Crawlability, indexing, content quality, and links stay on the SEO roadmap, and the AI search layer adds what the SEO roadmap does not cover, like tracking prompts and the third-party sources AI answers cite.
| Dimension | SEO roadmap | AI search optimization roadmap |
| Main question | What do we need to earn rankings and clicks? | Where does the brand appear in AI answers, and what do we change to appear more? |
| Starting point | Crawl, rankings, and traffic data | A fixed prompt set tracked across AI platforms |
| Unit of measurement | Keywords and pages | Prompts, topics, and cited URLs |
| Sources that matter | Your own pages and links | Your pages plus the third-party sources AI answers cite |
| Success metrics | Rankings, organic clicks, conversions | Visibility, mention share, citation rate, accuracy, with referral conversions as a floor |
| Cadence | Quarterly or yearly planning | 90-day cycles with a re-test |
| Evidence base | Established practice and Google’s documentation | Few controlled tests, so every action is treated as a test |
Keep one backlog. If you already run an SEO roadmap, add the presence layer (what AI answers say about you) and the third-party source work to it.
An AI search optimization strategy decides what the brand wants to be known for and where it should win. A roadmap turns that strategy into ranked actions with owners, dates, and KPIs. A checklist lists tasks without ranking them, so the roadmap is the only one of the three that tells a team what to do first.
| Dimension | Strategy | Roadmap | Checklist |
| Question answered | What do we want to be known for, and where must we win? | What do we do first, who does it, and when? | Which tasks exist? |
| Output | Positioning, priority topics, definition of success | Ranked actions in dated blocks with owners and KPIs | An unranked list of tasks |
| Ranking | Not applicable | Evidence tier first, then impact over effort | None |
| Cadence | Yearly, revisited when a platform shifts | Re-sorted every 90 days | Used once, then drifts |
| Failure mode | Goals nobody can act on | A calendar full of tactics the evidence does not support | Everything looks equally urgent |
iPullRank describes its AI search strategic roadmap as a prioritized, year-long action plan built from audit findings. It lists what to keep, start, and stop, adds a Q1 to Q4 timeline, and includes a business impact forecast and budget recommendations. That is a strategy and a roadmap in one deliverable, which suits an executive deck.
A team building a roadmap in-house should separate the two, because the strategy changes yearly and the roadmap should change every cycle.
Aleyda Solis’s AI search optimization checklist is a useful reference here. It asks six questions: which journeys matter, where the brand appears, which sources influence those answers, which gap explains each pattern, which action fixes it and who owns it, and how progress will be measured.
Those questions tell you what to look at. They do not rank the work, schedule it, or say what to keep, so the roadmap adds an evidence filter, a dated calendar with capacity limits, and a re-test that decides what to keep.
Build the roadmap in five steps: baseline your AI presence on a fixed prompt set, diagnose each gap against one hypothesis, sort every candidate action by evidence tier and effort, sequence the actions that make the cut into 30-day blocks, and assign one owner and one KPI per action.

Steps one and two set the baseline and the diagnosis. Step three applies the evidence filter from my AI search optimization best practices guide, and steps four and five turn the sorted list into a calendar. Each 90-day cycle runs the same way.
| Step | Output | When in a 90-day cycle |
| 1. Baseline | Presence scorecard on a fixed prompt set | Days 1 to 7 (four weeks of runs if you have them) |
| 2. Diagnose | One hypothesis per gap | Days 8 to 10 |
| 3. Sort | Ranked action list | Days 11 to 13 |
| 4. Sequence | Two 30-day build blocks | Days 14 to 15 |
| 5. Assign | Owner, KPI, and re-test date per action | Day 15 |
| Build | Block 1 (days 16 to 45), block 2 (days 46 to 75) | Days 16 to 75 |
| Re-test | Same prompts, same protocol, keep or change the plan | Days 76 to 90 |
Pick 30 to 50 core prompts, tag them by journey stage, and keep experimental prompts in a separate list.
The prompt set decides everything downstream, so I spend more time on it than on any tool.
Two rules for choosing your prompt set:
I would rather track 30 prompts that matter than 300 that only look good on a dashboard.
Next, decide how often to run each prompt. Aleyda Solis’s checklist recommends running each core prompt 3 to 5 times within a 24 to 72-hour window. It also lists what to record: the platform, market, language, whether the brand appeared, was recommended, got a link, was described accurately, and which competitors and sources showed up.
I treat 3 runs as the floor, and I prefer a longer window: one run a day for four weeks. Short windows can mislead. For example, in the OpenAI campaign example below, ChatGPT’s appearance rate was 4.4% over 28 days but 7.5% over the latest two days. If you are starting from zero, one week of daily runs (days 1 to 7) is the bare minimum for a first baseline. Treat it as a rough starting point, and replace it with the four-week view as soon as you have it.
Score the baseline on five metrics:
Read them by topic and platform, not as one number, because a single blended score hides the prompt group that is actually broken. Pull AI referral traffic from Similarweb alongside it, so the traffic layer has a starting point too.
Running the same prompts by hand every cycle is tedious, and people end up changing them a little each time, so the results stop being comparable. A tracker that repeats the prompts daily removes both problems, and Similarweb’s AI Brand Visibility tracker covers ChatGPT, Google AI Mode, Gemini, and Perplexity.
For every meaningful gap in the baseline, write one primary hypothesis. I label each one with one of Aleyda Solis’s ten readiness characteristics: accessible, extractable, useful, fresh, differentiated, recognizable, consistent, corroborated, credible, or transactable.
Each gap gets exactly one label, plus the evidence, the affected segment, the owner, and the KPI you expect to move. The evidence usually comes from a citation gap analysis, which shows which sources answer the prompts where you are absent.
| Pattern in the baseline | Hypothesis | First check |
| Brand absent from comparison prompts, competitors cited through review sites | Corroborated | Which third-party domains are cited for those prompts, and is the brand on them? |
| Pricing page never cited, key facts load through JavaScript | Accessible | Does the pricing page show its key facts in the HTML? |
| Brand mentioned but described with an old product name | Consistent | Which cited sources still carry the old name? |
| Brand cited on definitions, missing on how-to prompts | Useful | Does any page answer the how-to question in its title and in a paragraph that matches it? |
Rank the gaps before you design fixes. Aleyda Solis scores each gap with severity times importance, divided by effort. I use her formula for gaps. For actions, I use impact over effort after an evidence check, because a high-scoring action means nothing if there is no proof the tactic works.
Sorting has two parts. First, give each candidate action an evidence tier: Do, Only if, Good to have, or Skip. Second, score the actions that stay on impact and effort from 1 to 3 and divide impact by effort to get a priority number.
The tiers come from independent tests, not from how plausible a tactic sounds. The Toronto study (Chen and Koudas, University of Toronto, arXiv preprint, October 2026) compared pages within the same website, which strips out the effect of site popularity. Within a site, pages whose title and best paragraph matched the questions people ask earned 14.1% and 15.5% more citations per standard deviation of match.
FAQ blocks, structured data, and summary boxes looked effective only across websites. The study covers English-language commercial questions in two markets: home internet providers and software vendors for architecture and construction firms. The authors describe the results as associations from a preprint, so I treat the tiers as the best current evidence, not as proof.
| Tier | Actions | What the evidence says |
| Do | Match the questions people ask in the title and best paragraph, earn coverage on the third-party sites AI answers cite, and keep pages crawlable and indexed, with key facts in HTML | Title and paragraph match held up within sites in the Toronto data, though for ChatGPT only the paragraph effect held and titles helped Gemini and Perplexity. The JavaScript effect showed only for Gemini. Google lists crawlability and indexing as the entry requirement |
| Only if | Sourced statistics, answer-first openers, visible dates and refreshes, and author and summary boxes | Correlational or contested, so do them when they cost almost nothing |
| Good to have | FAQ blocks, schema markup, heading and list structure, llms.txt, micro-chunking | No within-site lift in the Toronto data, and Google does not require them for generative AI search |
| Skip | Buying, trading, or faking mentions | Google says seeking inauthentic mentions is less helpful than it seems |
A fifth label, Parked, is for topics with no clear next step. They go on a monitoring list and get no work this cycle.
The same study also shows why Do comes before Good to have. When the researchers replayed the home internet questions through ChatGPT’s search tool, retrieval, meaning whether a page gets pulled up at all, explained 32% of why one page on a site got cited and another did not. The page properties they measured, like structure and markup, explained 2.8%. In the construction software market, the figures were 30% and 10%, a gap the authors could not call significant.
My take on this: whether the AI finds your page decides most of whether you get cited. How the page is built decides very little.
Impact score:
Effort score:
One rule overrides the ranking: a Do action with effort 3 starts in block 1 even when its priority number is low, because third-party coverage has long lead times.
Several good-to-have items are still widely recommended. In the SEOFOMO 2025 survey, schema and structured data were the most frequently mentioned AI search work respondents were doing or planning, alongside retrieval-focused content restructuring, such as chunking. The controlled within-site data does not show a citation lift for them.
Google says neither structured data nor llms.txt is required for generative AI search, while still recommending structured data for rich results and calling llms.txt files harmless when other services use them. They also cost little, which is why I do not tell teams to remove them.
As a technical SEO and a schema lover, I wish its value for AI visibility were proven. It is not yet.
Treat them as good to have. Do them when they are cheap, when they help readers or other systems, or when your CMS already provides them. Do not schedule them as roadmap priorities, do not promise a citation lift from them, and do not let them displace a Do action in the first 90 days. An llms.txt file is good to have only if a system you care about reads it.
Order the work inside a cycle by priority number. ‘Do’ actions first, then ‘Only if’ actions at effort 1. A cycle has 15 days of planning (steps 1 to 5), two 30-day build blocks, and 15 days of re-test. From the second cycle on, planning gets shorter: you keep the prompt set and the open gaps, and the new baseline is a fresh 28-day pull that ends where the re-test ended.

Stack four cycles for a year-long view, the Q1 to Q4 format executives expect, but commit only to the next cycle. What each cycle contains depends on the re-test before it, so the table below is a default, not a forecast.
| Cycle | Default focus | Carries over |
| 1 (days 1 to 90) | Baseline, access fixes, and the first tests of your top hypotheses | Prompt set, roadmap template, and the actions that kept their evidence |
| 2 (days 91 to 180) | Expand what the re-test kept, drop what it stopped, and add the next ranked actions | Prompt set, open gaps, and a new 28-day baseline that ends with the re-test |
| 3 (days 181 to 270) | Extend to more topics, platforms, or markets, and start the Only if actions that were waiting | Comparison pages that stay unchanged, and your past decisions |
| 4 (days 271 to 360) | Rebuild the prompt set and baseline, then review strategy against a year of results | Everything worth keeping into the next year |
No reliable benchmark exists for how long AI visibility gains take, and the 90 days is a testing convention, not a promise. Third-party coverage starts in block 1 and runs across cycles with its own KPI. Each cycle ends with one of four decisions per action: keep, expand, revise, or stop.
An action without an owner is a wish. Give every action one accountable person, one KPI tied to the prompts it should affect, and one re-test date.
This article does not cover the ownership model. Who does what and how budget splits across teams is in who owns AI visibility, so the roadmap only assumes one named owner per action.
Track each action with these fields: action, gap and hypothesis, evidence tier, impact, effort, priority, owner, KPI, block, re-test date, and decision. The roadmap template below has them ready, and calculates the priority for you.
Claude can sort, score, and draft if it can read your data. The Similarweb MCP connects Claude to visibility, citation, traffic, and keyword data, so you can run steps 1 and 2 from a prompt instead of a spreadsheet. The OpenAI example later in this guide came from exactly these pulls: campaign visibility, prompt-level visibility, and citations by domain and URL.
You need a Similarweb plan with API or MCP access (Business, Enterprise, or the standalone API package) and your own Similarweb login. You do not need an API key.
If Claude does not return Similarweb data, open the connector’s Tool permissions and make sure no tool is set to Blocked. Set them to Always allow, or to Needs approval if you want to confirm each use. Each query uses data credits, the same way the Similarweb API does, and you can track them under Account Settings, then Data Credits Management.
Once it is connected, this is what Claude pulls at each step:
| Step | What Claude pulls | Similarweb MCP data |
| 1. Baseline | Brand visibility and mention share, prompt-level visibility, AI referrals by platform, keyword demand | Campaign visibility and prompt tools, AI traffic overview, keywords overview |
| 2. Diagnose | Cited URLs and domains, citation gaps by prompt | Campaign citation tools, domain citation data, citation gap metric |
| 3 to 5. Sort, sequence, assign | Nothing new: Claude applies your rules to the exported gaps | None needed |
| Re-test | The same pulls, plus AI referral traffic by landing page next to cited URLs | Same tools, AI traffic landing-page data |
The campaign pulls need an AI Brand Visibility campaign configured in your Similarweb account. The prompts that run them and fill the roadmap template are in the template section below.
Similarweb’s AI Optimization Recommendations is the action layer of its AI search suite. It surfaces three kinds of recommendations: strategic topic gaps, specific edits for existing pages, and ready-made briefs for new content.

A board then moves each item from Suggested to To-Do to Done, ranked by impact, and you can run fresh recommendations as your visibility changes.
Use it as a source of candidate actions in step 3, not as a replacement for the filter. Every recommendation still gets an evidence tier, an owner, and a re-test date, and the recommendations stay in the platform, so bring the ranked list into Claude as input.
I built this method into a Google Sheet that scores, sorts, and schedules for you. Make a copy of the blank template to start with your own prompts, or open the filled OpenAI example to see it with the data from the example below.
You enter the inputs, and the sheet calculates the rest. Priority is impact divided by effort. ‘Do’ actions go first, then ‘Only if’ actions with an effort score of 1, and ‘Good to have’ and ‘Skip’ actions move to a backlog.
Dates come from your cycle start date: 15 days of planning, two 30-day build blocks, and 15 days of re-test. At the re-test, a formula suggests keeping, expanding, revising, or stopping each action, and flags it for review when pages you did not change also gained. The Overview tab shows the cycle day, the current phase, the actions by evidence tier, and each block’s load against your capacity. The Scorecard compares presence before and after the re-test, so insights come from the sheet, not a manual report.

Here is what each tab does:
| Tab | What you do there |
| Start here | Read the steps and the color key |
| Overview | Check capacity per block, block loads, and the data checks |
| Settings | Set the cycle start date, capacity, minimum runs per prompt, and the lists behind the dropdowns |
| Baseline | Add one row per prompt, with counts for appearance, recommendation, links, and mentions without negative sentiment |
| Gaps | Score each gap on severity, importance, and effort, and write one hypothesis for each |
| Actions | Set the evidence tier, impact, effort, owner, and status for each action |
| Retest | Record the KPI at re-test and the control pages, and read the suggested decision |
| Scorecard | Read presence by topic and platform, before and after |
| Timeline | See the dated blocks for the cycle |
The count columns are built for a data pull. With the Similarweb MCP connected, Claude can read the tracker and fill the baseline, and at the re-test it fills the light-blue re-test columns the same way. Everything else recalculates. You still decide the inputs that need judgment: severity, importance, effort, owners, and what ships.
Two of the Step 1 metrics need a manual check in the template: accuracy (the sheet shows the share of mentions without negative sentiment instead) and comparative win rate (track it by hand on your comparison prompts).
Copy the AI Search Optimization template
Use these two prompts in Claude with the Similarweb MCP and the Google Sheets connector turned on. Add your sheet link and your campaign ID. Claude uses the prompts already in column B, or pulls the campaign’s prompts if column B is empty, and fills every column the tracker can fill. Settings, Gaps, and Actions stay yours, because they are judgment calls.
Fill in the Baseline tab of my AI Search Optimization Roadmap sheet with data from Similarweb.
Sheet: [paste the Google Sheets link]
Campaign ID: [paste the campaign ID]
Tools: use the Similarweb MCP and the Google Drive and Google Sheets connectors. If the sheet is the shared template and not my own copy, first copy it into my Drive as “AI Search Optimization Roadmap: [campaign domain] cycle 1” and work only in the copy. If Similarweb says the campaign is unknown for my account, stop and tell me.
Step 1: Read the campaign. Call get-gen-ai-campaigns and find my campaign ID. Note its domain, its llm_providers (these are my platforms), and its topics.
Step 2: Set the window. Take meta.last_updated from any Similarweb response. end_date is the day before it. start_date is 27 days before end_date, so the window has 28 daily runs.
Step 3: Get the prompts. Look at Baseline column B from row 6. If it already holds prompts, use those rows and match each prompt to the campaign’s prompts by its text. If column B is empty, call get-gen-ai-campaign-analysis-prompts-aggregated for each platform with the metrics visibility, mentions_count, citation_count, and avg_sentiment_score, sorted by visibility, highest first, and write the prompts into column B. The sheet holds 50 rows (rows 6 to 55), one row per prompt per platform. If there are more than 50, keep the prompts with the highest visibility and tell me how many you left out. Either way, pull those same four metrics for every prompt in the sheet. If a prompt has no match in the campaign, leave the rest of its row empty.
Step 4: Fill these columns from row 6. Keep anything already typed in B, D, E, or F. Write numbers as numbers and text as text. Never write formulas.
B Prompt: prompt_text (only when B was empty)
C Topic: topic
D Journey stage: Awareness for how, what, and why questions. Consideration when the answer is a shortlist to choose from (best, top, or leading tools, platforms, vendors, companies, institutions, frameworks, techniques, or strategies, or comparisons). Decision for cost, price, funding, investment, or buying questions. Retention for questions about getting more from a product the person already uses.
E Prompt type: Core
F Platform: chatgpt = ChatGPT, google_ai_mode = Google AI Mode, perplexity = Perplexity, gemini = Gemini. Use the exact dropdown name for any other platform, or Other.
G Runs: the number of days in the window. If visibility is above 0, use mentions_count divided by visibility, rounded, instead.
H Runs brand appeared: mentions_count
I Runs brand recommended (positive sentiment): avg_sentiment_score times mentions_count, rounded
J Runs with a link to the brand: citation_count, but never more than G
K Mentions without negative sentiment: H minus the negative mentions. To find those, call get-gen-ai-campaign-analysis-prompts with sentiments set to negative and count the rows per prompt. If it returns “Data not found”, there are no negative mentions, so K equals H.
L Competitors named: call get-gen-ai-campaign-analysis-prompts-aggregated again with the metric brand_visibility, 10 prompts at a time. List up to 3 competitor brands with visibility above 0, highest first, separated by commas. If there are none, write: None of the tracked competitors
M Top sources cited: for each topic, call post-citations-domains-agg with the topics filter set to that topic, sorted by citation_count, limit 3. Write the 3 domains separated by commas on every row of that topic.
Step 5: Fill the topic table. On the Scorecard tab, type each distinct topic from column C into cells A5 to A14, one topic per cell. The rates by topic are calculated from them. Do not write to columns A, N to R, or S to AB. They are formulas or re-test cells. Do not touch any other tab except the Scorecard topic cells.
Step 6: Check. Read back the Baseline column R and the Checks list on the Overview tab. Tell me every row or check that does not say OK, and why. Finish with a short report: platforms and window used, rows filled, rows left empty, prompts left out, and total data credits used (add up data_credits_charged from the responses). If Similarweb does not return a value, leave the cell empty and list it. Do not estimate or invent numbers.
Run the re-test on my AI Search Optimization Roadmap sheet.
Sheet: [paste my copy’s link]
Campaign ID: [paste the campaign ID]
Use the Similarweb MCP and the Google Sheets connector.
Step 1: Read Settings. Take “Re-test starts” and “Re-test ends” as the window. If the end date is after the latest data, use the day before meta.last_updated.
Step 2: For every prompt row in Baseline (column B, rows 6 down), pull the same metrics for the same prompt and platform over the re-test window, exactly as in the baseline run: visibility, mentions_count, citation_count, avg_sentiment_score, and negative mentions.
Step 3: Fill only these Baseline columns, in the same row as the prompt: S Re-test runs, T Re-test runs brand appeared, U Re-test runs recommended (positive sentiment), V Re-test runs with a link to the brand, W Re-test mentions without negative sentiment. Use the same rules as the baseline run for runs, recommended, links and negative mentions. Do not touch columns G to M or any formulas.
Step 4: On the Retest tab, fill column J (KPI at re-test) only for actions whose KPI is an appearance, recommendation, or link rate for a topic. Calculate it from Baseline columns S to V. Fill column H (gain on 2+ platforms or topics) with Yes if two or more topics or platforms rose by at least the “Minimum change to count as moved” on the Settings tab, otherwise, No. Leave column F (control pages) empty. List every action where you left J or F empty so I can fill it from page-level data.
Step 5: Read back the Scorecard “Presence at re-test” section and the suggested decisions on the Retest tab. Report the change in each rate and the decision for each action, and flag anything that looks wrong. Do not invent numbers. Do not edit any other tab.
For the next cycle, make a copy of the sheet and run the first prompt again on the copy.
To build a roadmap for a brand like OpenAI, start with tracked ChatGPT answers, read the baseline by topic, treat each topic’s winning sources as the diagnosis, and include only evidence-backed actions in the first cycle. Here is the full process on Similarweb AI Brand Visibility data, with my reasoning at each step. Treat it as an exercise, not OpenAI’s plan.
| Baseline measure | Result |
| Mentions of OpenAI on ChatGPT | 124, visibility 2% across all 180 prompts, ninth among tracked brands, 1 point down vs. the prior period |
| Brands mentioned more often | OECD 240, NIST 239, Google 212, McKinsey 186, Scikit-learn 175, IBM 159, Microsoft 135, PyTorch 128 |
| Prompts that mention OpenAI at all | 21 of the 100 prompts returned, and the other 79 never do |
| Visibility by topic on ChatGPT (average across returned prompts) | Artificial Intelligence 16.6%, AI Research 7.5%, Natural Language Processing 2.8%, Machine Learning 1.5%, Digital Transformation 0%, Technology Innovation 0% |
| Appearance rate by platform | ChatGPT 4.4% over 28 days on these 100 prompts (124 of 2,799 runs). Over the latest two days, on the same 100 prompts: ChatGPT 7.5% (15 of 200 runs), Gemini 5.0% (10 of 200 runs), and Google AI Mode 4.0% (4 of 100 runs). The ranges overlap, so I read the three as level for now. |
| Own-domain citations | openai.com 211 (4.2% of responses), developers.openai.com 48, help.openai.com 48: about 6% in total |
| Most-cited domains | sciencedirect.com 32.6% of responses, ibm.com 28.2%, oecd.org 26.7%, mckinsey.com 26.2%, doi.org 24.8%, nist.gov 20.3% |
| Most-cited openai.com page | The State of Enterprise AI 2025 report: 17 citations, plus 9 on a tracking-parameter variant and 4 on a second path |
Most people look at the 2% overall visibility first, but it is the least useful number in that table. What matters is where the 21 prompts that do mention OpenAI sit. They are the platform comparison prompts (“What are the leading AI platforms for enterprise solutions?”, where OpenAI appears in every tracked response) and the research landscape prompts (“What are the top institutions leading AI research?”, 96%).
Those prompts name the category OpenAI helped define, and a brand wins them by answering the category question. It loses the educational prompts because reference material answers those, not brands.
Before diagnosing anything, I audit the prompt set. Thirty-eight of the returned prompts sit in Digital Transformation and Technology Innovation, and OpenAI appears in none. At first glance, that looks like two big gaps.
I read it another way: these are generic topic questions with no clear business journey and no credible next step. I would park both topics as monitoring-only for cycle 1 and say so to leadership. Treating every zero as a gap is how a roadmap fills with work that cannot pay off.
The citation data gives you clues about why the brand is missing from a topic. For each topic, I look at which sites ChatGPT cites instead and what kind of page they have in common (my AI citation analysis guide shows how to pull this data step by step).
The numbers in the example are ChatGPT citations by domain for each topic, from Sep 27 to Oct 24. This is what it looks like in the template:

After years of technical SEO, a few things in this data jump out at me:
Each action gets an evidence tier, then an impact score and an effort score, and the sheet turns those into a priority number and a suggested block. This is the sorted list for the OpenAI example, as it looks in the template:

In the Toronto data, the best-paragraph match held for ChatGPT, and title match helped Gemini, and both platforms are now in this campaign. So the first action covers both: rewrite the paragraph that answers each question and fix titles that don’t match.
I put the docs action in block 1 even though its priority number is lower than the quick fixes, because it tests the main hypothesis of the cycle: that the ML gap is a documentation gap. If it is wrong, I want to know by day 76, not in the third quarter.
The institutional citations action starts at the same time because it has the longest lead time and the lowest control.
The FAQ markup and llms.txt rows are not criticism of anyone who already has them. They simply do not make the cut in a 90-day cycle where four Do actions are waiting.
The actions that made the cut go into the two 30-day blocks, and each one gets an owner, a KPI, and a re-test date. This is the plan for the OpenAI example:
| Block | Work | Owner (role) | KPI and baseline | Re-test |
| Block 1 (days 16 to 45) | Consolidate report URLs | Web engineering lead | Citations on the canonical URL (baseline 17) | Day 76 |
| Block 1 | Rewrite the answering paragraph on ML pages | Research editorial lead | Citations to the rewritten pages | Day 76 |
| Blocks 1 and 2 | Concept-level docs pages | Developer documentation lead | Visibility on the ML prompt group (baseline 1.5%) and citations to developers.openai.com | Day 76 |
| Block 2 (days 46 to 75) | Refresh the report page | Content lead | Citations to the refreshed page | Day 76 |
| Blocks 1 and 2, then every cycle | Institutional and journal citations | Communications lead | New cited URLs from the named institutions and visibility on AI Research prompts (baseline 7.5%) | Day 76, then every cycle |
I assign roles instead of names because the exercise has no org chart, but the rule is the same as in any real engagement: one owner per action, and nobody owns three actions that depend on each other. The re-test follows the baseline protocol: the same prompts, run the same way, with changed pages compared against unchanged control pages.
My decision rules for day 76 are simple. Keep an action if its pages gained citations and the control pages did not. Expand it if the gain showed on two or more platforms or topics.
Revise it if the pages gained, but the prompt group did not move, which usually means the hypothesis was wrong. Stop it if neither moved.
I would not promise leadership a visibility number for day 90. I would promise that by day 76 we will know whether the docs-layer hypothesis holds, and that is worth more than a forecast.
The roadmap changes with the business model: small businesses focus on page access and local third-party sources, B2B software companies on comparison, pricing, and integration pages, ecommerce brands on product data accuracy, and enterprises on cross-team ownership and a quarterly review.
| Company type | First 30 days | First 90 days | Main risk |
| Small or local business | Confirm key pages are crawlable and indexed, with key facts in HTML, and rewrite the title and the answering paragraph on the five main service pages to match customer questions | Earn coverage on the review and directory sources AI answers cite for local prompts, and refresh dated pages | Spreading effort across every platform before the baseline shows which ones matter |
| B2B software | Fix pricing and integration pages so AI can access them, and rewrite comparison page titles to match buyer questions | Publish comparisons with disclosed criteria and earn coverage on review and publisher sources | Alternatives pages that always pick the publisher as the winner |
| Ecommerce | Check that price, stock, and product facts agree across visible pages, feeds, and structured data | Rewrite category and buying-guide pages around buyer questions, and track cited pages and landing pages separately | Machine-readable data that disagrees with the page |
| Enterprise or multi-brand | Name one accountable owner per action and one prompt set per product line | Run the first cycle on one product line, then expand | No single owner per action |
Whatever the company type, I run every candidate page through one last filter from Aleyda Solis’s prioritization framework: what does the reader still need after the AI answer? If the answer is nothing, the page goes to the bottom of the list, no matter how easy it is to write.
Measure the roadmap on three layers: AI presence (visibility, mention share, citation rate, accuracy), readiness (fixes shipped and their status), and business impact (AI referral conversions and branded search lift). Label each number as observed, proxy, or modeled, and compare changed pages with unchanged pages after 90 days.
| Layer | KPI | Source | Confidence label |
| Presence | Brand visibility, mention share, linked citation rate, accuracy | AI visibility tracker | Observed |
| Readiness | Fixes shipped, fetch and render success on priority pages, prompt-set coverage | Roadmap template, crawl checks | Observed |
| Impact | AI referral visits and conversions, plus branded search trend | Analytics, Search Console | Observed floor, proxy for the rest |
I use Aleyda Solis’s three layers and her habit of labeling every number as observed, proxy, or modeled. Observed means measured directly, proxy means a stand-in for something you cannot measure, and modeled means estimated. The changed-versus-unchanged comparison is my addition, and it is the part that points to cause.
AI search isn’t as big as the hype suggests, but it is worth more than your click numbers show. Similarweb’s 2026 report on the downstream impact of AI visibility found that, across the industries studied, people who received a brand recommendation from ChatGPT were 2.5 times more likely to visit that brand than a direct competitor within seven days. Only 8.8% of those visits arrived through a channel analytics labels as AI. The rest showed up as search, direct, and other referrals, a pattern I call funnel fragmentation.
That is why this roadmap measures presence (what AI says about you) and impact (what that earns you) separately instead of judging everything by clicks.
Do not judge the roadmap on referral traffic alone, because referral reports miss most of the effect. Report AI referral conversions as a measurable floor and use the presence layer as the leading signal. Report the three layers side by side, because they measure separate populations and adding them into one score hides which one moved.
Track cited pages and landing pages as two separate lists. In Similarweb’s 2026 Generative AI Landscape, 65% of ChatGPT-cited URLs sat two or three folders deep, with 41.7% at depth two, while 58.8% of AI referral traffic landed on homepages (US desktop, May 2026).

The report also shows homepage landings rising from about 25% to nearly 60% after ChatGPT’s May 7 search update, so read that figure as a post-update snapshot.

The practical rule: strengthen the deeper pages that earn citations, and make sure the pages that receive the clicks offer a clear next step.
At each re-test, report the result with its confidence label, and put the full KPI set in front of leadership using the GEO KPIs guide.
Before any KPI moves budget, test it. In my dark funnel metrics article, I use four checks: does the metric lead the outcome (lag), does the pattern repeat (echo), does it drop when you stop the activity (absence), and is the denominator stable. In this roadmap, the changed-versus-unchanged comparison is the absence check, and it is the only one of the four that points to cause.
I have not found a credible public benchmark for share of mentions, citation share, or branded search lift, so set no numeric targets in cycle 1 and build a baseline over two to three cycles first.
A good roadmap is as much about what you leave out as what you put in. Every team has a long list of tactics that sound good, and few have proof behind them. Sort that list by evidence and effort before anyone writes a ticket, and a wrong bet costs you one cycle, not a quarter.
Start this week. Copy the roadmap template and fill in your baseline, by hand, from your own tracker, or with Claude and the Similarweb MCP. At the re-test, each action gets one answer: keep, expand, revise, or stop. If you don’t want to track the prompts by hand, Similarweb’s AI Prompt Tracker runs them every day, so your baseline comes from repeated runs, not one lucky answer.
The AI Search Intelligence suite covers the whole funnel in one place: what AI says about you and your competitors, which sources it cites, and the visits those answers send you, by platform and landing page. All of it comes from Similarweb’s own data, so you can check your presence and your traffic against the same source. Then you can answer the question that matters: did the work pay off?
An AI SEO roadmap, sometimes called a GEO or AEO roadmap, is a sequenced plan that ranks AI search actions by evidence and effort, assigns each one an owner and a KPI, and schedules them in 30-day blocks. It sits on top of your SEO roadmap and adds a presence baseline and third-party source work, so the team always knows what to do first.
No. A strategy decides what the brand wants to be known for and where it must win, and it changes about once a year. A roadmap ranks the actions that serve that strategy, with owners, dates, and KPIs, and it is re-sorted every 90 days. Some vendors sell both as one year-long deliverable, which works for an executive deck.
Plan a 12-month view, but commit to one 90-day cycle at a time. Each cycle has 15 days of planning, two 30-day build blocks, and 15 days of re-test. No reliable benchmark exists for how fast AI visibility improves, so 90 days works as a testing window. Re-sort the list after every re-test instead of locking the year.
No, because a cycle is a testing window, not a deadline for results. Fixes that help AI find your pages, and page rewrites, can show up in a re-test within one cycle. Third-party coverage takes longer, so it starts in block 1 and runs across cycles, with its own KPI, citation share by source type, reviewed at every re-test.
Yes. Claude can sort, score, and draft the roadmap if it can read your data. With the Similarweb MCP connected, it can pull visibility, citation, and traffic data directly, and two prompts in this guide fill the roadmap template for you. Claude sorts and drafts, and you decide what ships, so check its output against your own data first.
Yes. The roadmap template in this guide is a Google Sheet with tabs for the baseline, gaps, actions, re-test, scorecard, and timeline. It calculates the priority, schedules the actions in 30-day blocks, and suggests a keep, expand, revise, or stop decision at the re-test. A filled example with OpenAI data is included.
No. An SEO roadmap plans the work that earns rankings and clicks, starting with crawl, ranking, and traffic data. An AI search optimization roadmap adds work that earns mentions and citations in AI answers, starting with a fixed prompt set and a presence baseline. The two share crawlability, content, and links.
Director of SEO & AI Search at Similarweb
Limor brings 20 years of expertise in SEO and AI Search. She thrives on solving complex problems, creating scalable strategies, and building amazing dashboards.
Give it a try or talk to our insights team — don’t worry, it’s free!