2026-06-01 · 10 min read
HTTP status codes for monitoring: what operators should know
Learn which HTTP status codes mean down, degraded, or healthy for monitors. 2xx, 3xx, 4xx, 5xx explained for operators.
Status codes are your monitor's vocabulary
HTTP response status codes tell monitoring tools whether requests succeeded, redirected, failed client-side, or failed server-side. Misconfigured monitors treat all non-200 as down — causing false alerts on intentional 301 redirects — or treat 200 as healthy when error pages return success status. Operators must define expected codes per URL and interpret anomalies during incidents.
Qikot Website Down Checker and Uptime Monitor return exact status codes from external requests — foundation for intelligent monitoring.
2xx success family
200 OK — standard success for GET requests. 201 Created — common for POST creating resources; usually not homepage monitor target. 204 No Content — success with empty body; valid for health endpoints. Monitors typically accept 200-299 as healthy for availability purposes. Some APIs return 204 on /health — configure monitors accordingly.
Verify response body when 200 might lie — maintenance pages sometimes return 200 with sorry message. Dedicated health endpoints returning JSON reduce ambiguity.
3xx redirection family
301 Moved Permanently, 302 Found, 307 Temporary Redirect, 308 Permanent Redirect — redirects are not failures if final destination healthy. Monitors should follow redirects and report final status or explicitly expect 301 on apex-to-www URL. Redirect loops return 310 or browser errors — HTTP Header Checker reveals Location header chains.
Too many redirects hurt performance — Ping Test latency increases even when final status 200.
4xx client error family
400 Bad Request — malformed request; monitor misconfiguration possible. 401 Unauthorized, 403 Forbidden — expected on protected routes; do not monitor /admin expecting 200 unless providing credentials. 404 Not Found — broken link or wrong URL in monitor config. 429 Too Many Requests — rate limiting; monitor may need slower cadence or allowlist.
Accidental 404 on homepage means down for customers — alert immediately. Distinguish intentional 401 on /internal from accidental public 404.
5xx server error family
500 Internal Server Error — application exception. 502 Bad Gateway — proxy cannot reach origin; common CDN/hosting issue. 503 Service Unavailable — overloaded or maintenance mode. 504 Gateway Timeout — upstream too slow. These almost always mean user-visible failure — page on-call.
During CDN incidents, 502/503 cluster geographically — read CDN outage detection guide. Compare HTTP Header Checker for edge versus origin clues.
Codes monitors should alert on
Default production monitor: alert on 5xx, timeout, DNS failure. Degraded on high latency with 200. Optional alert on unexpected 4xx for public marketing URLs. Do not alert on 301 apex redirect if final 200. Document per-URL expectations in runbook — incident runbook template includes status code column.
API monitors may accept 401 on unauthenticated ping but require 200 on /health with correct JSON body.
Using header checker alongside codes
Status code alone lacks context — HTTP Header Checker adds Server, Via, CF-Ray, Retry-After on 503 maintenance. Retry-After header signals planned maintenance versus crash. Cache headers explain 200 serving stale error page from CDN.
Save header plus status snapshots during baseline establishment — diff during incidents accelerates triage.
Testing status code behavior
In staging, inject failures — stop app, verify monitor sees 502. Enable maintenance mode, verify 503. Break DNS, verify checker reports resolution failure not HTTP code. Production deploy smoke test: Uptime Monitor critical URLs within five minutes.
Read API health check best practices for designing endpoints returning correct 503 when unhealthy.
Practical monitoring defaults
Homepage: expect 200, alert 5xx and timeout. Apex URL: expect 301 or 200 depending architecture. Health endpoint: expect 200 with body ok or 503 when down. Checkout: expect 200 or 302 redirect chain ending success. Weekly manual review catches config drift.
Free all free tools display codes without paid monitor configuration — ideal verification when synthetic alerts fire. Status codes are simple numbers carrying operational meaning — learn their language fluently.
Soft deletes and 410 Gone
APIs returning 410 Gone for permanently removed resources differ semantically from 404 — monitors on deprecated endpoints should expect 410 not alert as failure. Document lifecycle: active 200, deprecated 301 redirect, removed 410. Misconfigured monitors on old URLs create noise after intentional decommission.
Content marketing sunsetting landing pages should update monitors simultaneously — 404 on old campaign URL may be intentional.
Retry-After and maintenance mode
503 with Retry-After header signals planned maintenance duration — parse in advanced synthetic tools; manual operators note header in incident log. HTTP Header Checker surfaces Retry-After during maintenance windows — distinguishes graceful maintenance from crash loop 503.
WordPress maintenance plugins return 503 — confirm intentional before emergency rollback.
Edge-specific status codes
Cloudflare 52x series, Fastly specific errors, AWS CloudFront errors — learn your CDN vocabulary. Generic monitor alerting on unknown 52x still pages correctly — runbook links CDN status and meaning table. Origin 502 versus Cloudflare 522 timeout require different fixes — header inspection determines which.
Maintain CDN error code cheat sheet in runbook appendix updated when changing providers.
Logging and observability integration
Centralize HTTP status codes from access logs — compare log aggregation 5xx rate with external Uptime Monitor results. Discrepancies indicate monitors hitting wrong URL or CDN serving different responses to monitors versus users.
Structure logs with request ID — support tickets include request ID matching log line accelerates root cause during status code anomalies.
Summary
Reliable monitoring combines external HTTP verification, latency baselines, certificate and domain expiry checks, and honest customer communication during incidents. Qikot provides free monitoring tools runnable on demand without accounts — bookmark Uptime Monitor, Website Down Checker, and Ping Test for your critical URLs. Weekly five-minute reviews build habits that catch failures before customers do. Expand coverage as architecture grows; start with tier-one URLs that directly affect revenue and trust.
Logging and observability integration
Centralize HTTP status codes from access logs — compare log aggregation 5xx rate with external Uptime Monitor results. Discrepancies indicate monitors hitting wrong URL or CDN serving different responses to monitors versus users.
Structure logs with request ID — support tickets include request ID matching log line accelerates root cause during status code anomalies.
Logging and observability integration
Centralize HTTP status codes from access logs — compare log aggregation 5xx rate with external Uptime Monitor results. Discrepancies indicate monitors hitting wrong URL or CDN serving different responses to monitors versus users.
Structure logs with request ID — support tickets include request ID matching log line accelerates root cause during status code anomalies.
Summary
Reliable monitoring combines external HTTP verification, latency baselines, certificate and domain expiry checks, and honest customer communication during incidents. Qikot provides free monitoring tools runnable on demand without accounts — bookmark Uptime Monitor, Website Down Checker, and Ping Test for your critical URLs. Weekly five-minute reviews build habits that catch failures before customers do. Expand coverage as architecture grows; start with tier-one URLs that directly affect revenue and trust.
Frequently asked questions
- How do I verify http status codes for monitoring without expensive monitoring software?
- Qikot provides free on-demand checks from our remote servers — no account or agent install. Use the HTTP Header Checker linked in this article, then confirm with related tools for SSL, DNS, or headers when symptoms persist.
- Are Qikot checks accurate for website operators?
- Checks simulate public HTTP paths customers use. They complement — not replace — internal metrics. External failure with internal green usually means DNS, CDN, TLS, or WAF issues between your origin and the internet.
- How often should website operators run these checks?
- Run tier-one URLs after every deploy and DNS change. Schedule weekly uptime and ping baselines, monthly SSL and domain expiry reviews, and always verify externally during incidents before closing tickets.
- Does Qikot store my URLs or require login?
- No user database. Checks are stateless and results cache briefly for performance. Do not submit secrets in URLs; use health endpoints without credentials in query strings.
- What should I do when a check reports down?
- Capture status code and timestamp, run complementary checks (headers, DNS, SSL), update your status page if customers are affected, and escalate to hosting with external evidence rather than browser screenshots alone.