What Is an Apdex Score? (And What a Good One Actually Is)
Apdex turns thousands of request latencies into one number your PM can read. How the math works, where the thresholds come from, and how TracePath ranks endpoints by Apdex.
The definition in 30 seconds
Apdex maps every request into one of three buckets: satisfied (response time within T), tolerating (between T and 4T), and frustrated (over 4T, or an error). The score is (satisfied + tolerating/2) / total, so it lives between
0 and 1. Pick T from what your users actually experience — 100ms for API
health checks, 500ms for page loads, and 2s for heavy reports are common
starting points.
Why not just use p95?
Percentiles answer "how slow is the slow tail" but ignore how much traffic the tail carries. A p95 of 1.2s reads badly even when 99.9% of requests are fast and the 95th percentile sits on a cron-triggered endpoint. Apdex weighs volume, which is exactly what you want when deciding what to fix first.
TODO-content: TODO-content: walk through a worked example with a 200-request table (counts per bucket -> score), then connect to TracePath specifics: the performance page computes per-endpoint Apdex with T configurable per project, ranks endpoints by impact (Apdex x traffic) — link /product/performance and the endpoints impact table screenshot. Cover the criticisms honestly (it hides variance, gaming by inflating T) and how to pair it with percentiles instead of replacing them. End with setting an Apdex-based alert via monitors with a suggested threshold recipe.