How to Explain p95 and p99 Latency to Stakeholders in English
Learn how to explain latency percentiles to non-technical stakeholders in English — why the average is misleading, and how to make p95 and p99 numbers meaningful to a business audience.
Latency percentiles are simple mathematically but genuinely confusing to explain, because the whole point of a percentile is that it deliberately ignores most of the data. Stakeholders who hear “average response time is 200ms” and then hear “but p99 is 3 seconds” often assume something is contradictory, when it isn’t — it’s just describing a different part of the distribution.
Key Vocabulary
Percentile — a value below which a given percentage of observations fall, so p95 latency means 95% of requests were faster than this number, and the remaining 5% were slower, which is the core idea stakeholders need before any specific number makes sense. “When I say p95 is 400 milliseconds, that means 95 out of every 100 requests finished in under 400 milliseconds — it’s not an average, it’s a cutoff point in the distribution.”
Long tail — the smaller portion of requests that take disproportionately longer than the typical request, which percentiles like p99 are specifically designed to surface, since averages can hide a long tail completely. “The average looks fine at 250 milliseconds, but that’s hiding a long tail — a small percentage of requests are taking 8 to 10 seconds, and those are exactly the requests a p99 metric would expose.”
Average masking (why averages mislead) — the way a mean value can look healthy even when a meaningful subset of users are having a genuinely bad experience, because a few very fast requests can offset a few very slow ones in the calculation. “The reason we stopped reporting only the average is average masking — one server region was ten times slower than the rest, but it was a small enough share of traffic that the overall average barely moved.”
Tail latency impact — the real-world consequence of slow outlier requests, particularly relevant because for many products, a single slow request in a chain of dependent calls can dominate the total experienced latency, disproportionate to how rare that slow request actually was. “Even though only 1% of our database calls hit this slow path, tail latency impact means a user making ten dependent calls per page load has roughly a 10% chance of hitting it at least once — so it affects far more users than the raw 1% suggests.”
Common Phrases
- “The average looks fine, but here’s what the long tail looks like.”
- “p95 means 95% of users had this experience or better — the other 5% had a worse one.”
- “This isn’t a contradiction — it’s the difference between typical performance and worst-case performance.”
- “A small percentage of slow requests can affect a much larger percentage of users, because of how tail latency compounds.”
- “We’re targeting p99 specifically because that’s what our most affected users actually experience.”
Example Sentences
Introducing percentiles to a stakeholder unfamiliar with the concept: “Instead of just giving you one number, I want to show you the distribution. The average is 220 milliseconds, but the p95 is 800 milliseconds — meaning 1 in 20 requests take almost four times longer than typical.”
Explaining why an average alone was misleading: “We were reporting average latency for months, and it looked stable. But once we added p99 tracking, we found a subset of requests taking over 5 seconds — a problem the average had been completely hiding.”
Justifying a focus on tail latency in a roadmap discussion: “I know p99 sounds like it’s about a small edge case, but with users making multiple API calls per session, a significant share of users hit at least one slow request somewhere in that chain — that’s why we’re prioritizing this.”
Professional Tips
- Always define percentile in plain terms before presenting a specific number — a stakeholder who doesn’t understand what p95 means will misinterpret every percentile figure that follows, no matter how clearly you present the data itself.
- Explicitly name the long tail when a percentile-based metric reveals something an average metric didn’t — this framing directly explains why two seemingly contradictory numbers (a good average, a bad p99) can both be accurate.
- Proactively address average masking before a stakeholder asks “but I thought the average looked fine” — getting ahead of that question builds credibility rather than looking like you’re walking back an earlier report.
- Translate tail latency impact into a user-facing statement whenever possible — “1% of requests are slow” sounds negligible, but “a meaningful share of user sessions experience at least one slow request” makes the actual stakes clear.
- Pick the percentile that matches the actual stakes of the conversation — p95 for general health, p99 or even p99.9 when discussing worst-case reliability commitments — and say explicitly why you chose that one.
Practice Exercise
- Write a plain-language definition of p95 latency for someone with no statistics background.
- Explain why a healthy average can coexist with a genuinely bad p99.
- Write a sentence connecting a small percentage of slow requests to a larger share of affected user sessions.