Overview of reporting and analytics for developers
Summarize
Summary of Overview of reporting and analytics for developers
ServiceNow applications often require reporting capabilities that provide actionable insights to drive change. Reporting typically involves displaying data from tables such as Incident [incident], while key performance indicators (KPIs) track data trends over time using the Performance Analytics application.
Show less
The ServiceNow AI Platform® supports two main user interfaces for reporting and analytics:
- Core UI: An older interface featuring the Reporting application for table-based data and Performance Analytics (PA) Widgets for indicator data. Reports and PA widgets can be placed on responsive dashboards.
- Platform Analytics: A newer UI that supports Data Visualizations from multiple data sources, which can be combined with filters on Platform Analytics dashboards. It is built on the Next Experience UI Framework and accessible to developers and non-developers alike.
For clarity, "report" and "reporting" typically refer to Core UI functionalities, while "visualization" relates to Platform Analytics.
Best Practices for Developers
- Avoid reporting on large tables without filters such as date ranges, as this can degrade performance.
- Limit grouping by fields with many unique values to prevent performance issues.
- If encountering long running transaction warnings, add more filters to reduce data load.
- Schedule regular exports and email distributions for reports, visualizations, or dashboards that require frequent sharing.
Options for Displaying Multiple Visualizations
Developers have several approaches to present multiple data visualizations on a single page within ServiceNow:
- Platform Analytics Experience: Build visualizations and dashboards entirely within this UI without requiring developer skills, ideal for quick setup.
- Generic UI Builder Pages: Create data visualization components, filters, and other elements manually, offering maximum customization at the cost of complexity.
- Hybrid Approach: Design dashboards and visualizations in Platform Analytics, then embed them in UI Builder pages using the Dashboard page template. This allows leveraging Platform Analytics features while enabling partial page customization.
- Technical Dashboards: Develop dashboards that are available in the dashboard library, can be shared, and integrated directly inside UI Builder for advanced developer control.
Practical Impact for ServiceNow Customers
Understanding and selecting the appropriate reporting or visualization interface enables customers to create effective, performant, and maintainable analytics solutions. Following best practices ensures system responsiveness and scalability. Additionally, the flexible options for embedding visualizations support diverse use cases, from simple reporting needs to complex, customized analytics experiences tailored to organizational workflows.
Most applications that you create have some level of reporting requirements. Reports should be actionable to drive change.
"Reporting" generally refers to showing the data inside facts tables like Incident [incident]. You can also create key performance indicators (KPIs) to track changes in this data over time, through the Performance Analytics application.
- The older Core UI technology. This UI includes the Reporting application, which only shows data directly from tables, and PA Widgets, which show data from Performance Analytics indicators. Both reports and PA widgets can be placed on Core UI responsive dashboards. For more information, see Reporting, dashboards, and Performance Analytics in the Core UI.
- The newer Platform Analytics technology. This UI includes Data Visualizations, which let you report on data from any source. These visualizations can be placed on Platform Analytics dashboards, along with Platform Analytics filters. For more information, see Platform Analytics experience.
All Platform Analytics objects are rooted in the Next Experience UI Framework and are available to developers. However, a non-developer can still build their own objects through the Platform Analytics experience, without using UI Builder. For more information, see Platform Analytics experience.
Follow these guidelines when building reports or data visualizations:
- Creating reports or visualizations on large tables can negatively impact performance. Be sure to filter by a date range or other limiting criteria rather than showing all records on the table.
- Grouping by fields that contain many possible values can negatively impact performance.
- If loading a report or visualization gives a Long running transaction timer message, consider adding more data filters to reduce the load time.
- If you need to export a report, data visualization, or dashboard on a regular basis, schedule the export and email.
- Create the data visualizations and the dashboards entirely inside the Platform Analytics experience. This approach does not require a developer role or special technical knowledge, and probably should be explored before you try a more complex solution.
- Create data visualization components in a generic UI Builder page, along with filters and other components. This approach gives you the most freedom as a developer, but also requires the most configuration.
- Create the data visualizations and the dashboards inside the Platform Analytics experience, but then place the dashboards inside UI Builder pages using the Dashboard page template. This approach lets you use the convenience and special features of the Platform Analytics experience to create dashboards, data visualizations, and filters in your own experiences/workspaces. This approach also gives you the freedom to customize the page configuration partially. For more information, see Creating Platform Analytics pages in your own workspace.
- Create a technical dashboard and populate it inside UI Builder. This approach is almost the same as creating your own UI Builder page from scratch, but the dashboard is available in the dashboard library, has dashboard details, and can be shared like other dashboards. For more information, see Technical dashboards.