Bulk PageSpeed Insights Checker β Core Web Vitals, SEO & Fixes
Pricing
from $3.00 / 1,000 results
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
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
7 days ago
Last modified
Categories
Security
Limited permissionsShare
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 β
bothgives 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
coreWebVitalsverdict (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_SUMMARYand are not charged. - β
Safe defaults β gentle concurrency, automatic retries on Google rate limits / 5xx, a
maxUrlscap 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
| Field | What it does | Default |
|---|---|---|
urls | Pages or domains to check (required) | β |
strategy | mobile, desktop or both | mobile |
categories | Any of performance, accessibility, best-practices, seo | all four |
includeFieldData | Real-user CrUX Core Web Vitals | true |
includeOpportunities | Top fixes with estimated savings | true |
maxOpportunities | Fixes kept per row | 8 |
maxUrls | Safety cap per run | 50 |
maxConcurrency | Audits in parallel (1β8) | 2 |
apiKey | Optional own Google API key (stored encrypted) | built-in key |
locale | Language of fix titles, e.g. de, fr, ja | en |
outputFailedUrls | Also 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).