HTTP status codes
Plain-English meaning, common causes, debugging steps, and code snippets for every HTTP status code — from 100 to 599.
The HTTP Status Code Explainer is a complete, hand-curated reference for every standard status code. Each entry includes the official reason phrase, plain-English meaning, the situations that trigger it in real apps, common root causes, a debugging checklist, and ready-to-paste code snippets for Express, FastAPI, NestJS, and Go.
Use it when you're staring at a strange response code in DevTools, building an API and trying to pick the right code to return, or onboarding a new engineer who needs the full landscape. Every code page is a permanent URL, indexable by Google, and stable enough to bookmark.
Frequently asked
Are these codes from the official IANA registry?
Yes — every code follows the IANA HTTP Status Code Registry plus widely-implemented additions (like Cloudflare's 5xx range).
Why are some codes safe to retry and others aren't?
Idempotent methods (GET, PUT, DELETE) are generally safe to retry; POST requires care because retrying can duplicate side effects. The explainer notes retry semantics where they matter.
Can I link directly to one code's page?
Yes — each code lives at /labs/http-status/<code>/. Stable URLs forever.