HTTP Status Codes
HTTP 408 Request Timeout
Request Timeout — the server did not receive a complete request in time
A 408 Request Timeout indicates that the server waited for the client to finish sending the request but stopped waiting before the request was complete. The server is reachable and responsive, but the request never fully arrived within the allowed time window. This status usually reflects slow networks, interrupted uploads, or idle persistent connections that remained open without enough incoming data.
Visual summary
A quick reference view of how HTTP 408 works: A server closing the connection because the inbound data is arriving too slowly or stopped halfway.

What 408 Means
The shortest useful reading of this status code.
Request Timeout means the server did not receive a complete request in time.
This status falls into the 4xx class, indicating a client-side error outcome for the request.
Quick read
Request Timeout
the server did not receive a complete request in time
Technical Context
How this status behaves without turning the page into a repair guide.
Standard usage
A 408 is centered on the incoming request stream, not on the application's attempt to produce a response. The server times out while waiting for headers or body bytes from the client side of the connection.
Technical nuance
That separates 408 from 504. A 504 happens after a gateway forwards a request upstream and waits too long for a response. A 408 happens earlier, before the server has even received the full request it needs in order to process it.
Related HTTP Codes
Nearby HTTP status codes help clarify how 408 differs inside the same response family.
408
Request Timeout
the server did not receive a complete request in time
400
Bad Request
the server cannot process the request because it is malformed
504
Gateway Timeout
the gateway did not receive an upstream response in time
429
Too Many Requests
the client exceeded the allowed request rate
Common Causes
Client connection stalls during an upload
A common condition that triggers a 408 response when the web server evaluates the transaction.
Slow network interrupts request body transfer
A common condition that triggers a 408 response when the web server evaluates the transaction.
Keep-alive connection stays idle too long
A common condition that triggers a 408 response when the web server evaluates the transaction.
Proxy closes a slow client connection before completion
A common condition that triggers a 408 response when the web server evaluates the transaction.
Typical Scenarios
A large upload is interrupted before the request body finishes sending
A mobile network drops packets while the client is still transmitting data
A keep-alive connection sits open long enough for the server timeout to expire
What To Know
A 408 is often transient and closely tied to network conditions, connection reuse, or large request bodies. If it appears broadly across many uploads or forms, the pattern usually points to client connectivity, proxy timeout settings, or request size pressure rather than to a broken application route.
Frequently Asked Questions
Common interpretation questions about HTTP 408.
No. A 408 means the server did not receive the full client request in time. A 504 means a gateway did not receive an upstream server response in time.
Yes. Long or interrupted uploads are a common reason for 408 responses because the server eventually stops waiting for the request body to finish arriving.
Usually not. A 408 is often specific to certain requests, client connections, or upload paths rather than a complete application outage.