> ## Documentation Index
> Fetch the complete documentation index at: https://docs.openlens.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Reports

> Client-ready PDF reports generated from your latest run.

A PDF snapshot of your project's visibility, suitable for sharing with clients. Generated on-demand from the latest usable run.

## How to generate

Open a project. Click **Download report**. OpenLens generates the PDF in the background and returns it as `application/pdf`. The same data the dashboard shows, in a portable format.

## The toggle: prompt-wise metrics

When you click Download report, there's a toggle for **prompt-wise metrics**. Off by default. On adds an Appendix to the PDF with every prompt in your prompt set grouped by topic, with per-prompt visibility %, average position, citation %, sentiment, and platforms count (how many of your project's tracked AI platforms produced a measurable response, e.g. X of up to 7).

Turn it on when you're auditing the prompt set with the client, when you want them to see which specific prompts drove a topic-level move, or when you're doing a quarterly deep review. Leave it off for monthly check-ins. With around 100 prompts and 5 metrics each, the Appendix is most of the PDF.

## What the report contains

### 1. Cover page

Title, tracked URL, generated date, platforms covered, prompt set used. Also the exact UTC capture time of the underlying run, so anyone reading later knows the snapshot.

### 2. Executive summary

Four KPI tiles: **visibility**, **share of voice**, **average position**, **mentions** (count out of total responses). Each tile shows your number plus a comparison line against the top competitor (e.g., "vs Profound: 10.0%", "#4 of 4 brands", "vs Profound: #2.5").

Below the tiles, a one-sentence **trend** callout: "Visibility has decreased by 13% since the previous measurement (1.5% → 1.3%)."

### 3. Platform comparison

Table with one row per active AI platform. Columns: your score, top competitor + their score, gap in points, status chip (Behind, Close, Even, Ahead). Tells the reader which platforms know you and which don't.

### 4. Competitive landscape

Table of every tracked brand ranked by AI visibility. Columns: rank, brand, visibility, share of voice, average position, sentiment. Your row is highlighted.

### 5. Topic performance

One row per topic. Columns: your score, the top competitor on that topic, their score, status (Gap, Close, etc.). Where the gaps are.

### 6. Citation & source analysis

Total citations across the run, total unique domains, and a category-level breakdown (Third Party / UGC / Competitor with %). Then the top 5 most-cited domains with citation count, category, and which platforms cited them.

The dashboard has the full breakdown. In the report we cap it at the top 5 to keep the page readable.

### 7. Brand mentions

Topics where your brand was mentioned, with the source URLs cited alongside those mentions. Each row: topic, mention count, best position, sentiment, platforms. Then an indented list of the specific URLs cited for that topic.

### 8. Engine patterns

One block per AI platform. Each block shows: average citations per response, average brand mentions per response, top sources for that platform, and a one-line summary of source-mix behaviour (e.g., "Heavily favors Third Party sources (91%)"). Reads like a scorecard for how each platform behaves on your topic set.

### 9. AI recommendations

Actionable insights generated per topic. Free-form paragraphs that read like a senior consultant's take: what's working, what's missing, what to do next, with specific platforms, competitor names, and citation sources called out.

**Where they come from.** For each topic, OpenLens assembles a structured snapshot: your visibility and average position, per-platform breakdown vs the best competitor on each platform, every competitor's scores, the top 5 cited domains for that topic, and the top 5 sentiment-analysis themes (extracted from the raw responses, with your sentiment per theme vs the best competitor's). That snapshot goes to Claude Haiku 4.5 with a single instruction: write a 2 to 3 sentence actionable insight naming specific platforms and sources, direct, no hedging. The model returns one paragraph per topic.

The same generator backs the `/api/insights/topic` endpoint. What you see in the report and what you fetch programmatically are the same paragraph.

### 10. Appendix: prompts by topic (toggle-gated)

Every prompt in your prompt set, grouped by topic. Columns: visibility %, avg position, citation %, sentiment, platforms (X of your project's tracked AI platforms, up to 7). Same metrics as the Prompts tab in the dashboard.

This section only appears when the prompt-wise metrics toggle is on.

## Where the data comes from

Computed from the same data as the dashboard, at the moment of export. The report locks in the snapshot. Re-generating after the next run produces a different report.

## How to use it

* Leave the toggle off for monthly check-ins. Turn it on when you're doing a quarterly audit or want clients to see which prompts drove a topic-level move.
* Send the PDF as-is to clients. The cover page has everything they need to know about scope and timing.
* The AI Recommendations section is the part clients actually read first. Make sure the prompts driving them are tight before you ship.

## API

`GET /api/reports/visibility?projectId=...` returns `application/pdf`. See [REST API](/api-reference/introduction) for the worked example.
