A URL cited by four of five engines is a different finding from one cited by a single engine, so start with the fan-out rather than a pinned engine. There is also a lot of work here that costs no API budget at all: the likelihood prediction, schema validation, sitemap sweeps and the crawler-access check run on public signals, which makes them the sensible first pass before you spend a key on anything.
A self-hosted citation-tracking server with no account and no central backend: you bring your own engine keys, and the results, panels and snapshots stay on your machine.
- Cross-engine consensus for a query: which URLs each engine cited, which ones every engine agreed on, and which are specific to a single engine
- The evidence behind a citation — the snippet from the engine's own answer where a URL was mentioned, and where in the answer it appeared, early, middle or late
- Domain-level checks: whether a domain is cited across a cluster of queries with per-query rank and a citation rate, what it has been cited for from local cache, and a diff of queries gained and lost between two time windows
- Citation likelihood for a URL scored from public signals — Wikipedia links, schema.org markup, llms.txt, GitHub and Reddit references, canonical hygiene, HTTPS — with a grade, a signal breakdown and ranked fixes, and no LLM call at all
- Freshness: how recent the pages an engine cites actually are, so you can spot queries where old content is still winning
- Panels: save a named query watchlist, run it on a schedule and append a timestamped snapshot, then report the citation rate over time from those snapshots without spending any API budget
- A turnkey visibility report for a domain: citation rate, share of voice against named competitors, and average rank when cited
- Competitive views: 2-10 URLs compared signal by signal, an end-to-end snapshot of your URL against the top cited competitors for one query, and a query's citations aggregated by registered domain to find the canonical competitor set
- Site audits that need no engine key: run the prediction over every URL in a sitemap worst-first, cross-reference a sitemap against what has actually been cited, validate schema.org JSON-LD field by field, suggest the JSON-LD a page is missing, generate an llms.txt from a sitemap, and check that GPTBot, ClaudeBot, PerplexityBot and the other AI crawlers can really fetch a page
- Gap joins against Google Search Console or Bing Webmaster Tools: queries where the domain ranks well but is not cited by AI
Node 20 or later, run with npx -y @automatelab/citation-intelligence. Nothing is hosted and there is no account — you set only the engine keys you have. PERPLEXITY_API_KEY, SERPAPI_KEY (100 requests a month free), GEMINI_API_KEY, BING_API_KEY and BRAVE_API_KEY (2,000 a month free) all have free tiers; ANTHROPIC_API_KEY and OPENAI_API_KEY are paid. The prediction, Wikipedia, sitemap, schema and crawler-access tools need no key at all. Caching is on by default via CITATION_CACHE_TTL_DAYS (7 days) and CITATION_AI_OVERVIEW_TTL_DAYS (1 day), and CITATION_CONFIG_DIR moves the config, panels and snapshots off the default ~/.config/citation-intelligence.
One command plus a key — npx -y @automatelab/citation-intelligence, then supply credentials
