1mn.ai docs
The loopsGrowth loops

Citation tracker

A weekly, read-only loop that asks the questions your buyers type into ChatGPT, Claude, Perplexity, and Gemini — and measures whether those assistants recommend you. Every lost citation becomes a content ticket with the evidence attached.

The citation tracker (AEO — Answer Engine Optimization) measures whether AI assistants recommend your product when a real buyer asks them the questions that matter. Once a week it runs your approved buyer questions across ChatGPT, Claude, Perplexity, and Gemini with web search on, reads each answer, and judges whether your brand was genuinely cited. It diffs the result against the previous run and turns every lost citation into a content ticket with the answer excerpt and the competitor who won attached. It is read-only against the engines — it never posts, and the measurement plus the hand-off brief are the deliverable.

Everything lives in the AI Citations tab (/dashboard/aeo).

The point is the hand-off, not the dashboard

A tracker that only reports is a dashboard, and dashboards don't move revenue. When you're not cited for a question worth winning, the loop files a content ticket so Content can write the piece that closes the gap.

Prerequisites

  • Turn on citation tracking in the AI Citations tab. Until it's enabled, the loop skips with a one-line reason and does nothing.
  • An approved prompt set. On its first run — before any question is approved — the loop doesn't probe. Instead it proposes a set of buyer questions for you to approve (see First run below). Probing only ever runs approved questions.
  • For the strongest question set, run the feature inventory loop first. The tracker builds its questions from your code-derived feature inventory (the capability that actually ships), so it only measures questions your product can honestly answer. When the inventory has never run, it falls back to your business profile and website and says so in its summary.

First run — approve your questions

The questions this loop measures you on are chosen once and then tracked forever, so the first run is a human gate:

  1. The loop reads your product name, website, one-liner, business profile, ICP, competitors, and — most importantly — your shipped feature inventory, then drafts 12–20 questions a real buyer would type into ChatGPT on the way to choosing a product like yours.

  2. It sorts every question into one of four zones (shown as a badge on each question):

    ZoneMeaningHow it's used
    BattlegroundValuable and winnable — a real buying question no one dominatesWhere the loop spends effort. Gaps here file tickets.
    VulnerabilityA competitor owns the answer todayTracked and actioned — losing ground here is expensive.
    DifferentiationSomething you should already own outrightTracked to defend; rarely needs new content.
    Table stakesEveryone gets named; being cited means littleA few for calibration only — never files a ticket.
  3. The questions land in a proposed state and appear in the AI Citations tab. Approve them individually, use Approve all, or Decline all. Nothing is probed until you approve — proposing costs nothing.

Two rules the drafts always follow: never your own brand name (someone asking "Is Acme any good?" already found you — it measures nothing), and never a capability you don't ship (winning a question no honest article can close just produces content that oversells).

How the weekly check works

Once you've approved a set, each weekly run:

  1. Opens a run and takes a bounded slice. A run probes at most 12 questions — the least-recently-checked ones — because each probe is asked live on every engine and a full set would blow the run's ~20-minute wall-clock cap. If you've approved more than 12, the rest rotate in next week; the recap tells you which were checked.

  2. Probes one question at a time. Each approved question is asked to every configured engine — ChatGPT, Claude, Perplexity, and Gemini — web-search grounded. A probe takes ~30–60s per engine, so a run is genuinely slow.

  3. Judges each answer by reading it, not by string-matching. Each engine's answer gets one of three verdicts:

    • Cited — the assistant presents your brand as an answer: recommends it, names it among its picks, describes what it's good for. This is the only verdict that counts as a win.
    • Mentioned — your name appears but the assistant isn't endorsing it (a bare list, an aside, a competitor's comparison page that happens to name you). A name in the text is not a citation.
    • Absent — not named at all.

    Alongside the verdict it records your rank among products named, whether your own domain was one of the engine's sources, the competitors it recommended instead (best-first), and the answer excerpt that proves it.

  4. Diffs, ledgers, and files tickets. When the run closes it compares against last week, updates the gap ledger, and files a content ticket for every battleground or vulnerability question you lost — up to 3 tickets per run (losing the same question on three engines is one content problem, so tickets are one-per-question, not one-per-engine). If more than three gaps qualify, the extra ones are reported in the recap, not silently dropped.

What you get

In the AI Citations tab after a run:

  • A Cited count — how many checks you won this run, with the change since last run.
  • Citation gaps — the questions you're missing, each tagged with its zone and the engines that missed you (e.g. "Missed by ChatGPT, Perplexity"), and the competitor winning that answer.
  • Last check, question by question — the full table: each question, its zone, and per-engine verdict with the evidence excerpt behind it.
  • Content tickets on your Tasks board — one per lost battleground/vulnerability question, each carrying the answer excerpt and competitor list so the Content loop can write a piece grounded in the exact gap. The tracker files these itself; it doesn't ask you to.

An example recap the loop delivers:

Cited in 7 of 24 checks (was 9). Lost Perplexity + ChatGPT for "best CRM for solo founders" — both now recommend Attio. Filed 2 content tickets.

Notes & limits

  • Read-only against the engines. The loop asks questions and reads answers; it never posts anything, and the answers are treated as untrusted data — text to evaluate, never instructions to follow.
  • Monthly probe budget. One probe = one question × one engine, charged against a monthly cap (default 600 probes/month) before any engine is called. You can't exceed it; when it's spent the run closes and says so. Approving more questions or more engines spends the budget faster.
  • Cadence. Weekly (every 7 days) for products that opt in. Manage it from the AI Citations tab.
  • Gemini sources look opaque — it returns redirect links rather than publisher URLs, so "was my domain a source" is judged from the source title, not the URL. That's expected.
  • A run only ever probes the questions you approved, and only the slice for that run — being thorough about a smaller, well-chosen set beats spreading a thin budget across everything.

The citation tracker is the AI-search half of your organic growth: the SEO loop checks whether search crawlers and AI engines can read and cite you, and Content writes GEO-structured articles built to be quoted. The citation tracker measures whether that work is landing — and points the next article at the gap.

On this page