Website SEO Audit Scraper avatar

Website SEO Audit Scraper

Pricing

from $2.49 / 1,000 results

Go to Apify Store
Website SEO Audit Scraper

Website SEO Audit Scraper

SEO Audit Scraper SD - SEO Audit Scraper is an on-page SEO tool that extracts titles, meta descriptions, headings, canonicals, indexability, hreflang, Open Graph, structured data, image alt and link data per URL, with issues and a score.

Pricing

from $2.49 / 1,000 results

Rating

0.0

(0)

Developer

Neuro Scraper

Neuro Scraper

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

15 days ago

Last modified

Categories

Share

SEO Audit Scraper — on-page SEO checks for URLs or whole sites

SEO Audit Scraper audits each page you give it (or every page of a site it crawls) and returns one row per page with the on-page SEO facts, a list of issues with severity and a 0–100 score:

status code and redirect chain, response time, page size, HTTPS · title and meta description with lengths · H1–H6 counts and outline · canonical (self-referencing?), meta robots, X-Robots-Tag and robots.txt for Googlebot → indexable or not, and why · hreflang (x-default, self reference), html lang, viewport, charset, favicon · Open Graph and Twitter card tags · JSON-LD types (with parse errors) and microdata · images without alt · internal, external and nofollow links, links without text · mixed content · word count and text-to-HTML ratio · optional broken link check.

Input

FieldTypeDefaultMeaning
startUrlsURL listpython.org/about/, crawlee.dev/python/ (prefill)Pages to audit (crawl starting points in crawl mode)
crawlbooleanfalseAlso audit same-domain pages linked from them
maxPagesinteger20Pages audited
maxCrawlDepthinteger2Crawl depth (crawl mode)
checkLinksbooleanfalseCheck each page's links (404/410/5xx/unreachable = broken; 401/403/429 = blocked)
maxLinksToCheckPerPageinteger30Links checked per page (each link once per run)
slowResponseMsinteger2000SLOW_RESPONSE threshold
respectRobotsTxtbooleantrueDo not fetch pages robots.txt disallows
requestDelayMsinteger1000Pause between requests to one host
proxyConfigurationproxyApify datacenterRESIDENTIAL for sites that block datacenter IPs

Output (one row per page) — main fields

FieldMeaning
url, finalUrl, statusCode, redirectChain, redirectCount, responseTimeMs, pageSizeBytes, isHttpsFetch facts
indexable, indexabilityIssues, metaRobots, xRobotsTag, robotsTxtAllowsGooglebot, canonicalUrl, canonicalIsSelfIndexability
title, titleLength, metaDescription, metaDescriptionLengthSnippet
h1, h1Count, headingCounts, headingOutlineHeadings
lang, viewport, charset, hreflang, faviconLocale / mobile
openGraph, twitterCard, structuredDataTypes, jsonLdBlocks, jsonLdParseErrors, microdataTypesSocial + structured data
imagesCount, imagesWithoutAlt, imagesWithEmptyAlt, imagesWithoutAltSamplesImages
internalLinks, externalLinks, nofollowLinks, linksWithoutText, mixedContentResourcesLinks (unique URLs)
brokenLinks, linksBlockedOrUnauthorized, linksCheckedWith checkLinks
wordCount, textToHtmlRatioContent
score, issueCounts, issues[{severity, code, message}], e.g. TITLE_TOO_LONG, MISSING_H1, NOINDEX, BROKEN_LINKS

Measured (2026-10-03, see TEST_REPORT.md)

  • 15-page crawl with link checking (43 links) in 24 s; a BBC article's title, description, headings, hreflang and structured data matched an independent audit of the same page.

Limits

  • Pages are audited as served, before JavaScript; the score is a transparent heuristic, not Google's ranking.
  • Response times are measured from the crawler's location. No Core Web Vitals / Lighthouse.
  • Sites behind anti-bot pages return the challenge page's status; use a RESIDENTIAL proxy.

Example

{"startUrls": [{"url": "https://books.toscrape.com/"}], "crawl": true, "maxPages": 50, "checkLinks": true}