Dev.to
6/25/2026

p50, p95, p99: What Latency Percentiles Actually Mean for Your Node.js App
Short summary
Latency averages hide tail latency: a single slow request blocks Node.js's single-threaded event loop, affecting all concurrent users. Monitor p50 (median), p95, and p99 percentiles instead. Production data shows Postgres p99 is often 40-60x p50; external APIs like OpenAI are far worse. Set timeouts, size connection pools, and retry backoff based on p99.
- •Averages hide tail performance—one slow request blocks Node.js's single event loop, delaying everyone
- •Use p50/p95/p99 percentiles, not averages; p99 often 40-100x higher than p50 in production
- •Set timeouts, pools, and retry logic based on p99, test with realistic latency distributions
Generated with AI, which can make mistakes.
Is this a good recommendation for you?

