Bulk PageSpeed & Core Web Vitals Audit
Pricing
from $2.80 / 1,000 page audits
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
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Security
Limited permissionsShare
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 (
fieldDataPagevsfieldDataOrigin), 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
errorand aren't charged. - Monitoring-ready. Set
alertBelowPerformanceScoreand schedule a weekly run. Pages under the threshold getalert: 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
| Event | Price |
|---|---|
| Actor start | $0.00005 |
| Page audit (one URL × one device) | $0.004 |
| Failed audit | free |
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
- Add page URLs, or a sitemap to audit a whole site.
- Pick mobile, desktop or both, and the Lighthouse categories you need.
- Optionally set alertBelowPerformanceScore to flag slow pages.
- 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 ApifyClientclient = 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.