HTTPREF
← Back to status codes

HTTP Status Code

408 Request Timeout

Client Error

The server timed out waiting for the client to complete the request.

HTTP status code reference, response example, common causes, fixes, and related status codes.

What does HTTP 408 Request Timeout mean?

HTTP 408 Request Timeout is a status code sent by a server to indicate the result of an HTTP request.

Status codes help browsers, APIs, apps, and backend systems understand whether a request succeeded, failed, was redirected, or needs additional action.

In practice, HTTP 408 Request Timeout usually appears when a server responds under specific request, validation, permission, or infrastructure conditions.

Response example

HTTP/1.1 408 Request Timeout

HTTP example

HTTP/1.1 408 Request Timeout

Common causes

  • Slow client connection
  • Client stopped sending request data
  • Idle connection timed out

How to fix it

  • Retry the request
  • Check network conditions
  • Reduce latency or payload size if needed

Common mistakes

  • Assuming the status code alone explains the full backend issue
  • Ignoring related response headers that add important context
  • Treating temporary errors as permanent failures
  • Retrying too aggressively without checking the cause
  • Debugging the frontend only when the problem is server-side

How browsers and APIs use it

Browsers, APIs, and backend services use HTTP status codes to understand the outcome of a request. Depending on the status code, an application may render content, retry a request, redirect the user, show an error, or trigger a different flow in the client or server.

Developer note

A 408 can happen before your app logic runs. It is often a transport or timeout issue rather than a business logic failure.

Client-side example

try {
  const response = await fetch("/api/data");
  if (response.status === 408) {
    console.log("Request timed out");
  }
} catch (error) {
  console.error(error);
}

Related status codes