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

# Schedule reports

> Set up automated recurring reports for GitHub, GitLab, Bitbucket, and Azure DevOps with customizable schedules, filters, and delivery channels including email, Slack, Discord, and Teams.

export const ProPlanBadge = ({tip = "This feature is available as part of the Pro, Pro+ and Enterprise plans. Please refer to our pricing page for more information about our plans and features.", title = "Pro Plan", cta = "Read more", href = "https://coderabbit.ai/pricing", disabled = false}) => {
  return <Tooltip tip={tip} cta={cta} href={href}>
        <Badge icon="shield-check" disabled={disabled || undefined}>
            {title}
        </Badge>
    </Tooltip>;
};

<ProPlanBadge />

CodeRabbit Pro offers automated recurring reports that provide insights into your organization's activities. These reports can be customized and delivered through various channels to help teams stay informed about development progress.

<Tip>
  For a conceptual overview of reports in CodeRabbit, see [Generate
  reports](/management/reports).
</Tip>

## Setting up a recurring report

<Steps>
  <Step title="Navigate to Recurring Reports">
    Go to **Recurring Reports** in the [CodeRabbit
    dashboard](https://app.coderabbit.ai/reports/recurring)
  </Step>

  <Step title="Create new report">Click **Create Report**</Step>

  <Step title="Configure settings">
    Configure the following settings based on your team's needs
  </Step>
</Steps>

### Schedule configuration

<img src="https://mintcdn.com/coderabbit/69LGK0BhaHIxrC15/images/guides/assets/images/report-params-f367cab2fedf802ef4ad557bf4cc3da8.png?fit=max&auto=format&n=69LGK0BhaHIxrC15&q=85&s=2876cdcee12cd3b332777e166123c50a" alt="Schedule Configuration" width="1013" height="767" data-path="images/guides/assets/images/report-params-f367cab2fedf802ef4ad557bf4cc3da8.png" />

The schedule configuration allows you to set precise timing for your reports:

#### Frequency options

<Tabs>
  <Tab title="Days of Week">
    * Select any combination of days (Sun-Sat)
    * Set frequency (every 1-3 weeks)
    * Ideal for weekly team syncs or sprint reviews
  </Tab>

  <Tab title="Days of Month">
    * Select specific dates (1-31)
    * Special date handling:
      * **31st**: Runs on the last day of every month
      * **30th**: Skips February
      * **29th**: Only runs in February during leap years
  </Tab>
</Tabs>

#### Time settings

* Set specific time for report generation
* Choose from comprehensive timezone list (e.g., America/New\_York)
* Reports run at the specified time in the selected timezone

<Check>
  Choose a time that works for all team members, especially for distributed
  teams across different time zones.
</Check>

### Report parameters

Reports can be filtered using multiple parameters, match pull requests using the **IN** option and exclude pull requests using the **NOT\_IN** option:

<CardGroup cols={2}>
  <Card title="Repositories" icon="folder">
    Select specific repositories to monitor
  </Card>

  <Card title="Labels" icon="tag">
    Filter by labels with operators:

    * **IN**: Match any selected label
    * **NOT\_IN**: Exclude any pr with select label
    * **ALL**: Match all selected labels
  </Card>

  <Card title="Users" icon="user">
    Filter by specific users
  </Card>

  <Card title="Teams" icon="users">
    Filter by organization teams

    <Info>Team filtering is not available for GitLab repositories</Info>
  </Card>
</CardGroup>

<Info>
  Each parameter can be:

  * Added or removed as needed
  * Combined with other parameters for precise filtering
  * Modified using different operators
</Info>

### Report content

Reports include comprehensive PR information:

<AccordionGroup>
  <Accordion title="PR metadata">
    * Title and description
    * Creation and last activity dates
    * Status (merged, mergeable, draft)
    * State (open, closed, merged)
  </Accordion>

  <Accordion title="Collaboration details">
    * Labels and reviewers
    * Comments and discussions
    * Team associations
  </Accordion>

  <Accordion title="Additional context">
    * Repository context
    * Author information
  </Accordion>
</AccordionGroup>

<Info>
  PRs are marked as stale after 168 hours (7 days) of inactivity. This helps
  identify potential workflow bottlenecks.
</Info>

### Report templates

CodeRabbit offers several built-in templates:

<CardGroup cols={2}>
  <Card title="Daily Standup Report" icon="calendar">
    A concise summary of pull requests and activities
  </Card>

  <Card title="Sprint Report" icon="list-check">
    A structured overview of sprint goals, completed tasks, in-progress work,
    and blockers
  </Card>

  <Card title="Release Notes" icon="rocket">
    A high-level changelog with summary and significant changes
  </Card>

  <Card title="Custom Templates" icon="paintbrush">
    Create your own format using prompts. Allows for endless customization such
    as native language reporting (Japanese, Spanish, French, etc.), custom
    formatting, custom titles, and more. [Learn more about custom reports
    →](/guides/custom-reports)
  </Card>
</CardGroup>

Example custom prompt:

```text lines Custom Prompt wrap icon="text" theme={null}
Please provide a summary of:- All pull request activities- Related issues and comments- Code review discussions- Quality gate statusDo not include:- Bot conversations- Sequence diagrams
```

### Communication channels

Configure where your reports will be delivered:

<img src="https://mintcdn.com/coderabbit/69LGK0BhaHIxrC15/images/guides/assets/images/report-platforms-a696bfc2f918addcfb1d762df8a8f491.png?fit=max&auto=format&n=69LGK0BhaHIxrC15&q=85&s=1d90d45c6e95236fb4386c9e91b78206" alt="Report Delivery Platforms" width="1000" height="455" data-path="images/guides/assets/images/report-platforms-a696bfc2f918addcfb1d762df8a8f491.png" />

<Tabs>
  <Tab title="Email">
    * Enter individual email addresses
    * Use distribution lists for team-wide delivery
  </Tab>

  <Tab title="Slack/Discord">
    <Steps>
      <Step title="Connect workspace">
        Connect your workspace through OAuth
      </Step>

      <Step title="Select channels">
        Select target channels
      </Step>

      <Step title="Bot installation">
        CodeRabbit bot will be installed automatically
      </Step>
    </Steps>

    <Info>
      If installation fails check the [slack service](https://slack-status.com/) or [discord status](https://discordstatus.com/) page for any outages.
    </Info>
  </Tab>

  <Tab title="Microsoft Teams">
    <Steps>
      <Step title="Create webhook">
        Create a webhook in your Teams channel
      </Step>

      <Step title="Add URL">
        Add the webhook URL to CodeRabbit
      </Step>

      <Step title="Select channels">
        Select target channels
      </Step>
    </Steps>
  </Tab>
</Tabs>

<Check>
  Create separate reports if you need to send to multiple channels with
  different formats. Learn more about [custom report
  formats](/guides/custom-reports).
</Check>

## Managing reports

### Preview reports

<Tip>
  Test your configuration using the **Preview Report** button to generate a
  sample report instantly.
</Tip>

### Grouping options

Reports can be organized hierarchically using groups and subgroups:

<Tabs>
  <Tab title="Primary Grouping">
    Select from these options to organize your main report structure:

    * **None**: No grouping, flat list of items
    * **Repository**: Group by source repository
    * **Label**: Group by PR labels
    * **Team**: Group by team ownership
    * **User**: Group by PR author
  </Tab>

  <Tab title="Subgrouping">
    After selecting a primary group, you can add a secondary level of organization:

    * Choose any remaining grouping option for further categorization
    * Subgroups create a nested hierarchy within primary groups
    * Select "None" to use only primary grouping
  </Tab>
</Tabs>

<Check>
  Choose grouping options that match your team's workflow. For example:

  * Use Repository → Team for large multi-team organizations
  * Use User → Label to track individual contributions by type
  * Use Team → Repository to monitor team activity across repos
</Check>

### Report lifecycle management

Control your reports through their entire lifecycle:

#### Editing reports

<Steps>
  <Step title="Make changes">
    Make your desired changes to any configuration settings
  </Step>

  <Step title="Save changes">
    Click the **Save** button to apply your changes
  </Step>

  <Step title="Changes take effect">
    Changes take effect from the next scheduled run
  </Step>
</Steps>

<Check>
  Remember to click **Save** when you're done making changes. Your modifications
  will be discarded if you navigate away without saving.
</Check>

#### Disabling reports

Toggle the **Active** switch to temporarily pause a report.

Disabled reports:

* Maintain their configuration
* Skip scheduled runs
* Can be re-enabled at any time
* Show "Disabled" status in the dashboard

#### Deleting reports

<Steps>
  <Step title="Click delete">
    Click the **Delete** button (trash icon) next to the report
  </Step>

  <Step title="Confirm deletion">Confirm deletion in the modal</Step>
</Steps>

<Info>
  This action is permanent and cannot be undone. All report history and
  configuration will be removed.
</Info>

<Warning>
  Deleting a report will immediately stop all scheduled runs and remove access
  to historical reports. Consider disabling instead of deleting if you might
  need the report again.
</Warning>

## Best practices

<CardGroup cols={3}>
  <Card title="Scheduling" icon="clock">
    * Align report timing with your team's workflow
    * Consider timezone differences for distributed teams
  </Card>

  <Card title="Content" icon="file-text">
    * Keep prompts focused on actionable information
    * Use grouping to improve readability
    * Exclude unnecessary details that may create noise
  </Card>

  <Card title="Distribution" icon="share">
    * Use channels your team actively monitors
    * Consider creating separate reports for different audiences (e.g., management vs. development team)
  </Card>
</CardGroup>

## Related resources

<CardGroup cols={3}>
  <Card title="Custom Reports" icon="paintbrush" href="/guides/custom-reports">
    Create personalized report formats
  </Card>
</CardGroup>

## What's next

<CardGroup cols={1}>
  <Card title="Customize reports" icon="paintbrush" href="/guides/custom-reports" horizontal>
    Learn how to create custom report formats and prompts
  </Card>
</CardGroup>
