Website SEO Audit Crawler — On-Page Analyzer
Pricing
from $5.00 / 1,000 results
Website SEO Audit Crawler — On-Page Analyzer
Crawl a whole website and export an on-page SEO audit to CSV/JSON: meta tag checker, canonical & noindex checker, schema.org type extractor. No browser.
Pricing
from $5.00 / 1,000 results
Rating
0.0
(0)
Developer
Logiover
Maintained by CommunityActor stats
0
Bookmarked
61
Total users
22
Monthly active users
4 days ago
Last modified
Categories
Share
Website SEO Audit Crawler — On-Page SEO Analyzer & SEO Spider (No API)
Audit the on-page SEO of an entire website in one run. This SEO crawler / SEO spider starts from a single URL, follows every internal link across the domain, and runs a full on-page SEO audit on each page — titles, meta descriptions, headings, canonical tags, robots/indexability, Open Graph, Twitter cards, hreflang, schema.org types, an honest word count, image alt coverage and internal/external link counts — then hands you a ready-made list of detected SEO issues per page. Point it at your homepage and it audits thousands of pages automatically. Fast, pure HTTP, no headless browser, no login, one row per page.
🏆 Why this SEO audit crawler?
28 on-page fields per page · 13 automatic issue flags · thousands of pages per run · full-site internal-link crawl · boilerplate-free word count · schema.org type detection · pure HTTP (no browser, no API key) · export to JSON / CSV / Excel. The unofficial technical SEO audit tool and bulk meta-tag / canonical / noindex checker for site audits, content audits and pre-launch QA.
✨ What this Actor does / Key features
- 🕷️ Full-site crawl — start from one URL and follow internal links across the whole domain (same-domain strategy, asset URLs skipped automatically).
- 🏷️ Complete on-page data — title, meta description, H1s, H2 count, canonical, meta robots, Open Graph, Twitter card, hreflang,
lang, charset and viewport for every page. - 🧱 Structured-data detection — extracts every schema.org
@typefrom JSON-LD (including entries inside@graph). - 🚩 13 automatic issue flags — missing/too-long/too-short titles, missing/too-long/too-short meta descriptions, missing or multiple H1, missing canonical,
noindex, images withoutalt, missing viewport and thin content. - 🔢 Honest quality metrics — a boilerplate-free word count (scripts, styles, nav, header, footer and sidebars stripped), image alt coverage, and internal vs. external link counts.
- 🔗 Link accounting — counts internal and external links per page so you can spot orphaned or over-linked pages.
- ⚡ Fast & cheap — pure HTTP with Cheerio, no headless browser, configurable high concurrency.
- 🔑 No API key, no login — just an Apify account and a start URL.
🚀 Quick start (3 steps)
- Configure — paste one or more website URLs into Start URLs (your homepage is a great seed). Set Max pages to crawl — use
0to audit the whole site. - Run — click Start. The crawler spiders internal links and audits the server-rendered HTML of every page, streaming one row per page into your dataset.
- Get your data — open the Output tab and export to JSON, CSV, Excel or XML, or pull it via the Apify API. Sort or filter by the
issuescolumn to build a prioritized fix-list.
📥 Input
Give the Actor at least one entry in startUrls. Everything else is optional.
Example — full-site audit of a whole domain
{"startUrls": [{ "url": "https://example.com" }],"maxPagesToCrawl": 0,"maxConcurrency": 10}
Example — quick 500-page sample of a large site
{"startUrls": [{ "url": "https://example.com" }],"maxPagesToCrawl": 500,"maxConcurrency": 20}
Example — audit several sites (or sections) in one run
{"startUrls": [{ "url": "https://example.com" },{ "url": "https://blog.example.com" },{ "url": "https://shop.example.com" }],"maxPagesToCrawl": 2000,"maxConcurrency": 10}
| Field | Type | Description |
|---|---|---|
startUrls | array | Websites to crawl. The crawler follows internal links from each seed and audits the on-page SEO of every page it reaches. Accepts objects ({ "url": "https://…" }) or plain URL strings. Required. |
maxPagesToCrawl | integer | Maximum pages to crawl per run. Set 0 for no limit (crawl the whole site). Default 1000, minimum 0. |
maxConcurrency | integer | Number of parallel requests. Lower this if the target site rate-limits you. Default 10, minimum 1. |
Tip: Set
maxPagesToCrawlto0for a complete site audit, then schedule the run to monitor on-page SEO health over time. LowermaxConcurrencyif you start seeing failed requests on a rate-limited host.
📤 Output
One row per page — 28 fields plus a crawledAt timestamp, exportable to JSON, CSV, Excel or XML. Here is a trimmed sample record:
{"url": "https://example.com/blog/post","statusCode": 200,"title": "How to Do On-Page SEO","titleLength": 22,"metaDescription": null,"metaDescriptionLength": 0,"h1": ["How to Do On-Page SEO"],"h1Count": 1,"h2Count": 6,"canonical": "https://example.com/blog/post","metaRobots": null,"isIndexable": true,"lang": "en","charset": "utf-8","hasViewport": true,"hreflangCount": 0,"wordCount": 1240,"imagesCount": 8,"imagesMissingAlt": 3,"internalLinks": 41,"externalLinks": 6,"ogTitle": "How to Do On-Page SEO","ogImage": "https://example.com/img/og.png","twitterCard": "summary_large_image","schemaTypes": ["Article", "BreadcrumbList"],"issues": ["missing-meta-description", "images-missing-alt"],"crawledAt": "2026-07-06T12:00:00.000Z"}
💡 Use cases
- Technical SEO audits — surface on-page issues across a whole site in a single run and hand clients a prioritized fix-list from the
issuescolumn. - Content audits — spot thin content (
thin-content), missing meta descriptions and duplicate/missing titles at scale. - Pre-launch QA — verify titles, canonicals and indexability before a site goes live so nothing ships with
noindexor a broken canonical. - Migration & redesign checks — confirm meta tags, canonicals and indexability survived a redesign or platform migration.
- SEO monitoring — schedule the crawl and track on-page SEO health, word counts and issue counts over time.
- Structured-data coverage — inventory which pages expose which schema.org
@types (Article, Product, FAQPage, BreadcrumbList…).
👥 Who uses it
SEO agencies & consultants · in-house SEO and content teams · web developers & QA engineers running pre-launch checks · growth marketers auditing landing pages · site owners monitoring on-page health after migrations.
💰 Pricing
This Actor runs on a simple pay-per-result model — you pay for the audited pages you extract, with no separate Apify platform fees to calculate. Try it on the free tier first, then scale up to full-site crawls. See the Pricing tab on this page for the current rate.
❓ Frequently Asked Questions
Is it legal to crawl a website for an SEO audit? Yes. The Actor reads only the publicly served HTML of the pages it crawls — the same content search-engine crawlers fetch. You are responsible for crawling sites you own or are authorized to audit, respecting each site's terms of service, and using the data lawfully.
Is there a public SEO audit API? Is this an API alternative? This Actor is a self-contained crawl-and-audit engine, so it works as an on-page SEO API alternative — point it at a URL and it returns structured on-page data and detected issues for every page as JSON/CSV, with no third-party API key required.
Do I need an API key or a login? No. There is no third-party API key or login required — only an Apify account. The crawler fetches public HTML over direct HTTP.
Can I crawl a website for SEO without a browser? Yes — this is a pure-HTTP SEO crawler (Cheerio, no headless browser), so it audits server-rendered HTML fast and cheap across thousands of pages. Note that content injected purely by client-side JavaScript after load is not evaluated.
Does it render JavaScript? No — it audits the server-rendered HTML, which is what search engines index first. This keeps runs fast and inexpensive.
How much data can I get / how many pages can I crawl?
You can audit thousands of pages per run. Set maxPagesToCrawl to 0 to crawl the whole site with no cap, or set a number to sample a large site. Throughput scales with maxConcurrency.
How do I export an on-page SEO audit to CSV or JSON? Run the crawl, then download the dataset as CSV, JSON, Excel or XML (or pull it via the REST API). Every audited page is one row, so it drops straight into a spreadsheet or BI tool.
Is there a site-wide meta tag and canonical checker?
Yes — it works as a bulk meta-tag checker and a noindex/canonical checker across the whole site, flagging missing titles, missing meta descriptions, multiple H1s, missing canonicals and noindex pages in the issues column.
Does it extract schema.org structured-data types?
Yes — it acts as a schema.org type extractor, pulling every JSON-LD @type it finds on each crawled page (including types nested inside @graph) into the de-duplicated schemaTypes field.
How do I run a full on-page SEO audit of my whole website?
Paste your homepage into Start URLs, set Max pages to crawl to 0, and the crawler audits every page's title, meta, canonical, headings, word count and issues in one run — one row per page.
Can I find all pages accidentally set to noindex?
Yes. After the crawl, filter the export where isIndexable is false (or where issues contains noindex) to surface every page carrying a noindex robots directive across the site.
How is wordCount calculated?
From the body text after removing script, style, noscript, nav, header, footer and aside elements — an honest content word count that ignores boilerplate and navigation.
How do I catch titles and meta descriptions that will be truncated in search results?
Sort or filter by titleLength and metaDescriptionLength, or look for the title-too-long / meta-description-too-long issue flags, to find tags that exceed the lengths search engines typically display.
🔗 More website-crawling & SEO tools by logiover
Building a full site-intelligence pipeline? Pair the SEO audit with the rest of the crawling suite:
| Actor | What it does |
|---|---|
| Broken Link Checker | Crawl a site and find dead links with their HTTP status codes |
| Website Link Graph Crawler | Map internal and outbound links to build a site link graph |
| Website Tech Stack Detector | Detect CMS, frameworks, analytics and other technologies per site |
| Website Text & Markdown Crawler | Crawl a site and export clean page text / Markdown at scale |
| JSON-LD Schema & Meta Tag Extractor | Deep structured-data and meta-tag extraction per URL |
| Sitemap to URL Crawler | Extract every URL from any sitemap.xml (recursively) |
| URL to Markdown | Convert any page into clean Markdown for LLMs and docs |
| Website Image & Media Extractor | Extract all images and media assets from a site |
| Bulk URL Status Checker | Bulk HTTP status, redirect chains and response-time checks |
| Website Contact Scraper | Extract emails, phones and social links from any list of websites |
| Website Change Monitor | Detect and track content changes on pages over time |
| Bulk HTTP Security Headers | Audit HSTS, CSP, X-Frame-Options and other security headers in bulk |
👉 Browse all logiover scrapers on Apify Store — 180+ actors across real estate, jobs, crypto, social media & B2B data.
⏰ Scheduling & integration
Schedule this Actor on Apify to re-audit your site daily or weekly and catch SEO regressions the moment they ship. Export results to JSON, CSV or Excel, sync to Google Sheets, or push to your database, BI tools and webhooks through the Apify API. Connect it to Make, n8n or Zapier to trigger alerts when the count of pages with issues — or noindex pages — rises after a deploy.
⭐ Support & feedback
Found a bug or need an extra on-page check or field? Open an issue on the Issues tab — response is usually fast. If this Actor saves you time, a ★★★★★ review on the Store page genuinely helps and is hugely appreciated. 🙏
⚖️ Legal
This Actor reads only publicly served HTML and is intended for legitimate SEO-audit, QA and research use on sites you own or are authorized to audit. You are responsible for complying with each site's terms of service, GDPR and any applicable local laws when using the data.
📝 Changelog
2026-07-06
- ✨ README overhaul: added shields badges, ready-to-run example scenarios, a complete 28-field output reference with all 13 issue flags, expanded high-intent FAQ, and a cross-linked website-crawling tool grid.
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 exporting an on-page SEO audit to CSV/JSON, crawling a site without a browser, and site-wide meta tag / canonical / schema.org type checking.
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.