Home / Resources / Prove / How to Build a Monthly AI Visibility Report for Clients
AI Search Intelligence

How to Build a Monthly AI Visibility Report for Clients

The short answer

A useful monthly AI visibility report tells a client what was measured, what changed, what did not, what shipped, what remains unavailable, what the observed signals mean, and what happens next. Keep search-platform metrics, fixed-prompt observations, identifiable referrals, on-site actions, and attributable commercial outcomes in separate, clearly bounded layers.

Copy the monthly client-report template

Start with the executive summary, then retain the scope, denominator, evidence, unavailable states, shipped work, interpretation limits, and accountable next action behind every conclusion.

# Monthly AI visibility report

Manual client-report template — version 1.0. Keep every provider's unit separate, retain missing-data states, and distinguish observations after shipped work from outcomes attributable to that work.

## Report control
- Client:
- Reporting period and comparison period:
- Prepared by / reviewed by:
- Report version and UTC issue time:
- Included markets, languages, sites, providers, modes, prompts, pages, analytics properties, and business systems:
- Material scope or method changes since the prior report:

## Executive summary
What changed:
- [Material movement, exact unit, numerator/denominator, comparison, and scope]

What did not change:
- [Important stable or null result; do not omit it]

What we shipped:
- [URL or system, bounded change, owner, ship time, acceptance result]

What it means:
- [Plain-language interpretation with limits; use observed after unless attribution is supported]

What we will do next:
- [Decision, owner, due date, acceptance rule, and next observation window]

## Scope and comparability
| Layer | Population and unit | Current | Prior | Comparable? | Source/evidence pointer | Limitation |
| --- | --- | --- | --- | --- | --- | --- |
| Search-platform visibility | [Provider-defined unit] | | | Yes / No | | |
| Fixed prompt observations | [Observed cells / planned cells] | | | Yes / No | | |
| Identifiable AI referrals | [Sessions and landing pages] | | | Yes / No | | |
| On-site actions | [Declared event and count/rate] | | | Yes / No | | |
| Commercial outcomes | [Attribution rule and eligible population] | | | Yes / No | | |

## Findings
### Changed
For each finding: exact observation; prior/current numerator and denominator; scope; evidence pointer; plausible alternatives; confidence; client implication.

### Unchanged
Record important stable, null, or adverse results using the same fields. An unchanged result is evidence, not empty space.

### Unavailable, failed, excluded, or incomparable
Record each affected provider, prompt, page, metric, and period; the reason; denominator treatment; retry or resolution owner; and whether the client decision changes.

## Work shipped
| Ship time | URL/system | Problem and evidence | Bounded change | Owner/reviewer | Acceptance result | Rollback | Proof window |
| --- | --- | --- | --- | --- | --- | --- | --- |
| | | | | | | | |

Do not list planned work as shipped. Link one-fix before/after evidence to the proof-report record instead of copying its entire ledger into this monthly narrative.

## Decision and action queue
| Priority | Decision or next action | Evidence behind it | Owner | Due date | Acceptance rule | Next observation |
| --- | --- | --- | --- | --- | --- | --- |
| 1 | | | | | | |

## Interpretation and limits
- Provider-native metrics are reported under the provider's current definitions.
- Fixed-panel observations describe the declared prompts, surfaces, repeats, rules, and windows only.
- Referrals omit interactions that do not reach the site or arrive without usable attribution.
- On-site actions and commercial outcomes require their own event, join, and attribution rules.
- Sequence after a release is temporal evidence, not a causal estimate by itself.
- Note provider, model, interface, indexing, site, campaign, analytics, consent, and market changes that could affect comparison.

## Client decision
- Continue / change course / investigate / pause / retire:
- Decision owner:
- Decision date:
- Reason and evidence:
- What result would challenge this decision next month:

## Appendices
- Raw evidence locations:
- Fixed panel and classification rules:
- Search-platform exports:
- Analytics exploration and event definitions:
- One-fix proof reports:
- Version history and corrections:
Version 1.0 · Manual reporting template; it does not connect accounts, collect provider data, reconcile metrics, or approve conclusions.
Quick actions
Step by step
  1. Freeze scope and comparability

    Record the reporting windows, properties, markets, languages, providers, modes, fixed prompts, pages, event definitions, business joins, and any method change before comparing a number.

  2. Separate the evidence layers

    Report each provider's native unit, fixed prompt observations, identifiable referrals, on-site actions, and attributable commercial outcomes independently. Preserve unavailable, failed, excluded, and incomparable states.

  3. Explain the month as decisions

    Lead with what changed, what did not, what shipped, what the evidence means within its limits, and what the team will do next. Link detailed evidence rather than flooding the summary.

  4. Assign the next proof window

    Give every next action an owner, due date, acceptance rule, and observation plan. State the result that would challenge the current interpretation instead of treating the report as a success narrative.

How should the monthly report be used?

Write for the client decision first. The executive summary should answer five questions in plain language: what changed, what did not, what was shipped, what the evidence means, and what happens next. Put exact calculations and raw evidence behind those statements, not in place of them.

Freeze the comparison scope before writing. A new provider, changed prompt panel, revised classification rule, tracking change, unavailable account, or different date window may make a number useful for the current month but not comparable with the prior one.

Which measurement layers must stay separate?

One dashboard can display several layers without pretending they share a numerator, denominator, population, or attribution rule. Name the provider and unit whenever the metric could be misunderstood.

LayerUseful monthly unitDo not claim
Search-platform visibilityProvider-defined impressions, citations, cited pages, topics, or queriesCross-provider equivalence or a hidden selection reason
Fixed prompt observationsOwned links or mentions over eligible observed cells, plus planned and unavailable coverageProvider-wide market share or a stable rank
Identifiable AI referralsAttributed sessions, landing pages, and source/mediumEvery AI visit, answer impression, or citation
On-site actionsDeclared events or key events under one definitionWhy the visitor acted
Commercial outcomesEligible accounts or revenue under a documented join and attribution ruleCausation where the design shows only sequence or assistance

What does a completed month look like?

This is synthetic data for Aster & Vale, a fictional agency client. It is not RankEcho customer data, an industry benchmark, or evidence that these movements are typical. The example deliberately includes improvement, no change, a reversal, an unavailable provider view, fewer referral sessions, and one additional key event.

Scope: the fictional report compares 1–31 August 2026 with 1–31 July 2026 for one US-English site, one unchanged 42-cell prompt-and-surface panel, one Search Console property, and one GA4 property. The provider and analytics definitions are held constant; Bing data is unavailable in both periods.

Executive summary — what changed: Google reported 170 more generative Search link impressions, while the fixed panel recorded two more owned-link cells after three gains and one reversal. Identifiable assistant sessions fell by two, and the declared key event increased from three to four. What did not change: the 16-cell comparison subset remained 4/16, and Bing stayed unavailable.

What we shipped: on 18 August, the fictional team corrected one plan-limit definition on /pricing and confirmed visible-page, checkout, and help-center parity; no other panel page changed. What it means: the visibility observations moved in a positive direction, but referral visits did not, the event count is small, and the records do not identify one cause. What happens next: inspect the affected answer sources and pricing-page sessions, preserve the September panel, and do not claim a commercial lift.

LayerPriorCurrentChangeInterpretation boundary
Google generative Search link impressions1,2401,410+170 (+13.7%)Provider-defined link impressions; prompts and causes unavailable
Bing AI Visibility InsightsUnavailableUnavailableNo comparisonProperty access was not available; excluded, not scored as zero
Fixed prompt panel: owned-link observations9 / 42 observed cells11 / 42 observed cells+2 cells (+4.8 percentage points)Three gains and one reversal; same observed-cell panel
Identifiable AI-assistant referrals31 sessions29 sessions-2 sessionsAttributable visits only; no-click and unattributed activity absent
Declared on-site key event3 events4 events+1 eventSmall descriptive count; no causal or revenue claim
Unchanged comparison subset4 / 16 owned-link cells4 / 16 owned-link cellsNo changeRetained as an explicit null result

What decision follows from the synthetic month?

The fictional client decision is to retain the corrected pricing fact, investigate why attributable sessions did not move with the visibility observations, and repeat the unchanged panel before proposing another page change. The August pattern is useful enough to guide work, but not enough to attribute an outcome or expand the claim.

Next actionOwner and due dateEvidence and next observation
Review the three gained cells, one reversed cell, and the pricing landing-page journey before choosing another fixSynthetic account strategist · 5 October 2026Preserve raw answers and source URLs, Search Console page/device rows, GA4 source/landing-page sessions, and the accepted pricing diff; repeat the fixed panel for 1–30 September 2026

How should shipped work connect to the evidence?

List only work that passed its acceptance check in the reporting period. Include the exact URL or system, observed problem, bounded change, owner and reviewer, UTC shipment time, rollback, and planned proof window. Keep planned or rejected work in the action queue rather than relabeling it as shipped.

Use the proof-report template for one change's full before-and-after record, including raw answer pointers, denominators, common cells, reversals, concurrent changes, and limitations. Link that record from the monthly report; do not copy its entire ledger into the client summary.

How do you report no change, reversals, and unavailable data?

No change is a result when the comparison is valid. State the numerator, denominator, scope, and implication just as you would for a gain. A reversal belongs in the same changed-cell table as gains; hiding it makes the net movement impossible to audit.

Unavailable and failed checks are missing observations, not automatic misses. Name the affected provider, prompt or report, explain denominator treatment, assign a retry or resolution owner, and state whether the missing evidence changes the decision. If the method changed, mark the comparison incomparable rather than forcing a percentage.

How should the report turn findings into next actions?

Prioritize actions by the client decision they support and the evidence available, not by which chart moved upward. Each action needs an owner, date, acceptance rule, and next observation. Include one condition that would challenge the current explanation so the next report can change course honestly.

If identifiable referral sessions move, inspect their landing pages and declared on-site events without assuming that an answer citation caused the visit. If a fixed-panel observation changes, preserve the raw answers, matching rules, provider conditions, unavailable states, and concurrent releases before choosing another fix.

How does a monthly report become a QBR?

A quarterly review should aggregate decisions, not average incompatible metrics. Summarize repeated themes, completed work, current risks, retained null results, client learning, and the next-quarter allocation. Keep monthly provider definitions and evidence links accessible so the higher-level narrative remains auditable.

Separate a durable program change from a transient answer observation. A quarter can contain several positive snapshots without showing a stable trend, and a business outcome may be assisted by the work without being attributable to one page or prompt.

How can RankEcho support client reporting?

RankEcho's client-reporting workspace can organize saved audits, reviewed fixes, dated proof records, and shareable views according to the configured account and plan. The public sample report and portfolio show the workflow before a purchase decision.

A person still selects comparable evidence, verifies source definitions, explains unavailable data, writes the client implication, and approves the report. RankEcho does not establish that a shipment caused a ranking, citation, referral, key event, or sale. Review current plan scope instead of copying limits into a long-lived report template.

Frequently asked questions

What should an AI visibility monthly report include?

Include scope and method changes, a five-part executive summary, provider-native search metrics, fixed prompt observations, identifiable referrals, on-site actions, eligible commercial outcomes, shipped work, unchanged and unavailable findings, limitations, and an action queue with owners and dates.

Can I combine Google, Bing, and prompt-check data into one AI visibility score?

A dashboard may show them together, but preserve each provider's population and unit. A Google link impression, Bing citation-share measure, fixed prompt cell, referral session, and key event are not interchangeable observations and should not be added without a defensible defined model.

How should an agency report a month with no improvement?

Report the valid null or adverse result with the same scope, numerator, denominator, and evidence used for a gain. Explain what shipped, what remains plausible, whether the decision changes, and which next observation could disconfirm the current hypothesis.

Should failed or unavailable prompt checks count as zero citations?

No. They are missing observations unless a predeclared provider-specific method says otherwise. Report them separately, explain whether they leave the comparison usable, and never improve a rate by silently dropping inconvenient failures or unavailable cells.

Does a monthly increase prove the agency's work caused it?

Not by timing alone. Site releases, indexing, provider changes, source changes, campaigns, analytics configuration, demand, and answer variability can overlap. Use careful language such as observed after publication unless the design supports attribution or a causal estimate.

Sources reviewed

Material technical claims below were checked against primary provider documentation. The sources support the documented control or signal, not a guarantee of indexing, ranking, an AI impression, or a citation.

5 claim-level source records
Checked 2026-09-07 · Primary-source technical documentation review · Confidence is recorded per claim.
Claim reviewedOfficial sourceReview record
Google's Generative AI performance report includes link impressions from AI Overviews and AI Mode and supports page, country, date, and device dimensions; the documented report does not expose the user's prompt or a citation-selection cause.Google Search Console: Generative AI performance reportChecked 2026-09-07 · Worldwide rollout stated as August 31, 2026 · This first-party documentation supports a provider-native Google layer in the monthly report. Link impressions remain Google's defined unit and are not relabeled as RankEcho prompt observations, visits, conversions, or evidence that a shipment caused movement. · Confidence: High
Bing Webmaster Tools documents AI Visibility Insights for grouping grounding queries into intents and topics, measuring citation share, and comparing current and previous periods.Bing: AI Visibility Insights in Webmaster ToolsChecked 2026-09-07 · Global public-preview announcement published June 2026 · This first-party announcement supports reporting Bing's own citation and grouping units as a separate layer. Citation Share does not expose competitor domains, make Bing data equivalent to another provider, disclose source-selection causes, or establish representative market share or causal impact. · Confidence: High
OpenAI says referral links from ChatGPT search automatically include utm_source=chatgpt.com, which publishers can review in web analytics when a visit reaches their site with that attribution intact.OpenAI publishers and developers FAQChecked 2026-09-07 · Current OpenAI publisher documentation · This first-party note supports checking identifiable ChatGPT referrals. It does not mean every answer impression produces a visit, every visit retains attribution, or a referral proves a ranking, citation, recommendation, conversion, or sale. · Confidence: High
Google Analytics announced that recognized AI-assistant referrals can receive the ai-assistant medium, AI Assistant default channel, and (ai-assistant) campaign values automatically.Google Analytics: What's newChecked 2026-09-07 · Google Analytics release note dated May 13, 2026 · This first-party release note supports a separate attributable-referral layer. It does not recover visits without usable referral information, classify all historical traffic, observe answer impressions, or attribute an on-site event or sale to a particular answer. · Confidence: High
Google Analytics defines AI Assistant for recognized assistant sources and excludes Google AI Overviews and AI Mode, whose visits remain in Organic Search.Google Analytics: default channel groupChecked 2026-09-07 · Current Google Analytics default-channel definitions · This first-party definition supports preserving Google Organic Search as a distinct row and limitation. The default channel cannot isolate AI Overviews or AI Mode visits from other Google organic traffic or identify visits with missing attribution. · Confidence: High
Explore client reporting →
Last updated 2026-09-07 · RankEcho · Operated by Nexus Decision Systems LLC