Reporting and Dashboards in ServiceNow
Introduction
Data is only valuable if it's visible. ServiceNow's reporting engine transforms raw record data into charts, tables, and dashboards that help teams understand workload, identify trends, and make decisions. This guide covers the full reporting stack available to administrators.
Report Types
| Type | Best For |
|---|---|
| List | Raw record data with columns |
| Bar chart | Comparing counts across categories |
| Horizontal bar | Long category labels |
| Pie / Donut | Proportion of a whole (limit to 5-7 slices) |
| Line | Trends over time |
| Area | Cumulative trends |
| Spline | Smoothed time-series |
| Time Series | Built-in date grouping by day/week/month |
| Pivot table | Multi-dimensional cross-tab |
| Heatmap | Volume by two dimensions |
| Score card | Single KPI value |
| Funnel | Stage-based conversion |
| Bubble | Three-dimensional comparison |
| Box plot | Distribution and outliers |
Creating a Report
All > Reports > Create New
Step 1: Data
- Table: The source table (e.g.,
incident) - Use a report source: For multi-table or pre-built queries
- Conditions: Filter the records included (e.g.,
Active = true)
Step 2: Type
Select the visualization type.
Step 3: Configure
Depending on the type:
- Group by: The dimension for bar/pie charts (e.g.,
Assignment group) - Stack by: Second dimension for stacked bars
- Trend by: Date field for time-series
- Aggregation: COUNT, SUM, AVG, MIN, MAX
Step 4: Style
- Title, colors, legend placement
- Show/hide data labels
- Y-axis range and formatting
Report Sources
For complex, multi-table reports, create a Report Source (sys_report_source):
- Defines a joined query across multiple tables
- Reusable across many reports
- Example: Incidents joined with Task SLA — enables a single report showing incident details alongside SLA breach status
Scheduling and Distributing Reports
Schedule reports to email stakeholders automatically:
Report record → Schedule tab
- Frequency: Daily, Weekly, Monthly
- Run as: Service account
- Recipients: Users, Groups, or email addresses
- Format: PDF, Excel, CSV, or inline HTML
Scheduled reports respect the recipient's ACLs — they see only records they have permission to view.
Homepages vs. Dashboards
| Feature | Homepage | Dashboard |
|---|---|---|
| Interface | Classic UI (older) | Now Platform UI |
| Widgets | Gauges, report widgets | Reports, scoreboards, URL widgets |
| Sharing | Per-user | Roles-based, audience targeting |
| Recommended | Legacy support | New development |
Creating a Dashboard
All > Dashboards > New
- Add tabs for logical grouping (e.g., Incident Overview, SLA Performance)
- Add widgets from your saved reports
- Set audience to share with roles or groups
- Pin a dashboard as the default landing page for a role
Sharing Reports
Reports can be shared at several levels:
- Private: Only you can see it
- Shared with specific users/groups: Named access
- Published to a group: Visible to all group members
- Available in catalog: Discoverable via Report search
Use the Published flag to make a report available in the report list for others to find and run.
Gauges on Lists and Forms
Beyond dashboards, you can embed reports as Gauges on list views — a visual count in the list header showing how many records match defined criteria:
P1 Open: 3 | P2 Open: 12 | SLA Breached: 1
Gauges give at-a-glance counts without opening a separate dashboard.
Performance Analytics (Brief Overview)
Standard reports are point-in-time — they show current data. Performance Analytics adds historical trending:
- Collects snapshots of data over time (daily, weekly)
- Enables "how many P1 incidents did we have last quarter" type queries
- Provides widgets for KPI scores, time-series charts, and breakdowns
- Requires the Performance Analytics plugin (licensed separately)
For operational metrics that matter over time (resolution rates, SLA compliance trends, backlog growth), Performance Analytics is the right tool. For operational status today, standard reports suffice.
Best Practices
- Limit pie charts to 5-7 segments — more becomes unreadable
- Use time-series charts instead of bar charts for trend data
- Always set meaningful titles that explain what the report shows
- Schedule executive-facing reports in PDF format
- Test scheduled reports by running manually first
- Archive old reports rather than deleting — historical references are valuable
- Build dashboards from the perspective of the audience, not the data model
Conclusion
ServiceNow's reporting engine is powerful but easy to misuse. The most effective reports answer a specific question for a specific audience. Start with the business question, then choose the visualization. Dashboards built this way drive decisions; dashboards built around available data generate impressive-looking displays that nobody acts on.