---
title: "Default insights library | Grafana Cloud documentation"
description: "Learn about the default insights library included with the knowledge graph"
---

> For a curated documentation index, see [llms.txt](/llms.txt). For the complete documentation index, see [llms-full.txt](/llms-full.txt).

# Default insights library

The knowledge graph uses a curated library of base rules to analyze incoming time-series data and provide default insights. These insights map to the standard categories (Saturation, Amend, Anomaly, Failure, and Error). For category definitions, severity levels, and UI ring behavior, refer to [Insights categories](/docs/grafana-cloud/knowledge-graph/reference/insights-categories/).

In terms of implementation, the knowledge graph operates with two main sets of rules that generate insights: base rules and framework-specific rules. Base rules focus on common request and resource metrics across different platforms and frameworks.

The following table summarizes base insights raised by the base rules.

Expand table

| Metric type | Insight                   | Category   |
|-------------|---------------------------|------------|
| Request     | RequestRateAnomaly        | Anomaly    |
|             | LatencyAverageAnomaly     | Anomaly    |
|             | LatencyAverageBreach      | Error      |
|             | LatencyP99ErrorBuildup    | Error      |
|             | ErrorRatioAnomaly         | Anomaly    |
|             | InboundClientErrorAnomaly | Anomaly    |
|             | ErrorRatioBreach          | Error      |
|             | ErrorBuildup              | Error      |
| Logging     | LoggerRateAnomaly         | Anomaly    |
|             | ErrorLogRateBreach        | Error      |
| Resource    | Saturation                | Saturation |
|             | ResourceRateAnomaly       | Anomaly    |
|             | ResourceRateBreach        | Error      |
|             | ResourceMayExhaust        | Error      |

## Default KPI-based insights

The following examples show how common KPIs map to default insights and how those insights are detected.

Expand table

| KPI               | KPI metric                | KPI metric description                                                                  | Insight                  | Insight description                                                                                                                                                  |
|-------------------|---------------------------|-----------------------------------------------------------------------------------------|--------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Request rate      | `asserts:request:rate5m`  | Request rate over the last 5 minutes.                                                   | `RequestRateAnomaly`     | Uses a 26‑hour baseline and a standard‑deviation model to detect spikes or drops. Triggers when the metric stays outside the bounds for 5 minutes.                   |
| Latency (average) | `asserts:latency:average` | Average latency computed as `rate(time_takencount[5m]) / request_rate_5m`.              | `LatencyAverageBreach`   | Uses the last 7 days to set a threshold at the 95th percentile. Triggers when the threshold is exceeded for 5 minutes.                                               |
| Latency (average) | `asserts:latency:average` | Average latency computed as `rate(time_takencount[5m]) / request_rate_5m`.              | `LatencyAverageAnomaly`  | Uses a 26‑hour baseline and a standard‑deviation model to detect spikes or drops. Triggers when the metric stays outside the bounds for 5 minutes.                   |
| Latency (p99)     | `asserts:latency:p99`     | 99th percentile of the latency histogram over a 5‑minute window.                        | `LatencyP99ErrorBuildup` | Uses the last 7 days to set a 95th‑percentile threshold. Tracks how many minutes exceed the threshold in a 1‑hour window and triggers when the count passes a limit. |
| Error ratio       | `asserts:error:ratio`     | Error count in the last 5 minutes divided by total request count in the last 5 minutes. | `ErrorRatioBreach`       | Uses the last 24 hours to set a 75th‑percentile threshold. Triggers when the error ratio exceeds that threshold.                                                     |
