What it means
The server closed the connection because the client did not send a complete request in time.
Common causes
- Slow or unstable network during upload
- An idle keep-alive connection was closed by the server
- Client stalled before sending the body
How to fix it
As a client or visitor
Retry the request; 408 is safe to retry for idempotent requests. For uploads, check the connection or use resumable uploads.
As the site or API owner
Tune client body and header timeouts to realistic values for your users and payload sizes.
Example response
HTTP/1.1
HTTP/1.1 408 Request Timeout
Date: Tue, 07 Oct 2025 09:30:00 GMT
Server: nginx
Connection: close
Content-Length: 0 Specification
FAQ
› 408 vs 504?
408: the client was too slow to send. 504: an upstream server was too slow to answer the gateway.
› Do browsers retry 408?
Browsers usually retry automatically on an idle connection that the server closed with 408.