Bulk URL Status Checker – Broken Link & Redirect Audit
Pricing
from $1.00 / 1,000 results
Bulk URL Status Checker – Broken Link & Redirect Audit
Bulk HTTP status code checker and broken link checker. Trace redirect chains, find 404s, export to CSV/JSON. No browser, no login.
Pricing
from $1.00 / 1,000 results
Rating
0.0
(0)
Developer
Logiover
Maintained by CommunityActor stats
2
Bookmarked
497
Total users
400
Monthly active users
10 hours ago
Last modified
Categories
Share
Bulk URL Status & Broken-Link Checker — HTTP Status Codes, Redirects & 404 Detection at Scale (No API Key)

Bulk-check thousands of URLs per run for their HTTP status code, full redirect chain, final URL, and response time — all via direct HTTP, with no browser overhead. Instantly flag broken links (404, 500), trace 301/302 redirects, and measure per-URL latency. Fast, cheap, no API key and no login required. The essential tool for SEO audits, link monitoring, content migrations, and QA pipelines.
🏆 Why this URL status checker?
Check thousands of URLs per run · full redirect chains · millisecond response times · 9 fields per URL · export to JSON / CSV / Excel. A developer-friendly bulk HTTP status API alternative for SEO broken-link audits, redirect mapping, link monitoring and CI/CD QA — pure HTTP, no Playwright, no rate-limit headaches.
✨ What this Actor does / Key features
- 🚀 Bulk checking at scale — audit thousands of URLs in a single run; no hard limit on list size.
- 🔢 Full HTTP status detection — captures
200 OK,301/302redirects,403 Forbidden,404 Not Found,410 Gone,429 Too Many Requests,500 Server Error, and everything in between. - 🔗 Redirect chain tracing — records every hop in a redirect sequence (up to 10), not just the final destination.
- 🎯 Final URL reporting — always shows where a URL ultimately resolves via the
finalUrlfield. - ⏱️ Response time measurement — millisecond-precision wall-clock timing per URL.
- 🧯 Network-error capture — DNS failures, timeouts, and refused connections are recorded as
statusCode: 0(never silently dropped), with the raw error instatusMessage. - 🔁 Automatic retries — transient network errors are retried up to 2 times before being marked failed.
- ⚡ No browser overhead — pure HTTP via
got-scrapingon Crawlee'sBasicCrawler; blazing fast and near-zero compute cost. - 🛡️ Proxy support & high concurrency — built-in Apify Proxy integration and up to 100 parallel checks (default 20) to run large audits without getting rate-limited.
- 📤 Export-ready — download every result as JSON, CSV, Excel, or JSONL straight from the Apify Dataset.
🚀 Quick start (3 steps)
- Add your URLs. Paste them into the URLs to Check (
startUrls) field — one per line in the Console, imported from a text list, or passed via the Apify API. - (Optional) Tune concurrency & proxy. Leave
maxConcurrencyat20and Apify Proxy on for most runs; raise concurrency to50–100for very large audits. - Click Start. Within seconds the dataset fills with one row per URL — status code, redirect chain, final URL, and response time — ready to export as JSON / CSV / Excel.
No API key. No login. No scraping code to write.
📥 Input
The Actor takes a list of URLs plus two optional tuning fields. Below are three ready-to-run scenarios, followed by the full input reference.
Example — Check a list of URLs for broken links
Quick pass over a handful of pages to catch 404s and dead links:
{"startUrls": [{ "url": "https://example.com" },{ "url": "https://example.com/contact" },{ "url": "https://example.com/old-page" }],"maxConcurrency": 5,"proxyConfiguration": { "useApifyProxy": false }}
Example — Follow redirects & capture the final URL
Verify that legacy URLs redirect correctly and land on the right destination after a migration:
{"startUrls": [{ "url": "https://oldsite.com/legacy-path" },{ "url": "https://oldsite.com/page-1" },{ "url": "https://oldsite.com/page-2" }],"maxConcurrency": 50,"proxyConfiguration": { "useApifyProxy": true }}
Each result exposes the full redirectChain array and the ultimate finalUrl, so you can confirm every 301/308 resolves to the correct new page.
Example — QA a sitemap's URLs / bulk status audit
Feed an entire site's URL list (e.g. exported from a sitemap crawler) for a complete HTTP-status report at high concurrency:
{"startUrls": [{ "url": "https://mysite.com/page-1" },{ "url": "https://mysite.com/page-2" }],"maxConcurrency": 100,"proxyConfiguration": { "useApifyProxy": true }}
Tip: Pair this Actor with Sitemap to URL Crawler — export its dataset as JSON, then pass the URL list here as
startUrlsfor a fully automated whole-site audit pipeline.
Input reference
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
startUrls | array | ✅ Yes | — | List of URLs to check. Uses the standard Apify requestListSources editor — paste directly, import a text list, or pass via API. Each item is { "url": "https://..." }. No hard limit on count. |
maxConcurrency | integer | No | 20 | How many URLs to check in parallel. Min 1, max 100. Higher is faster but needs a larger proxy pool. |
proxyConfiguration | object | No | { "useApifyProxy": true } | Proxy settings for all HTTP requests. Recommended to avoid rate limiting on large or same-domain lists. |
Concurrency guide: 5–10 for small lists / conservative proxy usage · 20 (default) for balanced speed and reliability · 50–100 for maximum-speed large audits (requires a sufficient proxy pool).
📤 Output
One row per URL is pushed to the Apify Dataset. Here is a trimmed JSON sample using the real output fields:
{"url": "http://oldsite.com/page","statusCode": 200,"statusMessage": "OK","isBroken": false,"isRedirect": true,"redirectChain": ["https://oldsite.com/page","https://newsite.com/page"],"finalUrl": "https://newsite.com/page","responseTime": 580,"checkedAt": "2026-07-06T10:22:06.000Z"}
Status-code cheat sheet
| Code | Message | isBroken | Meaning |
|---|---|---|---|
200 | OK | ❌ No | Page loaded successfully |
301 | Moved Permanently | ❌ No | Permanent redirect (followed) |
302 | Found | ❌ No | Temporary redirect (followed) |
308 | Permanent Redirect | ❌ No | Permanent redirect (followed) |
401 | Unauthorized | ✅ Yes | Authentication required |
403 | Forbidden | ✅ Yes | Access denied |
404 | Not Found | ✅ Yes | Page does not exist |
410 | Gone | ✅ Yes | Page permanently removed |
429 | Too Many Requests | ✅ Yes | Rate limited |
500 | Internal Server Error | ✅ Yes | Server-side error |
503 | Service Unavailable | ✅ Yes | Server temporarily down |
0 | Network Error | ✅ Yes | DNS failure, connection refused, timeout |
More sample records:
Broken link (404):
{"url": "https://apify.com/non-existent-page","statusCode": 404,"statusMessage": "Not Found","isBroken": true,"isRedirect": false,"redirectChain": [],"finalUrl": "https://apify.com/non-existent-page","responseTime": 210,"checkedAt": "2026-07-06T10:22:07.000Z"}
Network error (statusCode: 0):
{"url": "https://this-domain-does-not-exist.io/page","statusCode": 0,"statusMessage": "getaddrinfo ENOTFOUND this-domain-does-not-exist.io","isBroken": true,"isRedirect": false,"redirectChain": [],"finalUrl": null,"responseTime": 5021,"checkedAt": "2026-07-06T10:22:12.000Z"}
💡 Use cases
- SEO broken-link audits — export your full site URL list, run the Actor, filter
isBroken = true, and prioritize fixing 404s and 5xx errors by page importance to protect crawl budget and rankings. - Redirect mapping & optimization — use the
redirectChainfield to spot multi-hop chains (redirectChain.length > 1) and collapse them into single, direct redirects that save latency and crawl budget. - Site-migration validation — confirm every old URL returns
301/308and thatfinalUrlpoints to the correct new page; flag any404where a redirect is missing. - Uptime & QA monitoring — schedule recurring runs to catch newly broken links, then trigger alerts via the Apify API or webhooks; drop it into CI/CD as a pure-HTTP link-health gate.
- Affiliate & backlink checks — verify that inbound/affiliate links still resolve to
200 OK; a404on a linked page means lost link equity. - Competitor & external-link audits — batch-check external references across articles to keep outbound links healthy and current.
- API & webhook URL validation — run all endpoint URLs through the Actor before deploying an integration to confirm they return the expected
2xxrather than surprise 4xx/5xx.
👥 Who uses it
- SEO teams & auditors — identify 404s and redirect chains hurting crawl budget across large sites.
- Web developers & QA engineers — validate links after a migration or CMS change and automate link-health checks in CI/CD.
- Growth & affiliate marketers — monitor that earned backlinks and affiliate URLs still resolve correctly.
- Site-migration engineers — verify redirect maps end-to-end before and after a cutover.
- Content managers & data analysts — monitor internal/external link health across articles and enrich URL datasets with live status metadata.
💰 Pricing
This Actor runs on a pay-per-result model — you're billed per URL checked, with no monthly subscription and no separate API-key cost. Because it uses pure HTTP requests on Crawlee's BasicCrawler (no browser, no Playwright), the underlying compute is negligible, so large audits stay cheap. See the live per-result price on the Actor's Apify Store page. New Apify accounts include free monthly platform credits, so you can trial it at no cost.
❓ Frequently Asked Questions
Is this a bulk HTTP status API alternative? Yes. Instead of a hosted SaaS broken-link checker, you get a programmable bulk HTTP status code checker you can call via the Apify API, schedule, and pipe into your own workflow — with full 404, redirect-chain, final-URL, and response-time data per URL.
Do I need an API key or login? No. There's no API key to obtain and no account to log into on the target sites. Just paste your URLs and run. (Apify Proxy is enabled by default and requires no extra setup.)
How do I export results to CSV / JSON?
Run the Actor, then download the Apify Dataset as CSV, JSON, JSONL, or Excel. Filter isBroken = TRUE for all 404/5xx/network errors, or isRedirect = TRUE for redirect chains — the redirectChain field is included in every export. In CSV/Excel, redirectChain is serialized as a joined string; in JSON it stays a proper array.
How many URLs can I check? There's no hard limit — the Actor processes every URL in your list. For 100,000 URLs at concurrency 50, expect roughly 10–20 minutes and well under a dollar of compute. At concurrency 100 with ~500 ms average server response times you can hit ~200 URLs/second throughput.
Does it follow redirects?
Yes, automatically, up to 10 hops. The redirectChain field records every intermediate URL and finalUrl shows the ultimate destination. isRedirect is true whenever at least one hop occurred.
Can it detect broken links / 404s?
Yes — that's the core job. Every result carries an isBroken boolean (true for 400+ status codes and for statusCode: 0 network errors), so you can filter dead links in one step. A 404 means the server said the page doesn't exist; statusCode: 0 means no response arrived at all (DNS failure, refused connection, or timeout).
Can I check plain HTTP (non-HTTPS) URLs? Yes. Both HTTP and HTTPS URLs are supported. Invalid SSL certificates are recorded as failures rather than silently ignored.
Can I use it for scheduled link monitoring? Yes. Use the Apify Scheduler to trigger daily/weekly/custom runs and connect webhooks or the API to alert you when new broken links appear.
Is it legal? The Actor only sends standard HTTP requests to URLs you supply and reads the response status — the same thing a browser or any link checker does. You are responsible for checking URLs you're authorized to access and for complying with target sites' terms and applicable law. See the Legal section below.
🔗 More website & SEO tools by logiover
| Actor | What it does |
|---|---|
| Broken Link Checker | Crawl a site and find every broken internal/external link. |
| Website SEO Audit Crawler | Full on-page SEO audit across an entire site. |
| Sitemap to URL Crawler | Expand a sitemap into a complete, clean URL list. |
| Bulk URL Unshortener | Resolve shortened links to their true destination in bulk. |
| Bulk HTTP Security Headers | Check security headers (HSTS, CSP, etc.) across many URLs. |
| Bulk SSL Certificate Checker | Verify SSL cert validity and expiry for lists of domains. |
| Website Change Monitor | Detect and track content changes on any page. |
| Bulk WHOIS / RDAP Lookup | Batch domain ownership and registration lookups. |
| Bulk DNS Records Lookup | Resolve A, MX, TXT, and more for many domains at once. |
| Website Link Graph Crawler | Map the internal link graph of an entire website. |
| URL to Markdown | Convert any web page into clean Markdown. |
| Website Tech Stack Detector | Identify the frameworks and tools a site is built with. |
👉 Browse all logiover scrapers on Apify Store — 180+ actors across real estate, jobs, crypto, social media & B2B data.
⏰ Scheduling & integration
- Schedule recurring audits (daily, weekly, or any cron interval) from the Apify Console to catch newly broken links automatically.
- API-first — start runs and pull results programmatically via the Apify API. Retrieve only broken URLs with a dataset filter, e.g.
GET /v2/datasets/{datasetId}/items?filter=isBroken%3Dtrue. - Webhooks — fire a notification (Slack, email, your own endpoint) on run completion to alert on new 404s.
- Pipeline it — chain with Sitemap to URL Crawler for a hands-off whole-site health check, or stream JSONL output into your own data warehouse.
⭐ Support & feedback
If you hit unexpected results — wrong status codes, proxy issues, or timeouts — open a support ticket via the Apify Console. Include the affected URLs, your input configuration, and the run ID so the issue can be diagnosed quickly. Feature requests and rating feedback are always welcome and directly shape the roadmap.
⚖️ Legal
This Actor sends standard HTTP requests to URLs that you provide and reports the returned status metadata — no authentication bypass and no content harvesting. Only check URLs you are authorized to access. You are responsible for complying with the target websites' terms of service, robots directives, and all applicable laws and regulations in your jurisdiction. This tool is intended for site owners, SEO/QA teams, and researchers performing legitimate link-health and availability checks.
📝 Changelog
2026-07-06
- ✨ README overhaul: richer output sample, ready-to-run example scenarios, website/SEO-tool cross-links, clearer quick-start.
2026-07-01
- Maintenance pass: re-verified end-to-end on live data and confirmed successful runs within the 5-minute quality window on the default input.
- Sharpened Store metadata (SEO title & description) and expanded the FAQ with high-intent, long-tail questions for easier discovery in Google and Apify Store search.
- Added ready-to-run example tasks that cover common real-world use cases.
2026-06-15
- Reliability pass: re-verified end-to-end on live data with real-world inputs. Routine maintenance build.
2026-06-07
- Docs: added coverage for broken link checker API alternative, exporting 404 errors and redirect chains to CSV/JSON, and bulk URL status checks without a browser.
2026-06-05
- 🛡️ Reliability fix: results are no longer dropped by strict output validation — runs now complete cleanly even at high volume (thousands of results).
- ⚡ Stability & performance hardening; fresh rebuild.
2026-06-04
- Verified live & refreshed build — reliability/maintenance pass.
2026-05-20
- Maintenance pass: reviewed the input schema and default values for a smooth one-click start, and rebuilt the Actor on the latest base image.
v1.0
- Initial release
- Full HTTP GET status checking with
got-scraping - Automatic redirect chain tracing (up to 10 hops)
- Network error capture as
statusCode: 0 isBrokenandisRedirectboolean flags for easy filtering- Response time measurement per URL
- Automatic retry on transient network failures (2 retries)
- Configurable concurrency (1–100)
- Apify Proxy integration
- JSON, CSV, and Excel export