Website SEO Audit - Broken Links, Meta Tags & Core Web Vitals avatar

Website SEO Audit - Broken Links, Meta Tags & Core Web Vitals

Pricing

from $8.00 / 1,000 page auditeds

Go to Apify Store
Website SEO Audit - Broken Links, Meta Tags & Core Web Vitals

Website SEO Audit - Broken Links, Meta Tags & Core Web Vitals

Crawl whole websites and get a 0-100 SEO score per page: titles, meta descriptions, H1, canonical, noindex, broken links, Core Web Vitals (LCP, CLS, TBT), page weight, structured data, sitemap and robots.txt, plus a shareable HTML report.

Pricing

from $8.00 / 1,000 page auditeds

Rating

0.0

(0)

Developer

Site Audit Lab

Site Audit Lab

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 hours ago

Last modified

Categories

Share

Run a full technical and on-page SEO audit of entire websites in one go. Give a list of websites. This Actor reads each site's sitemap and follows its internal links, opening every page in a real Chrome browser. It returns:

  • an SEO score out of 100 for every page,
  • every problem found, ranked error / warning / notice, with the value that caused it,
  • broken links (404, 410, 5xx, unreachable), with the page where each one was found,
  • Core Web Vitals lab metrics: LCP, CLS, Total Blocking Time, server response time and page weight,
  • duplicate titles and meta descriptions across the site,
  • a shareable HTML report per run, ready to send to a client.

It's built for SEO agencies, freelancers, web developers and site owners who need a fast site audit without a monthly SEO tool subscription.

What it checks

AreaChecks
IndexabilityHTTP status, redirects, noindex (meta robots and X-Robots-Tag), canonical tag, robots.txt, sitemap.xml
On-pageTitle (missing, too long, too short, duplicate), meta description (missing, length, duplicate), H1 (missing, multiple), H2/H3 counts, word count, lang attribute, hreflang
LinksInternal and external links on every page, broken links with anchor text, internal/external link counts
SpeedLargest Contentful Paint, Cumulative Layout Shift, Total Blocking Time, time to first byte, load time, page weight, number of requests
Mobile & securityViewport meta tag, HTTPS, mixed content
Rich results & socialStructured data types (JSON-LD and microdata), Open Graph tags, Twitter card
ImagesImages without alt text

Why use it

  • Whole sites, in bulk. Audit hundreds of websites in one run, for example to qualify prospects or monitor client sites every week.
  • JavaScript sites included. Pages are rendered in Chrome, so React, Vue and other single-page applications are audited as Google sees them.
  • Sitemap and links. It finds orphan pages through the sitemap as well as linked pages.
  • Fast link checking. Each unique link is checked once per run, even if it appears on every page.
  • Pay per page. There is no subscription: you only pay for the pages audited.

Input

FieldDescriptionDefault
Websites to auditOne or more URLs. The audit starts there.required
Maximum pages per websitePages to audit per site. Use 1 to audit only the URLs you entered.20
Use the sitemapAlso audit pages listed in sitemap.xmlYes
Check linksAll links, internal links only, or noneAll
Maximum links checked per pageLimit for very large pages200
DeviceDesktop (1366 px) or mobile (390 px)Desktop
ProxyOnly for websites that block automated visitsNone

Example input:

{
"startUrls": [{ "url": "https://example.com" }, { "url": "https://another-site.com" }],
"maxPagesPerSite": 50,
"checkLinks": "all",
"device": "mobile"
}

Output

One dataset item per page (shortened):

{
"url": "https://example.com/about",
"statusCode": 200,
"seoScore": 74,
"errors": 1,
"warnings": 2,
"notices": 3,
"issues": [
{ "id": "broken-links", "severity": "error", "message": "The page links to broken URLs (404, 410, 5xx or unreachable)", "details": "1 broken links" },
{ "id": "description-missing", "severity": "warning", "message": "Missing meta description" }
],
"title": "About us | Example",
"titleLength": 18,
"metaDescription": null,
"h1": ["About us"],
"canonical": "https://example.com/about",
"indexable": true,
"structuredDataTypes": ["Organization"],
"wordCount": 420,
"brokenLinks": [{ "url": "https://example.com/old-page", "status": 404, "anchorText": "Our history", "internal": true }],
"performance": { "ttfbMs": 180, "lcpMs": 1900, "cls": 0.02, "totalBlockingTimeMs": 120, "pageWeightKb": 1450, "requests": 48 }
}

The run's key-value store also contains:

  • REPORT: an HTML report per website with the average score, issues by severity, broken links, duplicate titles and descriptions, and the pages to fix first.
  • SUMMARY: the same summary as JSON.

You can export the dataset as JSON, CSV, Excel or HTML. You can also call the Actor through the Apify API, run it on a schedule, or use it from Make, Zapier or n8n.

How the score works

Each page starts at 100. Each problem found removes points: 10 for an error, 5 for a warning, 1 for a notice. Use the score to compare pages and track progress over time.

Good to know

  • Speed metrics are lab measurements taken from a data center with a real Chrome browser. They are reliable for comparing pages and spotting slow ones, but real visitors (Google's field data) may see different values.
  • Some websites, such as LinkedIn, refuse automated link checks. These links are counted as linksUnverified, not as broken.
  • Only audit websites you own or have permission to test.

FAQ

Can I audit only a list of pages? Yes. Set "Maximum pages per website" to 1, turn off "Use the sitemap" and list the exact pages.

Should I use desktop or mobile? Google indexes the mobile version of websites, so mobile gives the most relevant results for SEO.

Does it also check accessibility? For a full WCAG / European Accessibility Act audit, use our Website Accessibility Audit Actor.