Bulk PageSpeed Insights Checker β€” Core Web Vitals, SEO & Fixes avatar

Bulk PageSpeed Insights Checker β€” Core Web Vitals, SEO & Fixes

Pricing

from $3.00 / 1,000 results

Go to Apify Store
Bulk PageSpeed Insights Checker β€” Core Web Vitals, SEO & Fixes

Bulk PageSpeed Insights Checker β€” Core Web Vitals, SEO & Fixes

Run Google PageSpeed Insights (Lighthouse) on hundreds of URLs: Performance, Accessibility, Best Practices & SEO scores, lab metrics, real-user Core Web Vitals (CrUX) with PASSED/FAILED verdict and top fixes. Mobile/desktop. No API key needed.

Pricing

from $3.00 / 1,000 results

Rating

0.0

(0)

Developer

Erwinbooze Ricardo

Erwinbooze Ricardo

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

7 days ago

Last modified

Security

Limited permissions

Share

Bulk PageSpeed Insights Checker runs Google PageSpeed Insights (Lighthouse) on hundreds of URLs in one run and gives you one clean row per page: Performance, Accessibility, Best Practices and SEO scores, lab speed metrics (LCP, CLS, TBT, FCP, TTFB, Speed Index), real-user Core Web Vitals from the Chrome UX Report (CrUX) with a simple PASSED / FAILED verdict, and a short list of the biggest fixes with estimated time savings.

No coding, no Google API key needed (a built-in key is included; you can add your own), no browser to babysit. Export to CSV, Excel, JSON or Google Sheets, schedule it weekly, or call it from an AI agent.

Why this PageSpeed checker?

  • βœ… Bulk β€” paste 5 or 5,000 URLs (or bare domains); duplicates removed, invalid lines skipped.
  • βœ… Mobile, desktop or both β€” both gives two rows per URL so you can compare.
  • βœ… All four Lighthouse scores (0–100): Performance, Accessibility, Best Practices, SEO.
  • βœ… Real-user Core Web Vitals (CrUX) β€” p75 LCP, CLS, INP, FCP, TTFB for the page and its whole origin, plus a coreWebVitals verdict (PASSED, FAILED, INSUFFICIENT_DATA, NO_DATA) using Google's thresholds (LCP ≀ 2.5 s, CLS ≀ 0.1, INP ≀ 200 ms).
  • βœ… Top opportunities, not a 2 MB report β€” e.g. Improve image delivery β€” Est savings of 35 KiB, Reduce unused JavaScript β€” 450 ms, sorted by impact.
  • βœ… Failed URLs are free β€” unreachable or blocked pages are listed in RUN_SUMMARY and are not charged.
  • βœ… Safe defaults β€” gentle concurrency, automatic retries on Google rate limits / 5xx, a maxUrls cap and respect for your max-charge limit.
  • βœ… AI-agent ready β€” simple input, flat JSON output; works through the Apify MCP server in Claude, ChatGPT, Cursor and other agents.

Use cases

  • SEO agencies β€” audit every client site (or every page of one site) in a single run and send a report.
  • Monitor Core Web Vitals β€” schedule a weekly run and get alerted when a page drops from PASSED to FAILED.
  • Competitor benchmarking β€” compare your speed and SEO scores with competitors, mobile vs desktop.
  • Lead generation β€” find slow websites in a niche and pitch speed optimisation.
  • Accessibility checks β€” quick Lighthouse accessibility score across many pages.
  • Developers & QA β€” check pages after a release without opening PageSpeed Insights one URL at a time.

Input

FieldWhat it doesDefault
urlsPages or domains to check (required)β€”
strategymobile, desktop or bothmobile
categoriesAny of performance, accessibility, best-practices, seoall four
includeFieldDataReal-user CrUX Core Web Vitalstrue
includeOpportunitiesTop fixes with estimated savingstrue
maxOpportunitiesFixes kept per row8
maxUrlsSafety cap per run50
maxConcurrencyAudits in parallel (1–8)2
apiKeyOptional own Google API key (stored encrypted)built-in key
localeLanguage of fix titles, e.g. de, fr, jaen
outputFailedUrlsAlso save failed URLs as rows (billed)false
{
"urls": ["https://example.com", "apify.com", "https://www.wikipedia.org"],
"strategy": "both",
"categories": ["performance", "seo", "accessibility", "best-practices"]
}

Output

One dataset item per URL Γ— device:

{
"url": "https://example.com/",
"finalUrl": "https://example.com/",
"strategy": "mobile",
"fetchTime": "2026-10-30T13:47:45.462Z",
"performanceScore": 100,
"accessibilityScore": 96,
"bestPracticesScore": 100,
"seoScore": 80,
"lcpMs": 754, "cls": 0, "inpMs": null, "tbtMs": 0, "fcpMs": 754, "ttfbMs": 1, "speedIndexMs": 754,
"pageWeightKb": 2,
"coreWebVitals": "PASSED",
"fieldData": { "scope": "url", "lcpP75Ms": 1189, "clsP75": 0, "inpP75Ms": 83, "fcpP75Ms": 1022, "ttfbP75Ms": 690, "overallCategory": "FAST", "coreWebVitals": "PASSED" },
"originFieldData": { "lcpP75Ms": 1189, "clsP75": 0, "inpP75Ms": 83, "coreWebVitals": "PASSED" },
"opportunities": [
{ "id": "cache-insight", "title": "Use efficient cache lifetimes", "displayValue": "Est savings of 2 KiB", "score": 0.5, "overallSavingsMs": 0 }
],
"reportUrl": "https://pagespeed.web.dev/analysis?url=https%3A%2F%2Fexample.com%2F&form_factor=mobile",
"error": null
}

Units: all ...Ms fields are milliseconds; cls / clsP75 are unitless; scores are 0–100. Lab metrics come from a simulated Lighthouse load. INP can only be measured on real users, so inpMs (lab) is always null β€” use tbtMs as the lab proxy and fieldData.inpP75Ms for the real value. Pages with little traffic may have no URL-level CrUX data; then fieldData.scope is origin or fieldData is null.

A RUN_SUMMARY record in the key-value store lists counts, skipped invalid URLs and failed URLs with the error from Google.

Pricing

Pay per result: $0.003 per URL Γ— device checked successfully, plus Apify's tiny per-run start fee. 1,000 mobile checks β‰ˆ $3. Failed URLs are not charged (unless you turn on outputFailedUrls).

Tips & limits

  • Each audit takes ~10–40 s on Google's side; 100 URLs at concurrency 2 take roughly 15–25 minutes.
  • Google needs to reach the page from the public internet: pages behind logins, firewalls or bot protection fail with FAILED_DOCUMENT_REQUEST (free).
  • Scores vary a few points between runs β€” that's normal Lighthouse variance.
  • For very large or frequent jobs, add your own free Google API key (Google Cloud β†’ enable PageSpeed Insights API β†’ Credentials β†’ API key) to get your own daily quota.

FAQ

Is this the official Google PageSpeed Insights? It uses Google's public PageSpeed Insights API v5, so scores match pagespeed.web.dev. This Actor is not affiliated with Google.

Do I need an API key? No. Optionally bring your own for higher volume.

Can I check a whole website? Paste the list of page URLs (e.g. from your sitemap).