Skip to content

Reports Overview

Reports are automated analytics summaries generated by AI agents that query your connected analytics platforms. OpsTower supports report generation from PostHog, Amplitude, and Mixpanel connections, producing structured data and formatted output that you can view, download, and discuss with an AI agent.

Each report includes several sections that together provide a comprehensive snapshot of your product analytics.

Reports cover the following key metrics for the reporting period:

  • Unique users
  • Total sessions
  • New users
  • Returning users
  • Average session duration
  • Top pages

Every metric includes period-over-period comparisons with percentage changes:

  • Today vs. yesterday – shows daily movement
  • Today vs. 7 days ago – shows weekly trends

These comparisons help you quickly identify whether metrics are trending up or down relative to recent baselines.

Metrics that changed by more than 30% compared to the previous period are automatically flagged as anomalies. This draws attention to significant shifts that may require investigation, whether they represent unexpected growth, sudden drops, or irregular patterns.

Each report includes a natural language summary written by the AI agent. The summary analyzes the data holistically and highlights:

  • Key trends across metrics
  • Areas of concern (e.g., declining engagement, traffic drops)
  • Notable insights (e.g., a spike in new users correlating with a campaign launch)

Reports are stored in two formats:

  • JSON – structured data containing all metrics, comparisons, and anomaly flags, suitable for programmatic access
  • HTML – a formatted version designed for viewing in the browser and for email delivery

Report files are stored in Cloudflare R2 (object storage), and report metadata (status, timestamps, connection references) is stored in Cloudflare D1 (database).

Built-in reports work well out of the box, but you can shape how a report behaves from the General tab in the report settings (and when first creating the report). Two free-text fields let you steer the AI agent:

Use Instructions to change the report’s default behavior. These instructions override the report type’s built-in guidance — including the reporting window — wherever they conflict. The required report sections are always produced regardless.

Examples:

  • “Ignore today’s data and only analyze the previous day.”
  • “Exclude weekends from all day-over-day comparisons.”

Use Extra Guidance to add to the report’s default behavior without replacing it. This guidance extends and complements the defaults — it’s the right place for an extra thing you always want checked or emphasized, while keeping everything the report normally does.

Examples:

  • “Always call out any metric that moved more than 20% week-over-week.”
  • “Pay special attention to checkout-flow errors.”

Both fields are optional, support up to 20,000 characters, and can be edited at any time. Leave them empty to use the report’s defaults.

Auto-Ticketing (Systems Operations Reports)

Section titled “Auto-Ticketing (Systems Operations Reports)”

Systems Operations reports can automatically create tickets in your ticketing system (e.g., Linear) for issues discovered during the report run. This means overnight errors and bugs are already tracked in your project management tool before your team starts the day.

  1. When creating or editing a Systems Operations report, add a tickets connection (e.g., Linear) to the report’s data sources.
  2. Go to the Ticketing tab in the report settings.
  3. Toggle Create tickets for found issues on.
  4. Choose a scope:
    • All found issues – a ticket is created for every issue the agent discovers
    • Code-related issues only – tickets are created only for issues classified as CODE_BUG (requires a source code connection for best results)
  5. Save the settings.

When the report agent runs with auto-ticketing enabled:

  • The agent investigates logs, errors, databases, and (optionally) source code as usual.
  • For each issue that matches the configured scope, the agent creates a ticket with the issue title, classification, severity, relevant evidence, and a recommended action.
  • The agent uses your ticketing instructions (configured on the Linear connection) to follow your team’s conventions for teams, labels, and priority.
  • Created tickets are linked directly from the report’s Issues Found section, so you can jump from the report to the ticket.
  • A tickets connection (e.g., Linear) must be in the report’s data sources.
  • For the “code-related only” scope, adding a source code connection (e.g., GitHub) improves accuracy, though the agent can still classify issues without it.

The number of reports you can generate per month depends on your plan:

Plan Reports per Month
Explore (Free) 5
Operate (Pro) 31
Scale (Business) Unlimited

Usage resets monthly (UTC). See Plans and Limits for full details on all plan features.