The Ultimate Guide to HTTP Status Codes (100–599)
A complete reference guide to all HTTP status codes from 100 to 599, with explanations and common use cases.
Feb 28, 2026
4xx Client Error
The 418 (I'm a Teapot) status code was defined in RFC 2324 as an April Fools' Day joke. It indicates that the server is a teapot and cannot brew coffee. While not a real status code, some servers and frameworks use it as a playful Easter egg.
While not intended for production use, 418 can be used internally for testing client error handling. Some frameworks and SDKs include it as a fun reference, and it occasionally appears in API documentation as a joke.
// Laravel - returning 418 as an Easter egg
if ($request->is('teapot')) {
return response('I\'m a teapot', 418);
}
// Express.js
res.status(418).send('Short and stout');
Mistake: Using 418 in production for actual error handling
Fix: 418 is a joke status code and should not be used in production APIs for real error handling. Use appropriate standard status codes instead.