Bulk PageSpeed & Core Web Vitals Audit avatar

Bulk PageSpeed & Core Web Vitals Audit

Pricing

from $2.80 / 1,000 page audits

Go to Apify Store
Bulk PageSpeed & Core Web Vitals Audit

Bulk PageSpeed & Core Web Vitals Audit

Audit hundreds of URLs or a whole sitemap with Google PageSpeed Insights: Lighthouse scores, lab metrics, real-user Core Web Vitals (CrUX) and top fixes, on mobile and desktop. Failed audits are free.

Pricing

from $2.80 / 1,000 page audits

Rating

0.0

(0)

Developer

Mivah

Mivah

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Security

Limited permissions

Share

Run Google PageSpeed Insights on hundreds of pages at once: paste URLs, or give a sitemap and audit the whole site. Each audit returns:

  • 🟢 Lighthouse scores: Performance, Accessibility, Best Practices, SEO (0–100).
  • ⏱️ Lab metrics: LCP, CLS, TBT, FCP, Speed Index, TTI and server response time.
  • 👥 Real-user Core Web Vitals (CrUX field data) for the page and the whole origin: LCP, INP, CLS, FCP and TTFB at the 75th percentile, plus Google's pass/fail assessment.
  • 🛠️ Top fixes: the biggest improvement opportunities, with estimated time (ms) and size (KiB) savings.
  • 📱 Mobile and desktop in one run.

Why this one?

  • Whole sites from a sitemap. Sitemap indexes are followed automatically and URLs de-duplicated.
  • Honest field data. When Google has no real-user data for a specific page, PageSpeed silently shows origin data instead. This Actor keeps the two apart (fieldDataPage vs fieldDataOrigin), so you never mistake site-wide numbers for a page's own.
  • Parallel and resilient. Concurrent audits, with automatic retries when Google is busy.
  • Failed audits are free. Pages that can't be audited are returned with an error and aren't charged.
  • Monitoring-ready. Set alertBelowPerformanceScore and schedule a weekly run. Pages under the threshold get alert: true, ready for a Slack or email integration.

Input example

{
"sitemapUrls": ["https://www.example.com/sitemap.xml"],
"urls": ["https://www.example.com/pricing"],
"maxUrls": 200,
"strategies": ["mobile", "desktop"],
"alertBelowPerformanceScore": 50
}

Output example (shortened)

{
"url": "https://www.example.com/pricing",
"strategy": "mobile",
"scores": {"performance": 62, "accessibility": 94, "best-practices": 100, "seo": 92},
"lab": {"lcpMs": 3890, "cls": 0.012, "tbtMs": 410, "fcpMs": 1650, "speedIndexMs": 3020, "ttiMs": 5900, "ttfbMs": 220},
"fieldDataPage": null,
"fieldDataOrigin": {"overall": "AVERAGE", "lcpMs": 2600, "lcpMsCategory": "AVERAGE", "inpMs": 180, "inpMsCategory": "FAST", "cls": 0.03, "clsCategory": "FAST"},
"coreWebVitalsPassed": false,
"opportunities": [
{"id": "render-blocking-resources", "title": "Eliminate render-blocking resources", "savingsMs": 1210, "savingsKiB": 0},
{"id": "unused-javascript", "title": "Reduce unused JavaScript", "savingsMs": 450, "savingsKiB": 310}
],
"alert": false,
"lighthouseVersion": "12.8.0"
}

Pricing

EventPrice
Actor start$0.00005
Page audit (one URL × one device)$0.004
Failed auditfree

A 200-page site on mobile and desktop (400 audits) costs $1.60.

Use cases

  • SEO agencies: audit a client's whole site in minutes and export to Sheets or CSV.
  • Developers: check performance regressions across all templates after a release.
  • Monitoring: run on a weekly schedule and alert on drops.
  • Competitor benchmarking: compare Core Web Vitals across competitors' homepages.
  • AI agents: callable through the Apify MCP server.

Lab data comes from Google's Lighthouse run in Google's data centres; field data is Google's Chrome UX Report (last 28 days of real Chrome users). Low-traffic pages often have no field data.

How to use Bulk PageSpeed & Core Web Vitals Audit

  1. Add page URLs, or a sitemap to audit a whole site.
  2. Pick mobile, desktop or both, and the Lighthouse categories you need.
  3. Optionally set alertBelowPerformanceScore to flag slow pages.
  4. Click Start, then export scores, Core Web Vitals and top fixes, or schedule it weekly.

Use it from code (API)

Run it from Python with the official client (pip install apify-client):

from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run = client.actor("fjordlabs/pagespeed-audit").call(run_input={'urls': ['https://example.com'], 'strategies': ['mobile', 'desktop'], 'maxUrls': 100})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)

Or with one HTTP call that returns the results directly:

curl -X POST "https://api.apify.com/v2/acts/fjordlabs~pagespeed-audit/run-sync-get-dataset-items?token=<YOUR_APIFY_TOKEN>" \
-H "Content-Type: application/json" -d '{"urls": ["https://example.com"], "strategies": ["mobile", "desktop"], "maxUrls": 100}'

It also works with Make, Zapier, n8n, Google Sheets and webhooks through Apify's integrations.

Use with AI agents (MCP)

Agents can call this Actor as a tool through Apify's MCP server (mcp.apify.com). Add fjordlabs/pagespeed-audit to the server's Actors. Results are clean JSON with a small default size, so they fit well in an agent's context.

FAQ

Do I need a Google API key? No. It's optional, only for very large daily volumes.

Is this real-user data or lab data? Both: Lighthouse lab scores plus real-user Core Web Vitals (CrUX) where Google has them for the page or site.

Can I monitor a whole site? Yes. Give a sitemap, set maxUrls, and schedule the Actor weekly with an alert threshold.

Why are scores a bit different each run? Lighthouse lab results vary slightly between runs. Compare trends, not single points.

Am I charged for errors? No. Rows that fail are never charged; you only pay for results.

More from fjordlabs