Errors by Type and Error Rate
Errors by type
When a run had failures, the Errors tab shows an Errors by type table above the chart: one row per (type, request) with the count and the share of all errors. The type is either an HTTP status code or, for failures that never got a response, the error the load generator recorded.
The types you will see
- 4xx - the request was rejected: 401/403 authentication, 404 a wrong URL or a missing fixture, 429 rate limiting. These usually mean the script or the test data, not capacity.
- 5xx - the server failed: 500 application errors, 502/503/504 an overloaded or restarting backend behind a proxy. These grow with load when capacity runs out.
- SSLException / SSLHandshakeException - the TLS handshake failed, typically an expired certificate, a protocol mismatch or a server dropping handshakes under load.
- HttpHostConnectException / ConnectException - no TCP connection at all: the host is down, a firewall drops the generator's IP, or the listen backlog is full.
- SocketException / NoHttpResponseException / SocketTimeoutException - the connection opened but the server closed it or never answered: worker exhaustion, an upstream timeout, a keep-alive limit.
Sort by count, then open the request in the Stats table to see its response times.
Error rate %
The Error rate % toggle in the sidebar adds a line with the share of failed requests per second, computed from the individual samples. Read it together with the virtual-users line on the Timeline tab: an error rate that starts at a specific user count is a capacity limit; one that is constant from the first second is a script or environment problem.
See also common HTTP error codes.