Documentation

Analyze results

Semantic maps

Scatter maps that plot prompts, fan-out queries and cited pages by meaning, so you can see which topics engines connect, who owns each cluster, and where your pages sit.

Definition

Semantic map

A 2D scatter where every point is a piece of text (a prompt, a sub-query, a page title or heading) and points that mean similar things sit close together.
Where to find it
Dashboard → Domain semantic map, Prompt detail → Semantic scatter map, ChatGPT Ads → Semantic map

Why a map instead of a table#

Tables tell you which pages are cited. A map shows why: whether the cited pages sit close to the question, whether your page is in the same neighbourhood or off to one side, and which groups of questions nobody on your site covers. Distance on the map is distance in meaning, so the question “is my page about the same thing as the pages that win?” becomes something you can see.

How a map is built#

  1. Collect the text. The prompt, its fan-out queries, and the cited pages broken into elements (title, H1 to H6 headings and paragraphs).
  2. Embed it. Each piece of text becomes a vector. Page vectors are cached per URL and shared across maps, and unchanged text is not re-embedded.
  3. Project it. The vectors are projected to two dimensions (UMAP), so similar texts land near each other.
  4. Cluster it. Points are grouped with HDBSCAN, capped at 10 clusters, and each cluster gets a short topic label.

Maps rebuild themselves after a run changes a prompt’s fan-out set, so an unchanged prompt costs nothing. The domain-wide map refreshes at most once a day. You can also Regenerate any map by hand; the previous result stays on screen until the new one is ready.

The three maps#

MapWhereWhat it plots
Semantic scatter mapPrompt detailOne prompt, its queries, the cited URLs and their page content
Domain semantic mapDashboardAll prompts, all fan-out queries and the ranked URL titles for the domain
Semantic map (ChatGPT Ads)ChatGPT Ads dashboard, campaign and ad group pagesContext hints, the pages your ads target, and the queries ChatGPT derives

Semantic scatter map (per prompt)#

Points are typed: Prompt, Query, URL, Title, H1 to H6 and Paragraph, and you can toggle each type on or off. Cited pages are coloured by domain: the top 8 domains by citations get a colour and the rest are grey. Your own pages are marked you. Use the domain filter to isolate one domain or hide it.

Point size is a Score from 0 to 100 per domain, a weighted position score that rewards domains cited often, high in the answer and recently:

  • each citation is weighted by its position (a citation at #1 counts more than one at #5);
  • older citations decay with a 14-day half-life;
  • the sum is multiplied by the share of runs in which the domain was cited at all;
  • the best domain is scaled to 100 and the others relative to it.

The score is computed when you view the map, so it reflects the current date range even if the map was built last week.

Each build crawls up to 30 of the most recent cited pages. Pages that cannot be fetched or read are skipped, and the map says how many.

Domain semantic map#

The dashboard map puts every prompt, fan-out query and ranked page title for the domain into one space. Toggle Prompts, Fan-out queries and Page titles, and click a point to open its prompt. Clusters here are your topic areas as the engines see them. A cluster full of prompts and fan-out queries with no page titles of yours is a topic you are asked about and have not written about.

ChatGPT Ads semantic map#

If you have connected ChatGPT Ads, the ads dashboard shows context hints (triangles), elements of the landing pages your ads point at (diamonds: title, H1 and H2) and your tracked prompts with their fan-out queries (small circles), coloured by ad group. It is one projection for the whole ad account, so points stay in place as you narrow from the account to a campaign or an ad group. Use it to check whether an ad group’s hints sit near its landing page, and whether either sits near real demand. Landing pages are vectorized only when you ask for it, because a full page costs hundreds of embeddings.

How to read a map#

  • Look at where your pages sit. If your page titles are in a different cluster from the prompt, the page is about something else as far as the engine is concerned.
  • Find the dense clusters with no “you” points. These are the topics where competitors’ pages answer the questions and yours do not.
  • Compare the prompt with the winners. Cited pages close to the prompt and its queries are there on topic. Cited pages far away usually win on authority instead, and are harder to displace with content alone.
  • Pair it with coverage. Prompt coverage turns the same vectors into a list: which sub-questions are covered, partial or uncovered.

Cost#

Each map build costs 0.005 credits plus a very small amount per new embedding. Rebuilding a map whose text has not changed re-uses cached vectors. See credits.