Help & guidesReports & statistics › Response time percentiles (P50/P90/P99)

Response time percentiles (P50/P90/P99)

3 min read · Reports & statistics

Response time percentiles (P50/P90/P99)

3 min read

Average response time lies - a single 5-second spike makes the average worse, but 99% of users have fast loading. Percentiles show you reality better.

How a percentile is calculated

Sort all checks for a period from the fastest to the slowest. P90 = the response time under which 90% of checks fall. Example with 1000 checks:

  • P50 (median) = the 500th value from the bottom. Half of the checks were faster, half slower.
  • P90 = the 900th value. 90% of checks were faster, only 10% slower.
  • P99 = the 990th value. 99% of checks were faster.

Where you see this

In the monitor detail, the Statistics tab, the "Response time" section:

WindowP50P90P99Max
24h142 ms298 ms1240 ms3140 ms
7d155 ms320 ms1500 ms8200 ms
30d160 ms340 ms2100 ms12400 ms

Practical reading

  • P50 rising = slower average response, you need to watch TTFB, DB queries
  • P99 rising faster than P50 = "tail latency" - occasional outlier requests, probably GC pauses, cold cache, or an unhandled peak
  • Max significantly higher than P99 = one-off extremes, you can ignore them (timeout, transient incident)

Alerting on latency

On the Business plan you can set an alert if P90 exceeds a threshold (e.g. 1000 ms). Detail: the Latency SLO tab. For Standard/Pro plans, you track latency manually in the chart.