Bulk PageSpeed Insights & Core Web Vitals Checker + PDF Report avatar

Bulk PageSpeed Insights & Core Web Vitals Checker + PDF Report

Pricing

from $6.00 / 1,000 page audits

Go to Apify Store
Bulk PageSpeed Insights & Core Web Vitals Checker + PDF Report

Bulk PageSpeed Insights & Core Web Vitals Checker + PDF Report

Bulk PageSpeed Insights and Lighthouse audit for hundreds of URLs on mobile and desktop. Get Core Web Vitals (LCP, CLS, INP), performance, SEO and accessibility scores, real-user CrUX data and the top fixes as JSON, CSV and a client-ready PDF report. $6 per 1,000 audits.

Pricing

from $6.00 / 1,000 page audits

Rating

0.0

(0)

Developer

Jordy

Jordy

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

20 hours ago

Last modified

Share

Bulk PageSpeed Insights & Core Web Vitals Checker with PDF Report

Audit hundreds of URLs on mobile and desktop with Google PageSpeed Insights or Lighthouse, and get scores, Core Web Vitals and the top fixes as JSON, CSV and a client-ready PDF, for $6 per 1,000 audits.

Paste a list of URLs and get, per page and device: the four Lighthouse scores (Performance, Accessibility, Best Practices, SEO), Core Web Vitals (LCP, CLS, INP, FCP, TBT, TTFB), real-user CrUX field data when Google has it, and the top opportunities ranked by estimated savings. Built for agencies, SEO consultants and developers who need to check many pages at once instead of pasting them into pagespeed.web.dev one by one.

What can it do?

  • ✅ Bulk PageSpeed checks: up to 500 URLs per run by default (maxUrls, up to 10,000). Duplicates removed, example.com becomes https://example.com/.
  • ✅ Mobile and/or desktop with Lighthouse's official settings.
  • ✅ Two engines: psi (Google's PageSpeed Insights API, with CrUX field data), local (Lighthouse 13 inside the Actor, no key or quota needed) and auto (PSI first, local Lighthouse when Google's daily quota runs out).
  • ✅ Core Web Vitals ratings: each metric rated good / needs-improvement / poor.
  • ✅ Top fixes per page (render-blocking requests, unused CSS, image sizes…) with estimated savings in ms and KB.
  • ✅ Reports: dataset rows, audit.csv, a client-ready audit-summary.pdf, RUN_SUMMARY, and optionally the full Lighthouse JSON per page.
  • ✅ Reliable at volume: retries on 429/5xx with back-off and Retry-After; quota errors are detected and never billed.

Use cases

  • SEO and web agencies: a monthly Core Web Vitals report for every client page, as a PDF you can send as-is.
  • Developers and QA: check performance before and after a release, or across all templates of a site.
  • Site migrations: compare old vs new URLs on the same engine.
  • Monitoring: schedule it weekly and push results to Google Sheets, Slack or a webhook to spot regressions.
  • Prospecting: audit a list of prospect websites and open the conversation with their scores.

How to use it

  1. Click Try for free and paste your URLs into URLs, one per line.
  2. Pick mobile, desktop or both. Optional: add your free Google PageSpeed Insights API key for your own quota and CrUX field data.
  3. Click Start. Each URL × device becomes one row in the Output tab; audit.csv and audit-summary.pdf are in the run's storage.
  4. To track Core Web Vitals over time, save the input as a task and add a weekly schedule.

Example input

{
"urls": ["https://example.com", "https://www.wikipedia.org", "https://www.python.org"],
"strategies": ["mobile", "desktop"],
"engine": "auto",
"apiKey": "",
"saveCsv": true,
"savePdf": true
}

Call it from the API

curl -X POST "https://api.apify.com/v2/acts/jordydev~pagespeed-bulk-audit/run-sync-get-dataset-items?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"urls":["https://example.com","https://www.python.org"],"strategies":["mobile","desktop"]}'

Example output

Real run on 27 Oct 2026 (local Lighthouse engine):

URLDevicePerformanceAccessibilityBest practicesSEOLCPCLSTBT
https://www.python.org/mobile8475100923,942 ms0.0030 ms
https://www.python.org/desktop937910092982 ms0.1380 ms
https://www.wikipedia.org/mobile69941001002,368 ms0.0012,088 ms
https://www.wikipedia.org/desktop7999100100312 ms0.001482 ms
https://example.com/mobile1009610080825 ms015 ms

One row as JSON (another run the same day, so timings differ slightly; shortened to 2 opportunities):

{
"tool": "pagespeed-bulk-audit",
"target": "https://www.python.org/",
"status": "ok",
"strategy": "mobile",
"lighthouseVersion": "13.5.0",
"scores": { "performance": 84, "accessibility": 75, "bestPractices": 100, "seo": 92 },
"performanceRating": "needs-improvement",
"lab": { "lcpMs": 4025, "fcpMs": 2482, "cls": 0.003, "tbtMs": 5, "speedIndexMs": 2482, "ttfbMs": 52 },
"labRatings": { "lcp": "poor", "cls": "good", "tbt": "good", "fcp": "needs-improvement" },
"topOpportunities": [
{ "id": "render-blocking-insight", "title": "Render-blocking requests", "savingsMs": 1400 },
{ "id": "unused-css-rules", "title": "Reduce unused CSS", "savingsMs": 570, "savingsKb": 128.5 }
],
"field": null,
"engine": "lighthouse-local"
}

With the psi engine, field holds CrUX data when available, e.g. { "source": "url", "coreWebVitalsAssessment": "needs-improvement", "lcpMs": 2300, "inpMs": 240, "cls": 0.05 } (source: "origin" when only site-wide data exists).

How much does it cost?

Pay per event: you only pay per audit, not for Apify compute.

EventPriceWhen it's charged
Page audit$0.006 ($6 per 1,000 audits)One URL audited on one device (mobile or desktop)
Actor start$0.00005Apify's standard fee per run start (per GB of memory)

Examples: 100 URLs on mobile ≈ $0.60; 100 URLs on mobile + desktop ≈ $1.20; 1,000 URLs on mobile ≈ $6.00.

Free: invalid URLs, blocked (private/internal) addresses and Google quota errors. Pages that fail on the target site itself (DNS error, page doesn't load) are charged, because the audit was run. You can set a maximum cost per run; the Actor stops cleanly at the cap.

FAQ

Do I need a Google API key? No, but it's recommended. Without a key Google's shared quota is often used up and the Actor falls back to local Lighthouse. A free key (Google Cloud → enable "PageSpeed Insights API" → create an API key) gives you your own quota and CrUX field data. The key is stored as a secret input.

Is this the same as pagespeed.web.dev? With the psi engine it calls the same Google PageSpeed Insights API. With local it runs the same open-source Lighthouse engine on Apify's servers.

Why are my scores different from pagespeed.web.dev? Lighthouse lab scores vary between runs, machines and locations. Compare trends with the same engine rather than single numbers.

What is field data? Real-user measurements from the Chrome UX Report, only via the PSI engine and only for pages or sites with enough traffic.

Can I audit any website? Each URL is loaded once, like a normal visitor (PSI requests come from Google). Private and internal addresses are refused. Only audit sites you are allowed to test; you are responsible for how you use the results.

Can I get the full Lighthouse report? Turn on saveRawLighthouseJson (local engine) to store the complete JSON per page.

Can I schedule it? Yes. Save your input as a task and add a schedule. Each run has its own CSV and PDF, so you can compare over time.

More tools by the same developer, all pay-per-event with the same clean output style:


Related searches: bulk PageSpeed Insights checker, PageSpeed Insights API, Lighthouse bulk audit, Core Web Vitals checker, LCP CLS INP report, website speed test API, page speed test bulk, performance report PDF for clients.