Bulk URL Status Code & Redirect Checker — Bouncefern avatar

Bulk URL Status Code & Redirect Checker — Bouncefern

Pricing

$1.00 / 1,000 url checkeds

Go to Apify Store
Bulk URL Status Code & Redirect Checker — Bouncefern

Bulk URL Status Code & Redirect Checker — Bouncefern

Bulk HTTP status code checker and redirect checker: paste URLs or an old -> new redirect map, get status, final URL, every redirect hop, broken links (404), loops, 302s and HTTPS downgrades. Verify site migrations, find broken links, alert on changes. $1 per 1,000 URLs, no start fee.

Pricing

$1.00 / 1,000 url checkeds

Rating

0.0

(0)

Developer

CyberMax

CyberMax

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 hours ago

Last modified

Share

Bouncefern: Bulk URL Status Code & Redirect Checker

Paste URLs, see which ones break, bounce or loop

Give it a list of URLs (or an old -> new redirect map); get each URL's HTTP status, final URL, every redirect hop, broken links (404/410), redirect loops, 302s that should be 301s, HTTPS-to-HTTP downgrades and timeouts. $1 per 1,000 URLs, no start fee.

▶ Try it now with a prefilled input · $0.001 per URL (10,000 URLs = $10) · no start fee, so a 3-URL check costs $0.003 · Apify's free plan includes $5 of credit a month

Built for: SEO teams checking redirects after a migration · marketers checking campaign and affiliate links · developers and QA testing deploys · anyone with a spreadsheet column of URLs to verify

Real output (real run on Apify, 25 Oct 2026, the prefilled input: 3 URLs in 1.9 s, $0.003):

URLFirst statusFinal statusFinal URLRedirectsIssues
http://apify.com/301200https://apify.com/1none
https://apify.com/store200200https://apify.com/store0none
https://apify.com/this-page-does-not-exist-404404404(same)0broken (404/410)
{"urls": ["http://apify.com", "https://apify.com/store", "https://apify.com/this-page-does-not-exist-404"]}

Ready-made inputs (one click)

JobInputResult
First try (3 URLs)the prefilled input aboveStatus, final URL and issues for each.
Verify a redirect map{"urls": ["http://example.com/old-page -> https://example.com/new-page"]}matchesExpected: true/false per line.
Only the broken ones{"urls": ["…your list…"], "onlyProblems": true}Only URLs with errors or issues; healthy URLs are free.
What Googlebot gets{"urls": ["…"], "userAgent": "googlebot"}Status and redirects for the Googlebot user agent.
Daily link watch{"urls": ["…"], "monitor": true, "monitorKey": "landing-pages"}On a schedule: only URLs whose status or destination changed.

Use cases

  • Site migration QA: paste the redirect map and see every line that doesn't land where it should, with the full chain.
  • Broken link and 404 checks: campaign links, backlinks you bought, links in newsletters, product feeds.
  • Redirect chain clean-up: find 2+ hop chains and temporary (302/307) redirects that leak SEO value.
  • Uptime-style monitoring for many URLs: monitor mode on a schedule returns only what changed (a page that started returning 500, a redirect that now points elsewhere).
  • Feeding from a sitemap: take every URL from Sitemoss and check them all.

Why Bouncefern

BouncefernTypical status checker on the Store
Full redirect chainEvery hop with status, Location and msOften final status only
Redirect-map checkold -> new lines, matchesExpectedNot offered
SEO issueschains, 302/307, HTTPS→HTTP, no HTTPS, loops, 404/410, 5xxStatus code only
HEAD that servers refuseFalls back to GET automaticallyOften reported as an error
Changes onlyBuilt-in monitor mode, unchanged URLs freeNot offered
Price$1 per 1,000 URLs, no start fee$0.58 to $300 per 1,000 (rival median about $2), some with a $0.035 start fee per run (Store prices on 25 Oct 2026)

Input

FieldWhat it does
urlsURLs, domains, or old -> new lines (required).
methodHEAD (default, falls back to GET) or GET. Bodies are never downloaded.
userAgentbrowser, bot or googlebot.
maxRedirects, timeoutSecs, maxConcurrencyLimits.
onlyProblemsReturn (and charge) only URLs with errors or issues.
monitor, monitorKeyOnly URLs that are new or changed since the last monitor run.

Output

One row per URL: url, status (first response), finalStatus, finalUrl, category (ok, redirect, not-found, client-error, server-error, timeout, dns-error, ssl-error, redirect-loop, too-many-redirects), redirectCount, redirectChain (url, status, location, ms per hop), issues, ok, expectedUrl, matchesExpected, contentType, contentLength, server, xRobotsTag, lastModified, responseMs, method, error, and change/changedFields/previous in monitor mode. OUTPUT holds counts by category.

Pricing

  • $0.001 per URL checked ($1 per 1,000). No start fee.
  • Free: invalid lines, duplicates, healthy URLs when onlyProblems is on, unchanged URLs in monitor mode.
  • Set a maximum charge per run in Apify's run options; Bouncefern stops cleanly when it is reached.

Run it on a schedule

Apify Console → Schedules → Create new → cron 0 * * * * (hourly) or 0 7 * * * (daily) → Add Actor → Bouncefern with your URLs and "monitor": true. Through the API:

POST https://api.apify.com/v2/schedules?token=YOUR_TOKEN
{
"name": "bouncefern-landing-pages",
"cronExpression": "0 7 * * *",
"timezone": "America/New_York",
"isEnabled": true,
"actions": [{
"type": "RUN_ACTOR",
"actorId": "cybermax/url-status-checker",
"runInput": {
"body": "{\"urls\":[\"https://example.com/pricing\",\"https://example.com/signup\"],\"monitor\":true,\"monitorKey\":\"landing-pages\"}",
"contentType": "application/json"
}
}]
}

Add an email, Slack or webhook notification on "Run succeeded" under the Actor's Integrations tab.

Integrations

API (synchronous): POST https://api.apify.com/v2/acts/cybermax~url-status-checker/run-sync-get-dataset-items?token=YOUR_TOKEN with the input JSON returns the rows.

Make / Zapier: Apify app → "Run an Actor" (cybermax/url-status-checker, run synchronously, "onlyProblems": true) → "Get dataset items" → send each broken URL to Slack, email or a ticket.

n8n: Apify node ("Run an Actor and get dataset"), or HTTP Request:

POST https://api.apify.com/v2/acts/cybermax~url-status-checker/run-sync-get-dataset-items?token=YOUR_TOKEN
{"urls": ["https://example.com/a", "https://example.com/b"], "onlyProblems": true}

Google Sheets:

=IMPORTDATA("https://api.apify.com/v2/acts/cybermax~url-status-checker/runs/last/dataset/items?format=csv&fields=url,status,finalStatus,finalUrl,category,issues&token=YOUR_TOKEN")

Python (pip install apify-client):

from apify_client import ApifyClient
client = ApifyClient("YOUR_TOKEN")
run = client.actor("cybermax/url-status-checker").call(run_input={"urls": ["http://apify.com", "https://apify.com/store"]})
for r in client.dataset(run["defaultDatasetId"]).iterate_items():
print(r["url"], r["status"], r["finalStatus"], r["issues"])

AI agents (MCP): https://mcp.apify.com/?tools=cybermax/url-status-checker (Authorization: Bearer YOUR_TOKEN). Typical prompts: "Check these 200 URLs and list the broken ones", "Does every old URL in this redirect map land on the right new page?".

When NOT to use it

  • Pages behind a login: you'll see the login redirect, which is often what you want to know, but not the page itself.
  • Content checks: Bouncefern reads status and headers, not page text. For titles, descriptions and OG tags use Unfurlwren.
  • Sites that block datacenter IPs may answer 403 to any cloud checker.

FAQ

Why not a free online checker? They cap you at a handful of URLs and don't run on a schedule. Bouncefern takes thousands, shows every hop, checks redirect maps and alerts only on changes.

Why not curl in a script? You can. Bouncefern handles HEAD fallbacks, loops, relative Location headers, concurrency, timeouts and a clean table, and an AI agent can call it.

Can an AI agent use it (MCP)? Yes. Add https://mcp.apify.com/?tools=cybermax/url-status-checker as an MCP server in Claude, Cursor, VS Code or any MCP client.

Does it download pages? No. It sends HEAD (or GET and closes the connection at the headers), so it's fast and light on the sites you check.

Is it legal to use? Checking whether public URLs respond is what browsers and search engines do on every visit. This is general information, not legal advice.

Start now

▶ Try Bouncefern with a prefilled input · $1 per 1,000 URLs, no start fee. Questions? Open an issue on the Store page and it gets answered the same day.

Also from CyberMax

Changelog

  • 2026-10-25: First release: full redirect chains, redirect-map verification, SEO issue flags, HEAD→GET fallback, Googlebot user agent, only-problems filter, monitor mode.

© 2026 CyberMax. All rights reserved.