Bulk HTTP Status Checker
Free, no signup. A site migration or audit turns up hundreds of URLs to check, one at a time is not an option. Paste up to 500 and get status codes, full redirect chains, and final destinations, with the SEO problems already flagged.
Advanced: safe request headers
Up to 5 response-negotiation headers: Accept, Accept-Language,
Cache-Control, and Pragma. Credentials, cookies, and X-*
headers are refused. Headered checks are never cached or stored.
Example data — replace with your own, then press Check status codes
Checks run from our server; we fetch the URL you enter and don't keep the results. Re-running the same list within about ten minutes reuses a short-lived cache. Checks with custom headers deliberately bypass that cache. Anonymous run-level outcome counters may be used for aggregate research; URLs, domains, IPs, and identifiers are never included, and no statistic is released below 100 runs.
Sample report Illustrative status inventory — not a company audit
Say you paste four URLs:
https://example.com/old-trail-shoe
https://example.com/products/trail-runner
https://example.com/products/retired-boot
https://example.com/dead-link …and the checker returns:
- Two pages return 200 — that confirms successful HTTP responses, not necessarily healthy or indexable content. Inspect titles and rendered copy before calling either URL clean.
- One URL cleanly 301-redirects.
https://example.com/old-trail-shoelands onhttps://example.com/products/trail-runnerin a single hop (green→amber dots show it) — expand the row for the full chain detail. - One is a dead 404, flagged in red as a broken link — the row most worth fixing first, since every internal link pointing at it is wasted.
- Sort by status or expand any amber/red row to triage a big list fast instead of reading every line — see HTTP status codes for what each class means for SEO.
Soft-404 trap: green status, missing product
Suppose /products/retired-boot returns 200, but its title is
“Product unavailable” and its body is the same empty shell used by thousands of retired
SKUs. This checker correctly reports the HTTP response as successful; it does not pretend
that status alone proves useful content. Cluster repeated titles/body templates with a
crawler, inspect representative rendered pages, and confirm Google's classification in
Search Console. The `.example` URL and scenario are illustrative.
How to use it
- Paste your URLs into the box, one per line — up to 500. The scheme is optional; a bare
example.com/pricingis treated ashttps://. Duplicate lines are removed automatically. - Or press Import sitemap, paste a
sitemap.xmlURL, and the tool pulls every<loc>into the list for you (capped at 500). - Pick the user-agent — default, browser, Googlebot, Bingbot, or the listed AI crawlers — if you want to compare an anonymous crawler response with a browser response.
- For an opt-in content-negotiation check, open Advanced: safe request headers.
It accepts only
Accept,Accept-Language,Cache-Control, andPragma; credentials, cookies, andX-*headers are intentionally blocked. Those checks bypass the short-lived cache. - Press Check status codes. Results stream in per batch. Filter with the status chips (2xx / 3xx / 4xx / 5xx / error), sort by status, latency, or chain length, and expand any redirecting row to see every hop.
- Use Export CSV for the full list — input URL, final status, final URL, redirect count, chain, latency, flags, and errors. Export a snapshot to compare a later run; the comparison calls out status changes, new 4xx rows, and chains that grew.
+ saves the current site or page. Use ☆ beside any saved site, page, or list to favorite it. Recent check history appears below.
Create a named list
Target filled from your local choices.
Site passport Local context for this saved site
Local data
Saved targets, named lists, and recent check summaries remain only in this browser.
| URL | Final URL |
|---|
Rate this tool
Checks run from datacenter IPs at the edge — some bot-protected sites (Cloudflare challenges, WAFs, CDN bot rules) answer these requests differently than they would answer a real browser.
What the results mean
Every row's status pill is colored by its status class:
- 2xx Success (green) — the URL returned a live page (usually 200). Nothing to fix.
- 3xx Redirect (amber) — the URL redirects; the Final URL column shows where it lands. Expand the row for every hop.
- 4xx Client error (red) — broken or missing (404), forbidden (403), gone (410). These are dead links to fix or remove.
- 5xx Server error (red) — the server failed (500) or is unavailable (503). Often transient, worth re-checking.
- ERR Connection error (red) — the request timed out, the host didn't resolve, or the site refused it.
Amber flags on a row call out specific redirect problems the tool detects, including:
- Redirect chain — reduce to one hop — more than one redirect before the final page.
- 302 in chain — a temporary redirect where a permanent 301 belongs, so signals never consolidate.
- http → https → www multi-hop — a common canonicalization chain that should be collapsed to a single redirect straight to the final host.
- Meta refresh — a client-side refresh on the final page that header-only tools miss.
- Redirect loop and more than 5 redirects — shown as red error flags.
How it works
The page splits your list into batches of 25 URLs and posts them to a server-side checker (URL
fetching can't run in your browser). Up to four batches run in parallel, and each result streams
back into the table as it lands — you don't wait for the whole list to finish. For each URL the
checker requests it without auto-following redirects, records the status and
Location at every hop up to five, and reports the final status and destination. It also
reads the final HTML for a meta refresh.
Everything after the fetch — the status-class chips, sorting, filtering, and CSV export — runs entirely in your browser. No URLs are stored, and re-running the same list within about ten minutes reuses a short-lived edge cache.
Features
- Up to 500 URLs per run, checked in parallel batches with per-batch progress.
- Full redirect chain per URL — expand any row to see every hop, its code, and its target.
- Status-class filter chips and sortable columns (status, latency, chain length).
- SEO flags for long chains, 302-in-chain, multi-hop canonicalization, meta refresh, and loops.
- Sitemap import that pulls URLs straight from a
sitemap.xml. - Browser, search-bot, and AI-crawler user-agent choices; safe, bounded request-header overrides; CSV and local snapshot export.
- Runs against public URLs only — no sign-in, nothing stored.
Limitations
Checks run from datacenter IPs at the edge, so bot-protected sites (Cloudflare challenges, WAFs, CDN
bot rules) may answer differently than they would a real browser — and choosing the Googlebot
user-agent doesn't make the request pass reverse-DNS verification. It follows the HTTP
chain plus one layer of meta refresh, not JavaScript redirects (window.location,
framework routers won't appear). Each chain stops at five hops. It only reaches pages a public crawler
could reach — login-gated, IP-restricted, or private addresses are refused. And the 500-URL cap plus a
courtesy limit of 10 URLs per host per batch mean very large single-site lists are spread across
multiple batches.
Frequently asked questions
How many URLs can I check at once?
Up to 500 URLs per run. Paste them one per line, or import them straight from a sitemap URL. The tool splits the list into batches of 25 and deliberately paces requests to avoid overwhelming one host or the checking service, so a full single-site run can take a couple of minutes. Duplicate lines are removed before checking.
What is the difference between the status code and the final URL?
The status code shown is the final status — the code of the page the URL actually lands on after following any redirects. The Final URL column shows where a redirecting URL ended up. If a URL redirects, the tool follows the whole chain (up to five hops) and reports the destination, not the first hop. Expand any row to see every hop and its individual code.
Why is my status code colored red or orange?
Rows are colored by status class. Green is 2xx (success), amber is 3xx (redirect), and red is 4xx (client errors like 404), 5xx (server errors like 503), or a connection error. The color lets you scan a large list and spot the broken and redirecting URLs without reading every code.
Does it check the status code a crawler sees?
It can send the browser, Googlebot, Bingbot, GPTBot, ClaudeBot, or PerplexityBot user-agent string, which can surface crawler-specific rules. The request still comes from a datacenter IP, not that crawler's verified network, so IP-verifying sites may treat it as an unverified bot.
Are the URLs I paste stored anywhere?
No. URLs are sent to the checking endpoint only to fetch their status and are never saved. Filtering, sorting, and CSV export all run in your browser. Re-running the same list within about ten minutes reuses a short-lived cache so repeat checks are faster, but nothing is persisted to an account or database.
Feature requests for Http Status Checker
Upvote what you want most. New ideas can be submitted from the floating Feedback menu; requests appear here once approved, and the most-wanted rise to the top.
You won't be emailed about that request anymore.
Loading…
➕ Request a feature
New requests are reviewed before they appear here.
ツールについて
最大500件のURLを貼り付け、ステータスコード、完全なリダイレクトチェーン、最終遷移先、各ホップと全体の遅延、レスポンスヘッダーの証拠、canonical確認、リダイレクトシステムの手掛かりを調べます。スナップショットの絞り込み・比較とCSVエクスポートができ、登録不要でデータは保存しません。
機能
- URL最大500件の一括確認
- 各ホップと全体の遅延
- canonicalとレスポンスヘッダーの証拠
- スナップショット比較とCSVエクスポート
仕組み
URLごとに制限付きのヘッダー取得を行い、各リダイレクトホップ、最終URL、ステータス、遅延、canonical、選択したヘッダーを記録します。結果をフィルター・比較してCSVに出力します。
制限事項
- 結果は入力URLへの制限付きリクエストに基づき、認証、地域差、ネットワーク障害、ブラウザー描画、検索エンジンの評価を推測しません。
- 応答やリダイレクトは実行時に変わる可能性があり、可用性、SEO、セキュリティを保証しません。
よくある質問
ページ本文を取得しますか?
主にレスポンスヘッダーとリダイレクトを確認します。ページ本文やブラウザー描画の完全な状態は保証しません。
リダイレクトチェーンを比較できますか?
はい。スナップショットを保存して比較できますが、保存内容は入力と実行時の結果に限られます。
URLは保存されますか?
登録不要で、処理結果はこのブラウザー内で扱います。共有・エクスポート前にURLと識別子を確認してください。