Context map
A structured 3-layer system for systematically generating, classifying, and managing AEO prompts using building blocks, 16-dimension classification, and coverage analysis.
Overview
The Query Universe transforms your prompt management from ad-hoc lists into a comprehensive, auditable taxonomy. It uses a 3-layer approach:
- Building Block Inventory — A reusable taxonomy of brand-specific terms organized by category
- Query Universe — Prompts generated from building blocks, each classified across 16 dimensions
- Context map — which of your contexts a tracked question reaches, ring by ring, and the gaps per question type (the earlier Coverage Report tab was retired on 8 September 2026; its gap analysis lives in the map and on the Content coverage gaps page)
Building Blocks
Building blocks are atomic, reusable terms that represent your brand's services, modifiers, and market context. They are organized into two levels:
Core Blocks
| Category | Name | Example terms |
|---|---|---|
| Industry | Industry | Construction Materials, IT Services, Consumer Electronics |
| Core 0 | Primary Service | Digital Transformation, Cloud Solutions, Mobile App Development |
| Core 1.1 | Sub-Category | UI/UX Design, DevOps Services, Data Analytics |
| Micro-category | Micro Specialization | FRLS House Wires, Kubernetes Cost Audits |
| Core 1.2 | Features | AI-powered, Full-service, Award-winning |
| Core 1.3 | Use Case / Industry Served | Banking & Finance, Healthcare, E-commerce |
| Core 1.4 | Target Audience | CTO/CIO, Startups, BFSI Companies |
| Core 1.5 | Technology | AWS, Azure, Salesforce |
Industry (above Core 0) and Micro-category (below Core 1.1) complete the framework's 4-level what-we-do hierarchy: industry → category → sub-category → micro-category. Covering the micro level signals the parents.
Modifier Blocks
| Category | Name | Example terms |
|---|---|---|
| M-1 | Superlative | Best, Top, Leading |
| M-2 | Buying Parameter | Cost, Pricing, Affordable |
| M-3 | Location | India, USA, Mumbai |
| M-4 | Entity Type | agency, firm, company |
| M-6 | Review / Experience | Reviews, Ratings, Testimonials |
| M-7 | Comparison | vs, versus, alternative to |
| M-8 | Action | How to choose, How to hire |
| M-9 | Time / Recency | 2026, latest, this year |
| M-10 | Certification / Trust | ISO-certified, CMMI Level 3, Award-winning |
From 30 Oct 2026 every screen and the context-map download name a modifier by this table. A file written with an older name (for example "Price / Cost") still uploads, and the name above is the one kept.
Each building block has a weightage (0-100), source (website/general/custom), and priority (P1/P2/modifier).
Adding Blocks Manually
In addition to seeding from industry templates, you can add individual building blocks directly:
- In the editor at the bottom of the Context map page, open Add.
- Enter the Term (e.g., "Cloud Computing").
- Select a Category from the dropdown — the level, priority, and label are auto-derived.
- Optionally adjust the Weightage (default 50) and Source (default "general").
- Click Add to create the block.
Uploading a context map file
You can also keep the whole context map in a spreadsheet and upload it as a CSV. On the Context map page, the Context map file card has Download the template (the columns and one sample row of each kind) and Download your context map (your current contexts in the same columns, so you can edit and upload them again).
One row is one context. The columns are:
| Column | What it holds |
|---|---|
core_id | For a core context: 0, 1.1 to 1.5, Industry or Micro-category. Leave it empty on a modifier row. |
core_name | The name you give that core kind (for example "TMT bars"). |
modifier | For a modifier context: its type, as its id (M-3) or its name from the table above (for example "Location"); a name an older file used still reads. Leave it empty on a core row. |
orbit | -1, 0 or +1: the ring you declare for this context. Empty leaves the ring to the map. |
level | L0 to L3. |
value | The term itself. Required. |
search_volume | Your own figure, a whole number. It is shown as "Search volume (from …)" with the source you give, never as a volume we measure. |
importance | 0 to 100 (the weightage; 50 when empty). |
priority | P1 or P2 on a core row; modifier on a modifier row. |
source | Where the figure or the term came from, in your words (for example the tool you used, or "client"). |
The four parameter columns may instead be one parameters column, written as search volume=1200; importance=80; priority=P1; source=….
Uploading never saves straight away. Every row is first shown as new, updated or unchanged, or with the reason it cannot be saved. Import stays off until no row has an error, and an import saves all its rows or none. Uploading a context you already have updates it in place. Each import is recorded with who uploaded it, when, and how many rows it added and updated.
Define your contexts — the guided wizard
The Define your contexts wizard (Context map page header, also linked from the Setup Wizard) walks the AEO/GEO framework's four definition groups and turns them into contexts and tracked prompts. Same data model underneath — the groups are a guided path onto the block taxonomy, not a parallel store. In the app these groups appear as rings on the Context map.
| Orbit | Maps to | What it captures |
|---|---|---|
| Who we are | Project settings | Brand, parent brand (or "independent"), what the brand makes, inherited-trust note. Engines resolve the entity first — a recognized parent brand passes inherited trust to its sub-brands. The brand, its owner and what it makes are also the identity record that gate 1 checks answers against; until all three are given, gate 1 reads "Can't be checked: no identity record". |
| What we do | Industry → Core 0 → Core 1.1 → Micro-category | The 4-level hierarchy. An engine cannot recommend you for a category you have not defined yourself into. |
| How you qualify | M-10 + M-2 + M-3 + M-9 | How a buyer qualifies you: certifications and trust, buying parameters, locations served, recency. These are contexts: a question about one with no coverage needs content, not outside work. Certifications also land in Brand Facts as evidence. |
| Whom we serve | Core 1.3 + Core 1.4 | Industries served and audiences. Segmentation is combinatorial — pick the combinations that matter; the least contested answers emerge as segmentation deepens. |
On completion the wizard shows your first questions — how many candidate queries your contexts generate, top-ranked by block weightage with intent and recency/location flags — and adds the ones you select as tracked prompts (quota-aware, never auto-inserted).
The Context map page then shows, ring by ring, how many contexts a tracked question reaches; a ring with nothing in it reads 0 of 0 rather than a call-to-action. At the top, the page counts your contexts and the pages or dedicated sections they need at least. That number comes from the map alone, and how many questions you track sits beside it, never mixed in. Modifiers like best or reviews need no page of their own, and a proposed context counts only once someone accepts it.
Questions per type
On the Context map you can say how many questions you want for each question type. It changes nothing by itself: no question is added, removed or paused, and no figure moves. The page sets what you track beside what you want, and when you compose questions, the types you're short of come first.
The page shows a common starting split beside your numbers, with brand as one figure across both kinds. In categories bought on impulse or from recall this split inverts, and there are no set numbers for that. Your plan's question limit still stands, and the page says so if your numbers pass it. The brand types fill mostly from the standard questions, not from composing. A member or above can set the numbers, and a viewer can read them.
Inherited trust and your own attributes
Two registers sit on the Context map, below the contexts. You fill them in and keep them current: nothing checks them for you, and they don't change any score or any count of answers.
Inherited trust lists everything already credible that is legitimately connected to the brand. Each row records the entity and how it connects (parent or group, sister brand, promoter or founder, certifier or regulator, association or standards body, marquee client, partner or distributor, investor or board, institutional affiliation, awarding body); its own strength (a Wikidata item, a Knowledge Panel, a Wikipedia article); whether the relationship is declared in Wikidata, in schema markup, in a registry filing, and on LinkedIn or Crunchbase; whether an independent source corroborates it; and the action that closes the gap. Every status is yes, no or not checked. The parent brand is the first row: its name comes from the project's definition, and if the definition names a different parent, its statuses start again at not checked.
Your own attributes shows fourteen attributes from the start, each with the source where it must exist. A row records the current claim, the source you checked, whether that source carries it, the gap, the owner and the date. The date is set when someone marks the source yes or no; a row set back to not checked loses it. An attribute counts as carried only when someone marks it yes and names the source.
Members and above can edit; viewers can read. Both registers export to CSV. A save changes one row, and if someone else changed that row while you were editing, the save is refused and says so. A register holds at most 50 inherited entities.
Prompt Composition
The prompt composer generates prompts by combining building blocks using 12 natural-language templates:
[Superlative] + [Service] + [Entity] + in [Location][Brand] vs [Competitor][Brand] reviews[Service] + [Price] + in [Location][Action] + [Service] + [Entity] + in [Location]What is [Service][Service] + [Sub-Category][Superlative] + [Service] + [Industry][Service] + [Audience][Service] + [Technology][Industry] + [Core 0]— industry-scoped category queries[Core 0] + [Micro-category]— micro-specialization queries
Generated prompts are suggestions for review — they are never auto-inserted into your project. Each suggestion is automatically classified across all 16 dimensions.
16-Dimension Classification
Every prompt in the Query Universe is classified across these dimensions:
| Dimension | Possible Values |
|---|---|
| Intent Type | Informational, Transactional, Navigational, Shopping, Hybrid, Branded, Comparison |
| Journey Stage | Awareness, Consideration, Decision, Post-Purchase |
| SDS Tier | Tier 1 (volume 80-100), Tier 2 (60-79), Tier 3 (1-59) |
| Freshness | Fresh (time-sensitive), Stable (evergreen) |
| Risk Level | Low, Medium (pricing/cost), High (medical/legal) |
| Location Type | Country, City, Global, None |
| Location Value | Specific location name |
| Tags (Modifier) | Array of modifier-derived tags |
| Tags (Audience) | Array of audience-derived tags |
| Themes (Core) | Array of core service themes |
| Themes (Attribute) | Array of attribute themes |
| Unit Count | Number of building blocks used |
| Combination Formula | Template pattern used to generate the prompt |
| Building Block IDs | References to source building blocks |
Coverage Report
The coverage analyzer examines your prompts against building blocks and dimensions to identify strategic gaps:
- Block Coverage — Which building blocks appear in at least one prompt
- Per-Block Coverage Table — A detailed table showing every block's category, term, prompt count, and covered/uncovered status, with a toggle to show only uncovered blocks
- Dimension Distributions — Count of prompts per intent type, journey stage, SDS tier, freshness, and risk level
- Location Coverage — How prompts are distributed across location types
- Gap Identification — Uncovered blocks, missing journey stages, missing intent types
- Recommendations — Auto-generated suggestions for improving coverage
Combination Coverage
Retired 8 September 2026. The Coverage Report tab and its combination grids no longer exist; the Context map's gaps table and the Content coverage gaps page carry the uncovered contexts per question type. The paragraph below describes the retired grids for readers of older reports.
The Coverage Report paired your segment blocks — Industry Served × Target Audience (primary), plus × Location — and scores each combination, not just each term alone. Use-case fit emerges as segmentation deepens: the least contested AI answers live in these deeper cells. A cell is covered only when at least one prompt is explicitly linked to all its terms, or two or more distinct prompts match them; a single prompt that merely mentions both terms counts as partial. Grids show the top 12 blocks per category by weightage (the grid states when a category was truncated), open combinations are ranked by the blocks' weightage geometric mean, and Pricing/Cost + Location triples are computed for the highest-value open pairs. Clicking a cell shows its matching prompts and offers a one-click Compose that generates ready-to-review prompts anchored on your top Primary Service (Core 0) block — added prompts carry the combination's block links, so the cell flips to covered on the next report refresh.
Getting Started
- Open Context map (Content section of the sidebar, or from Setup)
- Read the rings table and the identity card, then the contexts by kind
- In the editor at the bottom, seed from an industry template or add contexts one at a time
- Use Compose to generate prompt suggestions, review them, and add the ones you want
- The gaps per question type link into Content coverage gaps for the contexts no tracked question covers
- Use the Backfill feature to enrich existing prompts with classification data
Enrichment Cron
A daily background job (3AM UTC) automatically enriches any prompts missing classification data. It runs the enhanced classifier, estimates search volume, derives SDS tiers, and auto-generates topics for all unclassified prompts.
Plan Availability
| Plan | Building Block Limit | Query Universe Access |
|---|---|---|
| Free | 20 | No |
| Starter | 50 | No |
| Pro-Individual | 100 | Yes |
| Pro-SME | 200 | Yes |
| Enterprise-Brand | 500 | Yes |
| Enterprise-Agency | 500 | Yes |
| Custom | Unlimited | Yes |