Network Read Timeout Error
ActiveHTTP 598 Network Read Timeout Error is an unofficial status code used by some HTTP proxies to signal that the proxy timed out reading the response from an upstream server. It is not defined in any RFC and not supported by major CDNs or browsers, but appears in some proxy implementations and network monitoring tools as a more specific alternative to 504 Gateway Timeout.
Description
598 is used to distinguish between a gateway that timed out connecting to the upstream (no connection established) versus one that connected but timed out reading the response data. Some proxy implementations also use 599 for network connect timeout. Neither 598 nor 599 are IANA-registered or RFC-standardized. The RFC-standard equivalent is 504 Gateway Timeout. Applications should handle 598 the same way they handle 504.
Examples
# Proxy connected to upstream but response body read timed out
HTTP/1.1 598 Network read timeout error
Content-Type: text/html
# Treat like 504 in client codeEdge Cases
- •598 is not recognized by browsers – they may display it as an unknown error.
- •Not all proxy implementations use 598. Most return 504 for all upstream timeout conditions.
- •Client code should treat 598 as equivalent to 504.
When You'll See This
- →Proxy connected to origin but origin stalled during response body streaming
- →Network congestion causing downstream read to timeout mid-response
Implementation References
| Language | Constant |
|---|---|
| Go | 598 (no standard constant – treat as 504) |
| Python | response.status_code == 598 |
History
Emerged informally in proxy server implementations to distinguish read timeouts from connection timeouts. Never standardized.
Related Status Codes
Related Headers
FAQ
Should I return 598 from my API?
No. Return 504 Gateway Timeout. 598 is not standardized and not understood by clients. Use 504 for any upstream timeout.