Client Closed Connection Before Load Balancer Response
Production Risk
Low — indicates client network issues or timeout mismatches. Monitor frequency to detect client timeout configuration problems.
460 is used by AWS Elastic Load Balancer (ELB) to indicate that the client closed its connection to the load balancer before the load balancer could send a response. The request may still have been forwarded to the target.
- 1The client timed out waiting for a response and closed the connection.
- 2The client application was terminated or restarted mid-request.
- 3A network interruption closed the connection before the response arrived.
- 4The request takes too long and the client-side timeout is shorter than the server processing time.
A mobile app makes an API request but the user closes the app before the server responds.
POST /api/long-operation HTTP/1.1 Host: myapp.elb.amazonaws.com # Client closes connection after 5s; server takes 10s
expected output
AWS ELB access log: 460 (client closed connection)
Fix 1
Increase client-side timeout
WHEN The operation legitimately takes longer than the client timeout.
// Increase timeout in the HTTP client
const response = await fetch('/api/long-operation', {
signal: AbortSignal.timeout(30000) // 30 seconds
});Why this works
Prevents the client from closing the connection before the server can respond.
Fix 2
Convert long operations to async jobs
WHEN Operations routinely exceed a few seconds.
# Return 202 Accepted immediately, poll for result
POST /jobs → 202 Accepted {job_id: '...'}
GET /jobs/{id} → poll until completeWhy this works
Eliminates long-held connections by making the operation asynchronous.
✕ Do not treat 460 as a server error
The server side may have processed the request successfully — 460 is about the response delivery failing, not the operation.
Appears in ELB access logs. Not sent to clients as an HTTP response.
Content generated with AI assistance and reviewed for accuracy. Found an error? hello@errcodes.dev