Skip to content
gohacks.dev
Performance

Percentile Calculator

Paste response times or any numbers to get p50, p75, p90, p95, p99 and p99.9, min, max, mean and standard deviation, with a histogram.

Free · No sign-up · Your inputs stay in your browser

Input

Calculate percentiles (p50, p95, p99) of a sample

Output

20 values

min96
p50 (median)102.5
p75109
p90152
p95394.5
p991070.9
p99.91223.09
max1240
mean173.25
standard deviation257.136
9618
210.40
324.81
439.20
553.60
6680
782.40
896.80
1011.20
1125.61

Latency is reported in percentiles because averages hide the tail: one slow request in the sample above pulls the mean far above what a typical user saw, and p99 is what one request in a hundred waits for. With few samples, high percentiles are just the largest values; p99.9 needs thousands of observations to mean anything.

Runs in this browser. Nothing you paste is sent to a server.

Why percentiles, not averages

Latency distributions have long tails: a few slow requests pull the mean far above what a typical user saw, while the median hides them completely. p95 and p99 describe the experience of the slowest one request in twenty or in a hundred, which is what service level objectives are usually written against. Google's SRE book chapter on SLOs explains the choice.

Sample size

A p99 from 50 samples is the second-largest value and means little. Percentiles need enough observations, thousands for p99.9, and percentiles of percentiles (averaging p99s across servers) are not valid; merge raw data or histograms instead.

Share

Frequently asked questions

What is the difference between the two methods?
Nearest rank returns an actual value from the data; interpolation estimates between two values. They differ noticeably only for small samples.
Should I alert on the mean response time?
Usually not. Alert on a high percentile, or on the share of requests slower than a threshold, which tracks what users feel.
Is what I paste sent anywhere?
No. The tool runs entirely in your browser with JavaScript. Nothing you type or paste is sent to our server or stored.

Keep planning

Similar tools