What Apdex measures
Apdex (Application Performance Index) compresses a whole distribution of response times into one number between 0 and 1 that describes how satisfied users are. You choose a threshold T — the response time you consider good. Requests at or under T are satisfied, requests up to 4T are tolerating, and anything slower or failed is frustrated.
The formula is Apdex = (satisfied + tolerating / 2) / total. A tolerating request counts for half, a frustrated one for nothing. A score of 1.00 means everyone was served within T; 0.50 means, in effect, half of your users were unhappy.
0.94 – 1.00 · Excellent
Nearly every request is fast. The target for user-facing pages and core API calls.
0.85 – 0.93 · Good
Most users are happy; a visible minority waits. Typical for a healthy application.
0.70 – 0.84 · Fair
Slowness is common enough to be noticed. Worth investigating before it becomes churn.
Below 0.70 · Poor
A large share of requests are slow or failing. Users are actively frustrated.
Choosing the threshold T
T is the whole point of the metric, and a default of 500 ms is only a starting place. Set it per transaction type: a search-as-you-type endpoint may need 100 ms while a report export is fine at 5 seconds. Pick the response time at which users of that action stop noticing a wait, and keep it stable so scores stay comparable over time.
Apdex hides detail by design. Use it for a headline and for alerting, and keep percentiles next to it to see how bad the slow tail really is.
Frequently asked questions
What is a good Apdex score?
0.94 and above is excellent and 0.85 to 0.93 is good. Below 0.70, a significant share of users are experiencing slow or failed requests.
How do I choose the Apdex threshold T?
Use the response time that feels fast enough for that specific action, often close to the current median for a healthy endpoint. Different transactions should have different thresholds.
Do errors count in Apdex?
Yes. A failed request is counted as frustrated regardless of how quickly the error was returned, because the user did not get what they asked for.
Is Apdex better than percentiles?
They answer different questions. Apdex gives one comparable score across services; percentiles such as p95 and p99 show how slow the worst requests are. Most teams track both.