PRACTICAL GUIDE

Keyword Research for AI Platforms

While we’re building on SEO fundamentals, there is new processes, tooling and strategies required to maximise visibility within AI search.

“Good GEO is Good SEO”

Let’s start with the elephant in the room and borrow a line from Google. The term GEO (Generative Engine Optimisation) has been gaining traction as if it represents an entirely new discipline, but the reality is more nuanced.

svg+xml;charset=utf

GEO unmasked – underneath, it’s still SEO

When you look carefully at how AI search surfaces actually work, they lean very heavily on traditional search engines that have already indexed, ranked, and organised the web. The implication is significant:

What you do for AI search is very similar to what you have been doing in SEO for years. How you do it is not necessarily the same.

The evidence showed up clearly in citation tracking data from PromptWatch, which tracked how often various sites were cited in ChatGPT responses.

svg+xml;charset=utf

PromptWatch data: Reddit ChatGPT citations crash from ~13% to ~2%

Reddit’s citation rate, running as high as 15%, crashed almost overnight around 10th September. The reason? Google removed the ability to request 100 results at once (num=100) from its search API on that date.

ChatGPT uses traditional search engines (or services built on top of it) to retrieve information for grounded generation. When the ability to bulk-pull 100 results at once disappeared from Google, Reddit citations collapsed with them, which made sense after Reddit’s meteoric rise in Google visibility. AI search surfaces are not independent information retrieval systems – they are, in large part, wrappers around traditional search.

The Problems With Traditional Keyword Research

Traditional keyword lists contain the short phrases people type into a search bar. They are useful for understanding intent clusters, but they don’t reflect how people interact with AI tools. There are two specific problems:

Problem 1: Personalisation

AI tools like ChatGPT maintain memory and context across a conversation. If a user tells ChatGPT they are vegan and later asks for running shoe recommendations, the model will suggest cruelty-free, leather-free options. Your ‘running shoes’ keyword doesn’t capture this. The same query returns different results for different users depending on the context they have built up.

Problem 2: Ongoing Conversations

Traditional search tends to be one-shot: type a query, get results, start again. AI search is conversational and cumulative. Users ask follow-up questions, drill down, and build on prior context. A keyword list gives you no insight into where a conversation is heading.

How AI-Powered Search Actually Works

In traditional SEO, the optimisation effort sits between the user’s intent and Google. You work out what someone is going to type and try to rank for it.

In AI search, there is a new layer in the middle. The user has a conversation with ChatGPT (or Gemini, AI Mode, etc.). That AI layer acts as a universal intent decoder – it translates the messy, personalised, multi-turn conversation into a set of precise, traditional web search queries it then fires at Google.

svg+xml;charset=utf

AI-powered searches: conversations are decoded into traditional search queries

The optimisation effort has moved. You are no longer just optimising for what a human might type. You are optimising for what the AI agent will search for on their behalf. This is why this process was created – to reverse-engineer that translation step.

The Full Process

svg+xml;charset=utf

Full process flow: from traditional keywords to things you need to rank for

Step 1: Traditional Keywords

svg+xml;charset=utf

Starting point: your existing keyword list

You still start with your traditional keyword list. Despite all the caveats above, keywords remain your entry point because they represent the topics your brand, product, or content is relevant to. Think of them as seeds rather than endpoints.

Step 2: Personalisation Context

The goal of this step is to transform flat keywords into the kinds of questions a real person, in a specific situation, would actually ask an AI. The mechanism is a structured prompt sent to the ChatGPT or Gemini API that combines a persona description with your keywords.

svg+xml;charset=utf

LLM prompt structure: If I was [Persona] + Trying to find [keywords] + What might I ask?

For example, if you are working on running shoes and your persona is ‘a middle-aged, health-conscious, vegan beginner runner in the UK,’ the model returns questions like:

  • “What are the best running shoes for a beginner in the UK?”
  • “Which vegan running shoes are good for middle-aged men just starting to run?”
  • “What should I look for when choosing my first pair of running shoes as a beginner?”
  • “Where can I buy vegan running shoes online in the UK?”
  • “Can you recommend online UK stores that sell beginner-friendly running shoes with easy returns?”

This is not keyword research in the traditional sense. You are finding how specific people frame conversations – closely tied to how those topics appear in the LLM’s training data (forums, Reddit threads, community Q&As).

You can run this at scale using the API – feed in multiple personas and multiple keywords to generate a large enriched set of questions automatically.

Step 3: Conversation Mapping

AI conversations are multi-turn. Once you have persona-enriched questions, you need to model where those conversations go next – trying to predict the follow-up questions that naturally arise.

svg+xml;charset=utf

Conversation mapping: where is this conversation going?

The recommended data for this is People Also Ask (PAA) data, which captures the closest intent proximity around any query. The AlsoAsked API makes this easy to access in bulk and their API documentation can generate the code for you (no vibe coding required).

For the running shoes topic, if someone asks about cost, the PAA data reveals they will also ask:

  • What are good brands for running shoes?
  • Why are running shoes so expensive in the UK?
  • How many minutes will more expensive trainers take off my 5K time?
  • What is the fastest shoe for 5K?
  • How long do Nike Vaporfly last?

For each generated prompt from ChatGPT or Gemini, you can pass this to the AlsoAsked API to get related questions.

Step 4: Candidate Prompts

At this point you have your traditional keywords, persona-enriched questions, and conversation follow-ups. These combine into a list of candidate prompts – the questions real people, in real contexts, are likely to be asking AI tools.

svg+xml;charset=utf

Candidate prompts spreadsheet – 18 example running shoe questions

A typical workflow might start with 1,000 traditional keywords and end up with 10,000 candidate prompts after enrichment. The next step filters them significantly.

Step 5: Grounding Prediction

This is arguably the most important step. Not every prompt will cause an AI tool to do a web search. If the AI can answer from its own training data (an ‘in-model’ answer), you have very little ability to influence it in the short term.

svg+xml;charset=utf

Grounding decision: in-model vs web search, and what each means for influence

When a query is grounded, the AI performs a live web search to verify or retrieve current information. The distinction matters enormously:

  • Grounded queries → Web search happens → You can influence the result through traditional SEO
  • In-model queries → No web search → Influence requires affecting the training data itself (very slow, very difficult)

The Solved vs QDF Framework

The threshold for grounding mirrors Google’s old concept of Query Deserves Freshness (QDF):

  • “What do red blood cells do?” – Solved. The answer does not change. Almost certainly answered in-model (0% grounding probability).
  • “What happened in the news today?” – Needs current data. Almost certainly grounded (100% grounding probability).

How to Check Grounding Probability

Option 1: Dan Petrovic’s Online Grounding Classifiers

svg+xml;charset=utf

grounding.dejan.ai – bulk classify queries for ChatGPT grounding probability

Dan Petrovic has built and published a free grounding prediction tool specifically for OpenAI queries, as well as one for Gemini. Paste in a list of queries and get back a probability score for each one.

Option 2: Hugging Face Self-Hosted Model

For processing at scale, the trained model is available on HuggingFace. Download and run it locally to classify thousands of queries quickly without rate limits.This can also save you the cost of using the Gemini API for queries that do not trigger grounding.

svg+xml;charset=utf

After grounding prediction: filtered list of prompts that require RAG

Step 6: Grounding Requests - The Actual Search Queries

Now you know which prompts trigger web searches. The final technical step is to find out exactly what search queries are being fired – these become your actual SEO targets.

There are options to do this programmatically with the OpenAI Responses API and the Gemini Grounding API at very low cost.

While OpenAI and Gemini list $10 and $35 for for 1,000 calls respectively, the reality is more nuanced than that.

For OpenAI, the $10/1k is just the tool call, the content the model pulls back is billed as input tokens at the model’s rate, so real-world cost is meaningfully higher than the headline number. One developer reported ~$0.01/search end-to-end on chat completions, and noted that 58 calls produced 119 searches because the model can fan out.

For Gemini, one grounded prompt = one charge even if the model issues multiple Google queries behind the scenes, so the per-search effective rate is often lower than $35/1k.

In both cases, you will get an array of web searches that the model performs for the given prompt.

svg+xml;charset=utf

Gemini API JSON response showing webSearchQueries: [“UEFA Euro 2024 winner”, “who won euro 2024”]

→ https://ai.google.dev/gemini-api/docs/google-search

Feed your entire list of grounded prompts through the APIs you are interested in and collect the actual traditional search queries each prompt triggers – at scale.

svg+xml;charset=utf

“Who won the euro 2024?” triggers “Uefa euro 2024 winner” and “Who won euro 2024?” – those are what you need to rank for

Step 7: Gap Analysis and SEO Action

You now have a list of traditional search queries – the exact things you need to rank for in Google to appear in AI-generated answers. From here, run a standard gap analysis against your existing content:

  • Which of these queries do you have content for?
  • Which do you already rank for?
  • Which have no coverage at all?

Beyond Your Own Website

One important shift from traditional SEO: LLM visibility is a multi-site focus. AI tools don’t just look at the top-ranking page – they scan the top 10, 20, or even 50 results and synthesise across them. Getting your content mentioned on high-authority third-party sites matters just as much as ranking yourself.

 

For running shoes, this means getting products reviewed on dedicated review sites, being included in roundup articles on authority domains, and earning mentions in relevant community content. A trusted review site ranking in position 3 is a legitimate path to AI visibility even if your own site never cracks page one.

Parting Thoughts

  • Traditional search is not going away. AI surfaces rely on existing search indexes. GPT-5’s shift toward more grounding means traditional SEO influence is increasing, not decreasing.
  • LLMs are becoming orchestrators, not oracles. They decide which tool to use – write code, do a web search, query a database. Grounding is becoming the default, not the exception.

Personalisation has limits. Persona enrichment gives approximations, not certainties. True user-level personalisation cannot be fully modelled externally. But this approach gets you significantly closer than working from keyword lists alone.

Try it on QueryFan.com

The entire process described above is being built into a free tool at QueryFan.com. Paste in your keywords, add your API keys, define your personas, and it will:

  • Generate enriched conversation prompts
  • Expand them with follow-up questions
  • Classify which ones require grounding
  • Return a table of prompts and the traditional search queries you need to rank for

→ https://queryfan.com