DocsMeasurementPerformance dashboard

The performance dashboard surfaces which fixes moved your AEO score and which AI engines are sending citation traffic.

Performance dashboard

The performance dashboard is the unified view across every measurement module in CiteFlow: audits, keyword rankings, AI citations, and content output. It exists so you do not have to stitch the picture together yourself.

What does the dashboard show?

Six things, top to bottom:

  1. The AI Visibility Score, a single composite number from 0 to 100.
  2. A trend chart of that score over the selected range.
  3. Four module summary cards (Audit, Keywords, Citations, Content).
  4. An activity feed of meaningful events.
  5. Top opportunities, recommended next actions.
  6. A date range picker (7d / 30d / 90d) that controls everything above.

The dashboard is cached for 5 minutes per tenant and per range, so hitting refresh repeatedly does not multiply database load.

What is the AI Visibility Score?

The composite score is a weighted average of three components:

ComponentWeightSource
Audit40%Overall score of your latest completed audit
Citations30%Cited results divided by total results in the range
Rank quality30%Mean position-score across your tracked keywords

The position-score for an individual keyword is max(0, 100 - (position - 1) × 2). So position 1 = 100, position 10 = 82, position 50 = 2, "not in top 100" = 0.

Component renormalisation

If a component is missing (for example, you have not added any tracked keywords), it drops out of the average and the remaining weights are renormalised, not zeroed.

Components availableEffective weights
Audit + Citations + Rank40 / 30 / 30
Audit + Citations (no keywords)57 / 43
Audit + Rank (no citations)57 / 43
Citations + Rank (no audit)50 / 50
Audit only100

This is deliberate: it stops the score from looking artificially low just because you have not set up every module yet. If only one module is set up, that module's score is your composite.

If none of the three is set up, the score is null and the dashboard prompts you to complete setup instead.

How do you interpret your score?

RangeWhat it means
80 to 100Strong visibility. Most customers in this band have an established site, a steady citation footprint, and ranks in the top 10 for tracked terms.
60 to 79Healthy. The fundamentals are working; specific gaps in the opportunities list are where the next 10 points come from.
40 to 59Average. Plenty of upside. The opportunities list will be long and worth working through.
Below 40Early days, or a structural problem. New sites typically start here and climb. Existing sites in this band usually have an audit-score problem worth fixing first.

Realistic expectations for new customers

Most customers see meaningful score movement within 30 to 60 days as generated content is published and indexed, and as AI assistants re-crawl. Citation scores lag the most because AI training data and retrieval indexes refresh more slowly than the open web.

If your score moves only a few points week to week, that is normal. Watch the 30-day trend, not the 7-day one.

What do the four module cards show?

Each card shows the module's primary metric, a one-line secondary status, a sparkline trend, and a contextual call to action.

  • Audit, your latest overall audit score, plus how many audits you have completed. CTA: View audits, or "Run your first audit" if none exists.
  • Keywords, average ranking position across tracked keywords, plus how many keywords you track. CTA: View ranks, or "Add keywords" if none.
  • Citations, percent of recent checks where you were cited, plus how many of the five platforms have cited you at all. CTA: View citations, or "Add queries" if none.
  • Content, number of articles published in the range, plus how many drafts are approved and waiting. CTA: View content.

Each card's status is ok, empty (set up but no data yet), or setup_required (the upstream module has not been configured).

What appears in the activity feed?

The feed merges four event sources, sorted newest-first, capped at 30 items.

  • Publishes, one entry per article (deduped, even if the article was published to multiple endpoints).
  • Rank changes, only when a keyword moved by more than 3 positions in either direction. Below that threshold is noise.
  • Citations, the first time a query gets cited on a given platform (subsequent re-checks for the same query+platform are suppressed to keep the feed signal-dense).
  • Audit completions, score plus run type.

The 3-position rank threshold and the publish/citation dedupe rules exist so the feed reads like meaningful change, not a transaction log.

What are the top opportunities?

The opportunities list pulls from four sources, again capped to keep the list actionable:

  1. Near-top keywords, tracked keywords currently at position 4 to 10. These are your fastest wins; one position-change is the difference between page 2 and page 1.
  2. Uncovered queries, tracked AI citation queries that have not been cited on any of the five platforms. Up to 3 are listed by name; a "+N more" entry summarises the rest.
  3. Audit regressions and new issues, up to 5 deltas from your latest audit, ordered by severity.
  4. Queued KB topics, up to 3 article topics that your knowledge base recommended and that are sitting in your queue.

Click any opportunity to jump to the relevant dashboard page.

How does the date range picker work?

Switching range changes the citation score window, the rank trend, the content count, and the sparkline length. It does not change the audit score (which is always your latest completed audit) or the visibility score's interpretation thresholds.

Why does /dashboard redirect?

Once setup is complete (verified site, at least one completed audit), /dashboard soft-redirects to /dashboard/performance as your default landing page. Until then, you land on the setup checklist instead.

Frequently asked questions

My score is null. What does that mean? None of the three components (audit, citations, rank) has data yet. The most common cause is that your initial audit has not completed. Once it does, the score will populate even without keywords or citations set up.

My audit score is 75 but my visibility score is 50. Why? Either your citation rate is low (most likely if you are a new site) or your tracked keywords sit below position 25 on average. Check the component breakdown in the visibility-score tooltip.

The sparklines look flat. Is the dashboard broken? Sparklines need at least a few data points to render meaningfully. If you have just set up tracking, give it 7 to 14 days for the worker to collect enough points.

How do you troubleshoot dashboard issues?

The dashboard says "No data yet" for a module I have set up. The 5-minute cache may be holding a stale view. Hard-refresh the page; the cache busts on any underlying data change but a server restart could have re-warmed it with empty results.

The activity feed has nothing in it. Either nothing has happened in your selected range, or you are using the 7-day window and your last activity was 9 days ago. Try 30d.

References

Related

  • Keyword trackingNeutral Google SERP positions via SerpAPI. Why your live browser ranks look higher than the dashboard.
  • AI citation trackingCitations across OpenAI, Anthropic, Perplexity, Gemini and Google AI Overview. Cited vs mentioned.
  • Re-audits and deltasScheduled re-audits, the four delta change types, page-type categorisation, manual re-audits.