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

# Generating donor reports

> Turn approved field data into a polished, AI-written impact page in one click

A **donor report** is the payoff of everything upstream: your approved metrics, verified photos, and project story assembled into a beautiful public page, with a narrative written by Mirage's AI. Generation takes seconds; the credibility took you weeks of field work, which is exactly the point.

## Generate a report

**1. Start from the project**

On the project page, choose **Generate donor report**.

**2. Choose the scope**

Decide what data feeds the report:

* **All approved reports** (default) or a **custom selection** of specific field reports.
* **Approved contributions only** (recommended for donor-facing use) or all contributions including pending ones.
* **Live update** (the page re-aggregates current data every time it's viewed) or a **frozen snapshot** fixed at generation time.

**3. Personalize for a donor (optional)**

Link the report to a donor profile and the AI writes with their stated priorities in mind: a health-focused donor sees the health outcomes leading the story. See [Managing donors](https://mirage.mintlify.site/donor-reports/managing-donors.md).

**4. Generate**

Mirage aggregates the in-scope metrics, gathers consented photos with their AI captions, and writes the narrative. The finished report appears in the project's donor report list, ready to [share](https://mirage.mintlify.site/donor-reports/sharing-donor-reports.md).

## What the AI writes

Each generated report includes:

* **Hero summary**: the opening narrative ("Because of partners like you, 200 children now have clean water").
* **Highlight detail**: the most compelling metric story, told in a sentence or two.
* **Community highlights**: a grid of key stories and figures.
* **Impact funnel**: a staged progression where it fits the data (enrolled → attending → graduated).
* **Call to action**: headline, body, and button copy inviting the donor's next step.

Everything the AI writes is grounded in your approved data: the metrics, the photo summaries, and your project description. If you set a [custom AI guidance prompt](https://mirage.mintlify.site/projects/creating-projects.md#guiding-the-ai-optional) on the project, it shapes the tone and framing here too.

## Live vs. frozen

| Mode | Behavior | Use when |
| - | - | - |
| **Frozen snapshot** | Numbers and photos fixed at generation time | Quarterly updates, board packets, anything you want stable on the record |
| **Live update** | Aggregates recompute from current approved data on every view | An always-current link for a donor who checks in over time |

## Regenerating

Donor reports are cheap to make. As new reports are approved, generate a fresh one rather than waiting for a "perfect" moment. Each generation captures the report count, contribution stats, and revisit history as of that moment, and your project keeps the full history of generated reports.

> [!NOTE]
>
> A donor report never includes rejected contributions, media without face permission, or media marked internal-only, regardless of scope settings.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.