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

# Analytics Reports

> Create, download, schedule, and manage custom analytics reports.

export const RelatedPages = ({pages = []}) => {
  if (pages.length === 0) return null;
  return <>
      <br />
      <strong>Related articles</strong>
      <CardGroup cols={2}>
        {pages.map(page => <Card title={page.title} href={page.href} key={page.href} />)}
      </CardGroup>
    </>;
};

export const InternalNote = ({children}) => {
  const [isInternal, setIsInternal] = useState(false);
  useEffect(() => {
    const user = window.__mintlify_user__;
    if (user?.groups?.includes("internal")) setIsInternal(true);
  }, []);
  if (!isInternal) return null;
  return <div className="internal-note">
      <strong className="internal-note-title">🔒 Internal Note</strong>
      <div>{children}</div>
    </div>;
};

export const RoleBadge = ({roles = []}) => {
  const colorMap = {
    Admin: "yellow",
    Manager: "blue",
    Learner: "green",
    "Co-editor": "purple"
  };
  return <>
      {roles.map(role => <span key={role}><Badge color={colorMap[role] || "gray"} size="sm" shape="pill">{role}</Badge>{" "}</span>)}
    </>;
};

<RoleBadge roles={["Admin"]} />

## Overview

**Admin → Analytics → My Reports** (`/admin/2/reports`) lets you create reusable report configurations, download them on-demand, or schedule recurring delivery to recipients.

***

## Reports table

The reports table shows all your saved reports:

| Column                   | Description                        |
| ------------------------ | ---------------------------------- |
| **Report Name**          | Name you gave the report           |
| **Report Type**          | Type of analytics data             |
| **Last Generation Time** | When the report was last generated |
| **Download**             | Download the latest report         |
| **Schedule**             | Configure recurring delivery       |
| **Delete**               | Remove the report                  |

***

## Creating a report

<Steps>
  <Step title="Open My Reports">
    Go to **Admin → Analytics → My Reports**.
  </Step>

  <Step title="Click Create Report">
    Click the **Create Report** button.
  </Step>

  <Step title="Configure the report">
    Select the report type, the columns to include, and apply filters to narrow the data.
  </Step>

  <Step title="Name and save">
    Give the report a name and save it.
  </Step>
</Steps>

***

## Downloading reports

Click the **download icon** on any report row to generate it with current data. The report downloads as a file to your device.

***

## Scheduling recurring delivery

Set up automatic, recurring report delivery to selected recipients.

<Note>
  Scheduled reports require the scheduled reports feature flag to be enabled.
</Note>

### Setting up a schedule

<Steps>
  <Step title="Open the schedule drawer">
    Click the **schedule icon** on a report row.
  </Step>

  <Step title="Name the schedule">
    Enter a name for this delivery schedule.
  </Step>

  <Step title="Set frequency">
    Select how often the report is delivered:

    | Frequency   | Options                                     |
    | ----------- | ------------------------------------------- |
    | **Daily**   | Every day at the specified time             |
    | **Weekly**  | Pick which days of the week                 |
    | **Monthly** | Pick a specific day, or "last day of month" |
  </Step>

  <Step title="Set time and timezone">
    Select the delivery time and timezone.
  </Step>

  <Step title="Add recipients">
    Select users who should receive the report.
  </Step>

  <Step title="Customize email (optional)">
    Optionally set a custom email subject and message body. While you have not edited these fields, they stay in sync with the frequency you select — for example, picking **Weekly** updates the auto-generated subject and message to match. As soon as you type your own subject or message, your custom text is preserved and no longer changes when you switch frequencies.
  </Step>

  <Step title="Save">
    Save the schedule. Delivery begins at the next scheduled time.
  </Step>
</Steps>

### Next-run preview

Below the cadence settings, the drawer shows when the report will run next:

* **Active schedule:** A blue **Next run: {date}** banner with a clock icon.
* **Paused schedule:** A grey **Paused — next run when resumed: {date}** banner with a pause icon, so you can see exactly when delivery would resume after you unpause.

### Save button behavior

When you edit an existing schedule, the **Save** button stays disabled until you change at least one field — including the recipients list. This prevents accidental no-op saves and makes it clear when you have unsaved changes. In create mode, **Save** is always enabled once required fields are filled.

### Managing schedules

| Action        | What it does                                                                                     |
| ------------- | ------------------------------------------------------------------------------------------------ |
| **Pause**     | Temporarily stop deliveries. The next-run preview switches to the paused style until you resume. |
| **Resume**    | Restart a paused schedule                                                                        |
| **Edit**      | Update frequency, recipients, or email content. Save is enabled only after a change.             |
| **Send Test** | Send a test delivery immediately to verify setup                                                 |
| **Delete**    | Permanently remove the schedule (with confirmation)                                              |

***

## Delivery history

View delivery logs for each schedule to verify successful delivery:

| Field                    | Description                        |
| ------------------------ | ---------------------------------- |
| **Execution timestamp**  | When the delivery was triggered    |
| **Status**               | Success or failure                 |
| **Recipient count**      | How many recipients were included  |
| **Per-recipient status** | Delivery status for each recipient |

<InternalNote>
  Key files: `features/AnalyticsReports/components/AnalyticsReportsTable/AnalyticsReportsTable.tsx`, `features/AnalyticsReports/ScheduleDrawer/ScheduleDrawer.tsx`, `features/AnalyticsReportsGenerator/components/AnalyticsReportsGeneratorFormDialog.tsx`.
</InternalNote>

<RelatedPages
  pages={[
{ href: "/admin/analytics-and-reports", title: "Analytics & Reports" },
{ href: "/admin/training-analytics", title: "Training Analytics" },
{ href: "/admin/content-management", title: "Content & Learning Management" },
]}
/>
