Client didn't send request within the allowed time.
The HTTP 408 "Request Timeout" error indicates that the server closed the connection because the client didn't finish sending its request within the configured timeout. This is a client error (4xx), not a server error.
This error is relatively rare on modern websites but can occur during large uploads, unstable connections, or when the server has a very short timeout. It differs from 504 Gateway Timeout which concerns proxies waiting for a response from an upstream server.
For monitoring, 408 may signal network connectivity issues or overly restrictive server configuration. It's important to distinguish this code from other timeouts to apply the correct solution.
The 408 error occurs when the server waits too long for the client's request:
There are several timeout-related codes. Here's how to distinguish them:
Based on the identified cause, here are the solutions to apply:
Here are server timeout configuration examples:
# Apache - Timeout in seconds
Timeout 300
KeepAliveTimeout 5
# Nginx - Timeouts
client_header_timeout 60s;
client_body_timeout 60s;
send_timeout 60s;
keepalive_timeout 75s;
# PHP - Max execution time
max_execution_time = 300
max_input_time = 300
# Node.js Express
server.timeout = 300000; // 5 minutes in ms
Adapt timeouts to your use case. A site with uploads needs higher values than a lightweight API.
Monitoring can help detect timeout problems:
It's a client error (4xx). The server works but indicates the client didn't send its request fast enough. The cause can be client-side (slow connection) or server configuration (timeout too short).
408 = the server waits for the client's request (slow client). 504 = the proxy waits for the upstream server's response (slow backend). 408 points to client, 504 to server.
For a typical site: 30-60 seconds. For uploads: 300+ seconds. For real-time APIs: 10-30 seconds. Adapt to your use case.
Use chunked transfer encoding, increase server timeouts (client_body_timeout on Nginx), and implement upload resume on the client side.
If Googlebot receives 408s, it can slow down indexing. Ensure your pages load quickly and timeouts are sufficient.
Yes, MoniTao detects 408s and all error codes. Configure alerts on 4xx codes to be notified of timeout issues.
The HTTP 408 Request Timeout error indicates the client didn't send its request within the server's configured timeout. Though classified as a client error, the solution may require adjusting server-side timeouts.
MoniTao alerts you to recurring 408s, allowing you to identify connectivity or configuration problems. Monitor your critical endpoints and adjust timeouts based on your application's actual needs.
Start free, no credit card required.