HackerTubewatch
Surprise me
Frame from "How NOT to Measure Latency" by Gil Tene Plays via YouTube's privacy-enhanced embed

"How NOT to Measure Latency" by Gil Tene

46 videos recommended on HN
YouTube
9 HN users recommended this talk9 months2015–2026 score 11
Years with an HN recommendation, 2007–2026

The canonical recommendation whenever percentiles, tail latency, load testing or averages come up, described by some as life changing.

Gil Tene of Azul Systems explains common pitfalls in measuring latency and response time, including why averages mislead and the problem of coordinated omission. He introduces open source tools like HdrHistogram for better measurement and reporting.

“This a life changing video by Gil Tene on this topic.” (HN, 2020)

4 strong recommendations · 5 recommendations · 10 citations · 1 critical · Talks · intermediate

20 Hacker News comments

From the HN archive; up to 20 kept per video, favoring different commenters. Recommendations first.

@vikiomega9 Aug 2016 Strongly recommends
on HN thread Throughput vs. Latency and Lock-Free vs. Wait-Free
Doesn't this depend on how "tuned" your subcomponents are? If I had a system that's supposedly heavily optimized, I would simply start seeing the worst-case latency on a higher percentile, 99.9th and so forth. Gil Tene has an excellent talk[1] on this. [1] [this video]
Excellent talk on worst-case latency and high percentiles
@Rafuino Apr 2019 Strongly recommends
on HN thread Averages Can Be Misleading: Try a Percentile (2014)
This topic always leads me to think about this great talk from Gil Tene on how NOT to measure latencies (basically, don't use averages!). [this video] I'm also a huge fan of how Dormando showed latency distributions in one of his recent Memcached Extstore posts. The default is 95th percentile but you can change the percentile to what matters to you (i.e. 99th percentile if you ask me!). Scroll down to see what he did and play with it. [link]
Great talk on why averages mislead for latency
@wmfiv Apr 2020 Strongly recommends
on HN thread Ask HN: Must Read from ACM Library?
This a life changing video by Gil Tene on this topic. Bottom line is because of the number requests to support a single customer "request", the high percentiles are the ones that actually matter. [this video]
High percentiles matter because one customer request fans out to many
@telotortium Feb 2017 Recommends
on HN thread Unlearning descriptive statistics
Gil Tene has an entire talk about this point called "How NOT to measure latency" ( [this video] ). In many circumstances, a web service (either server or client) has large numbers of dependencies, so a user only has to hit 95th-percentile latency for one dependency to have their overall latency significantly hurt. In other words, users may encounter the "rare" bad case on a majority of requests. Thus, even higher percentiles should be tightly controlled in order to truly keep a web service's overall latency under control.
Explains why users often hit rare bad-case latencies across dependencies
@latch Oct 2018 Recommends
on HN thread We can do better than percentile latencies
Worth watching is How NOT to Measure Latency: [this video] The speaker Gil Tene is also the author of the HdrHistogram which addresses this articles point: [link]
Talk by the author of HdrHistogram on latency measurement
@agallego May 2020 Recommends
on HN thread Kafka Removing Zookeeper Dependency
who cares about lower percentage tiers in the world of big data? what does the p30 or 50 even matter at large scale? See Gil Tene's talk on how not to measure latency. [this video] What matters is what most of your customers will get - p99, p999, p9999, p100.
Argues tail percentiles are what customers actually experience
@super_linear Feb 2025 Recommends
on HN thread How Not to Measure Latency (The P99 Lie) by GIL Tene
Tried to link to the specific timestamp in the video, where the p99 lie is discussed. Core takeaway for me was that most users of a page will experience the p99 latency of the system: [this video]
Most page users experience the system's p99 latency

Citations, criticism and jokes

@dang Oct 2015 Cites it
on HN thread How Not to Measure Latency
This is a summary of [this video] . It looks like a good summary, so I guess we won't replace the URL above, even though HN prefers original sources. We did change the title to that of the talk though.
Original talk that the submitted summary is based on
@hackercomplex Dec 2015 Cites it
on HN thread Tech-Hub Housing Costs
this is like.. average latency of 600ms.. sounds great when you tell your CEO but it still doesn't really tell the true story about how a huge portion of your customers are waiting 1.2s for their goddamn page to load. Max doesn't tell the whole story either, but it's pretty revealing. Show me that 99.9999 percentile baby! 4 point precision then we're talkin.. and none of this Coordinated Omission bullshit. [this video] </rant>
Cited on why averages hide tail latency
@sitkack Oct 2016 Cites it
on HN thread Sanic – Python 3.5+ web server that's written to go fast
You almost never want to use average as your metric when dealing with time. For time, the 95 or 99 percentile latency is going to be measure of how many requests out of a hundred a less than your metric. Esp when the thing you are measuring is a piece of larger system, which is the crux, because of how a resource in turn requests k-more resources. Each request has an equal chance of being over the latency percentile. Even at 10 requests, only 90% of sessions will be under the 99% latency. See also, Gil Tene [this video] A nice overview, [link] See also, [link]
Further reading on why averages mislead for latency
@the8472 Sep 2019 Cites it
on HN thread Deterministic thinking: a problem in how we think, not just in how we act
Some additional examples of people fixing instances of this problem Dissolving the fermi paradox [0], convolves distributions instead of multiplying point estimates of life/no life. How to NOT measure latency , looks at CDFs instead of slow/fast thresholds. [0] [link] [1] [this video]
Example of using CDFs instead of thresholds
@atombender Nov 2020 Cites it
on HN thread K6: Like unit testing, for performance
Read more
Does K6 deal with the coordinated omission problem? Gil Tene (Azul Systems) has argued convincingly [1] (slides [2]) that monitoring tools get latency measurement wrong because sudden spikes aren't represented correctly in timings because of averaging and the wrong use of percentiles. He argues that percentiles simply aren't useful, because, statistically, most requests will experience >= 99.99-percentile response times. All percentiles lie; the only truly useful and realistic number is, in fact, the 100th percentile. He also argues that the most revealing way to show latency is with a complete histogram. I haven't used K6 yet, but I've been looking for a good load-testing tool, and intend to try it out. [1] [this video] [2] [link]
Cited for argument that monitoring tools mismeasure latency spikes
@kryptiskt Sep 2021 Cites it
on HN thread Suspicious Discontinuities
I don't know if it's the correct talk, but those ideas are explored in "How NOT to Measure Latency by Gil Tene: [this video]
Explores the ideas under discussion
@dikei Dec 2022 Cites it
on HN thread Your load generator is probably lying to you
> I found this article hard to read; it felt like bulleted noted after watching a presentation and many of the statements lacked the context to back them up. Because it is. Here's the presentation. [this video]
Original presentation the article summarizes
@remram Sep 2023 Cites it
on HN thread Your nines are not my nines (2019)
I remember seeing a talk years ago about percentiles and how they lie: [this video] You should be exposing the maximum metric from your app, computing a percentile from an aggregated histogram is lossy. [edit: Found the link, "How NOT to Measure Latency" by Gil Tene]
Talk about how percentiles lie
@nerpderp82 Nov 2023 Cites it
on HN thread Four Kinds of Optimisation
Performance (Really) Matters by Emery Berger talks a lot about layout. [link] And the topic of Coordinated Omission, "How NOT to Measure Latency" by Gil Tene [this video] Injection slowness into an application to measure the relative impact of that portion of the application has really worked well for me.
Covers coordinated omission in latency measurement
@mrngm Mar 2026 Cites it
on HN thread Queueing Requests Queues Your Capacity Problems, Too
That reminds me of this talk[0] by Gil Tene called "How NOT to Measure Latency" at the Strangeloop conference in 2015 (or read this blog post[1] that contains the most important points). [0] [this video] [1] [link]
Related Strange Loop talk on measuring latency

Video list and Hacker News comment labels from HackerTube (prompted by @karpathy), released under ODC-By 1.0, built on the open-index/hacker-news archive. Hacker News data is provided by Y Combinator; comments remain the work of their authors. Video titles, channel names and thumbnails belong to their creators and are shown via YouTube. HackerTube Watch is an unofficial edition. Data export of 2026-10-31.

Keyboard shortcuts

/
Search
j k
Next / previous video
r
Surprise me
l
Like (video page)
w
Watch later (video page)
?
This help
Esc
Close