Skip to content
Aleem.

Citation Tracker

A measurement system for what AI search answers actually say

Client
Internal MVP
Services
AI Search Visibility, Analytics Product
Citation Tracker evidence flow from repeated AI answer samples to classification, comparison, and careful reporting

01 · Challenge

Small businesses are being told to track visibility in AI search, but each answer can vary from one run to the next. A single prompt cannot show whether a business appears consistently, whether its website is linked, or whether an apparent decline is meaningful.

Four measurement problems

One answer looks conclusive: A one-off query can name different businesses moments apart, yet a single result is often presented as a stable visibility score.

Mention and citation get collapsed: An AI can name a business without linking to it, or link to it without clearly naming it. Those are different signals for an owner.

Missing evidence becomes a false negative: Search answer links can sit behind redirects. If a source cannot be traced, it should not be counted as a confirmed absence.

Noisy movement triggers alarm: Small sample counts naturally move between measurements. Alerting on every dip risks confusing ordinary variation with a real loss of visibility.

02 · Goal

A careful, repeatable client measurement

Citation Tracker is an agency-operated workspace for small-business AI search visibility. An operator configures a business, its website and aliases, buyer questions, competitors, selected engines, measurement schedule, and alert recipients. Once a question has been measured, editing it creates a new question so earlier results remain comparable.

Each buyer question is sampled at least three times per selected engine. The system reports counts such as ‘cited in 2 of 3 runs’, not a percentage or a 0-to-100 score. It keeps four outcomes distinct: cited, named without a link, not mentioned, and could not tell. A Wilson interval gives a plain-language range alongside the observed count.

Before a run begins, a cost preflight checks every planned call and holds a 50% reserve for possible top-ups and re-checks. If the available provider budget cannot cover the complete measurement, it is refused rather than partially run. Unresolved answers can be topped up by as many as two runs to recover at least three usable observations.

The comparison checks each question and engine against the previous complete measurement using a one-sided Fisher exact test. A possible drop from at least half of runs to none is investigated; a borderline result can receive three additional runs when the reserve allows. Only confirmed business drops create alerts. Other small movements are labeled within noise.

The operator workspace exposes answer text, citation sources, competitors, changes, and run costs. Each business also has a read-only client report link that omits agency costs and can be printed or saved as a PDF. Optional Google Analytics reporting is designed to compare the previous 90 days of AI, search, direct, and other visits, with explicit limits on attribution.

03 · Result

A full-stack MVP connects a React and TypeScript workspace to a FastAPI measurement runner, SQLite persistence, Apify sampling, scheduling, evidence comparison, and client-facing reports. The workflow is designed to keep every displayed count traceable to recorded answer runs.

The included demo uses a fictional plumbing business, fictional competitors, .example domains, and scripted answers. It makes no external AI calls and spends nothing. Its displayed counts, changes, balances, and alerts are illustrative demo data, not a customer's measured visibility.

The live sampling integration is implemented, but the documented validation is incomplete: AI Overviews is the only engine recorded as live-proven; ChatGPT and Perplexity still need a live response-format check. Redirect tracing, Google Analytics, and email also need validation against real services.

This is an agency-run MVP, not a hosted production service. It has no self-serve signup or billing, team accounts, backups, or production deployment. A shared operator password is used, while client report links are read-only and do not require sign-in.

No real-client adoption, business outcomes, or time savings have been measured. The reusable pattern is the product's contribution: sample uncertain answers repeatedly, keep unknowns visible, compare evidence conservatively, and send a client a report that explains what the counts can and cannot say.

Gallery

Related insights

The thinking behind the system.

PROJECT IN MIND?

Let's build the system that runs it.

Describe your bottleneck and get a custom 2-minute Loom video showing exactly how to automate it, no call required.

Let's talk