Bulk URL Status Checker: Redirects, Broken Links, SSL avatar

Bulk URL Status Checker: Redirects, Broken Links, SSL

Pricing

from $1.06 / 1,000 url checkeds

Go to Apify Store
Bulk URL Status Checker: Redirects, Broken Links, SSL

Bulk URL Status Checker: Redirects, Broken Links, SSL

Check thousands of URLs at once: HTTP status, full redirect chain (301/302 hops), response time, content type and size, page title, canonical, noindex (meta robots + X-Robots-Tag) and SSL certificate expiry. Find broken links, redirect loops and expiring certificates. Pay per URL.

Pricing

from $1.06 / 1,000 url checkeds

Rating

0.0

(0)

Developer

Larkmoor Data

Larkmoor Data

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

6 days ago

Last modified

Share

Paste a list of URLs (or upload thousands through the API) and get one clean row per URL: the HTTP status code, every redirect hop, the final URL, response time, content type and size, the page title, the canonical URL, whether the page is set to noindex, and, if you want, the SSL certificate's expiry date and issuer.

Built for SEO audits, site migrations, link monitoring and data cleaning. No browser, no proxy, no API key.

What you can use it for

  • Site migrations: confirm every old URL 301-redirects to the right new page, in one hop, with no loops
  • Broken link checks: find 404s, 410s, 5xx errors, DNS failures and timeouts in a link list, sitemap export or CRM field
  • SEO audits: spot pages that are noindex by accident (meta robots or X-Robots-Tag), wrong canonicals and slow responses
  • Certificate monitoring: list every HTTPS host whose certificate is invalid or expires within 30 days
  • Data cleaning: validate website columns in lead lists before outreach or enrichment

Why this one

  • Full redirect chain, hop by hop, with each status code, plus loop detection
  • Status category you can filter on: ok, ok_after_redirect, redirect, client_error, server_error, error
  • SEO fields in the same row: title, canonical, noindex (from the page and from the X-Robots-Tag header)
  • SSL expiry and issuer per host (optional), cached so a host is read once per run
  • "Only return problems" mode: you pay only for the rows that need attention
  • Fast: up to 50 parallel requests; servers that refuse HEAD are retried with GET automatically

Input

FieldWhat it doesDefault
urlsURLs or bare domains, one per linerequired
followRedirectsFollow and record redirect hopstrue
maxRedirectsHop limit10
fetchContentRead title, canonical and noindex from HTML pagestrue
methodHEAD or GET when content reading is offHEAD
checkSslRead certificate expiry, days left and issuerfalse
onlyProblemsReturn only broken, redirected, noindex or SSL-problem URLsfalse
concurrencyParallel requests (1–50)10
timeoutSecondsTimeout per request20
userAgentCustom User-Agentdesktop Chrome
maxResultsStop after this many URLs10,000

Example input:

{
"urls": ["https://apify.com", "http://github.com", "https://httpbin.org/status/404"],
"checkSsl": true
}

Output

FieldMeaning
url, finalUrlThe URL you gave and where it ended up
statusCode, statusText, ok, categoryFinal HTTP status and a filterable category
redirectCount, redirectChainNumber of hops and [{url, statusCode}] for each
responseTimeMsTotal time including redirects
contentType, contentLength, serverResponse headers
title, canonical, noindex, xRobotsTagSEO fields (HTML pages)
sslExpiresAt, sslDaysLeft, sslIssuerCertificate facts (when checkSsl is on)
error, checkedAtWhat went wrong (DNS, timeout, SSL, loop) and when the check ran

Sample rows from a test run (October 2026):

[
{"url": "http://github.com", "finalUrl": "https://github.com/", "statusCode": 200, "category": "ok_after_redirect",
"redirectCount": 1, "redirectChain": [{"url": "http://github.com", "statusCode": 301}, {"url": "https://github.com/", "statusCode": 200}],
"title": "GitHub · Change is constant. GitHub keeps you ahead. · GitHub · GitHub", "canonical": "https://github.com", "noindex": false,
"sslDaysLeft": 42, "sslIssuer": "Sectigo Limited"},
{"url": "https://httpbin.org/status/404", "statusCode": 404, "category": "client_error", "ok": false},
{"url": "https://expired.badssl.com/", "statusCode": null, "category": "error", "error": "SSL error: certificate has expired",
"sslExpiresAt": "invalid: certificate has expired"}
]

How much does it cost?

Pay per result: $1.25 per 1,000 URLs on the Free plan (a small one-time start fee per run), with automatic discounts on paid Apify plans. Platform compute is included. With "Only return problems" on, URLs that pass are not charged.

Worked examples:

  • A 500-page site migration check: 500 × $0.00125 = $0.63
  • 20,000 links from a CRM, all returned: $25.00
  • 20,000 links with "Only return problems", 1,200 problems found: 1,200 × $0.00125 = $1.50

FAQ

Why do some sites return 403 here but open in my browser? Some sites block automated requests. The row still tells you the server answered (it is up). Try a custom userAgent, or treat 403 from such sites as "reachable".

HEAD or GET? With content reading on (the default) every check is a GET, because the title and noindex live in the page. With it off, HEAD is used and servers that refuse HEAD are retried with GET.

Does it follow JavaScript or meta-refresh redirects? No: it follows HTTP redirects (301, 302, 303, 307, 308), which are the ones search engines treat as redirects.

What counts as a problem in "Only return problems"? Status 400 or above, a connection, DNS or SSL error, at least one redirect, noindex, or a certificate that is invalid or expires within 30 days.

Is it legal? It requests the URLs you give it, once each, like a browser would. Check only sites and links you have a legitimate reason to check, and keep concurrency modest on small sites.

Can I schedule it? Yes: save an Apify task with your list and run it daily or weekly; pair "Only return problems" with a webhook or email integration to get alerts.

Integrations

Run it through the Apify API, on a schedule, or from Make, Zapier, n8n, Google Sheets, webhooks and AI agents (Apify MCP server). Export the dataset as JSON, CSV, Excel, XML or HTML.

Changelog

  • 0.1 (October 2026): first release: status, redirect chain, loop detection, title, canonical, noindex, SSL expiry, problems-only mode.