Google PageSpeed Insights – Core Web Vitals & Lighthouse (BYOK)
Pricing
from $1.50 / 1,000 audited pages
Google PageSpeed Insights – Core Web Vitals & Lighthouse (BYOK)
Bulk Google PageSpeed Insights audits via the official PSI API. Bring your own free Google API key. Performance, accessibility, best-practices and SEO scores, Core Web Vitals (LCP, CLS, INP), CrUX field data, opportunities and diagnostics for mobile and desktop.
Pricing
from $1.50 / 1,000 audited pages
Rating
0.0
(0)
Developer
Phuc Tiet
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
Run Google PageSpeed Insights on any list of URLs through the official PSI API. You bring your own free Google API key; we return clean JSON with Lighthouse scores, Core Web Vitals lab metrics, Chrome UX Report (CrUX) field data, opportunities and diagnostics — for mobile and/or desktop.
Why this Actor
- 💸 $1.50 per 1,000 successful audits ($0.0015 each). Dedicated PSI Actors often charge $10–$80 per 1,000.
- 🔑 Bring your own Google API key. Google's free PSI quota is yours; we never store the key outside your run and we never call PSI with our own key.
- ✅ Charge only on success. Missing key, invalid URLs, HTTP 400/403/429 from Google and timeouts are free.
- 📊 Structured output. Scores (0–100), LCP/CLS/INP/TBT/FCP, CrUX categories, top opportunities and diagnostics — ready for Sheets, dashboards, agents (MCP / Make / Zapier / n8n).
- 🤖 Agent-friendly. One Actor call, no browser, no proxies, limited permissions.
How much does it cost?
| Event | Price |
|---|---|
| Successful page audit (one URL × one strategy) | $0.0015 |
| Actor start | $0.00005 / GB (Apify platform) |
Failed audits (bad key, rate limit, timeout, invalid URL) are not charged. Platform compute for a typical 10-URL mobile run is a few tenths of a cent.
Example: 500 URLs × mobile = up to $0.75 in Actor fees (plus your free Google PSI quota).
Input
{"urls": ["https://www.example.com/", "https://www.gov.uk/"],"googleApiKey": "YOUR_GOOGLE_API_KEY","strategies": ["mobile"],"categories": ["performance"]}
| Field | Required | Default | Description |
|---|---|---|---|
urls | yes | – | Pages to audit (max 500). Bare domains get https://. |
googleApiKey | yes | – | Secret. Free key with PageSpeed Insights API enabled. |
strategies | no | ["mobile"] | mobile and/or desktop. Each pair is one audit. |
categories | no | ["performance"] | performance, accessibility, best-practices, seo. |
maxConcurrency | no | 2 | Parallel PSI calls (keep low for free-tier quotas). |
timeoutSecs | no | 120 | Per-audit timeout. |
locale | no | – | Optional Lighthouse locale (en, de, …). |
Get a free Google API key (2 minutes)
- Open https://developers.google.com/speed/docs/insights/v5/get-started
- Create (or pick) a Google Cloud project.
- Enable PageSpeed Insights API.
- Create an API key and paste it into
googleApiKey. - (Recommended) Restrict the key to the PageSpeed Insights API.
We do not need, store or use the Actor owner's Google key. Every customer uses their own.
Output (one row per URL × strategy, shortened)
{"url": "https://www.example.com/","finalUrl": "https://www.example.com/","strategy": "mobile","scores": {"performance": 92,"accessibility": null,"bestPractices": null,"seo": null},"metrics": {"firstContentfulPaintMs": 1200,"largestContentfulPaintMs": 1800,"totalBlockingTimeMs": 50,"cumulativeLayoutShift": 0.01,"speedIndexMs": 1500,"timeToInteractiveMs": 2100},"loadingExperience": {"overallCategory": "FAST","lcp": { "percentile": 1600, "category": "FAST" },"cls": { "percentile": 5, "category": "FAST" },"inp": { "percentile": 80, "category": "FAST" }},"opportunities": [{ "id": "unused-javascript", "title": "Reduce unused JavaScript", "displayValue": "Est savings of 120 KiB", "score": 0.5 }],"diagnostics": [],"status": "ok","checkedAt": "2026-10-15T01:00:00.000Z"}
Error rows use "status": "error" with errorCode such as MISSING_API_KEY, API_KEY_FORBIDDEN, RATE_LIMITED, TIMEOUT, INVALID_URL, BAD_REQUEST.
Related tools
- On-Page SEO Audit – titles, meta, headings, schema (no Google key).
- Broken Link Checker – crawl your site for 404s.
- Sitemap URL Extractor – feed this Actor a full URL list.
FAQ
Do I need a paid Google Cloud account?
No. The PageSpeed Insights API has a free quota suitable for moderate bulk use. Stay within Google's rate limits (maxConcurrency 1–2 helps).
Is this the same as running Lighthouse locally?
Lab metrics come from Google's Lighthouse on their infrastructure (via PSI). Field data (CrUX) is real-user Chrome data when Google has enough samples for that URL/origin.
Why BYOK instead of a shared key?
Google's anonymous/keyless quota is exhausted quickly from shared cloud IPs. Your own key keeps quota predictable and keeps us legally clean (your project, your quota).
Can AI agents call this?
Yes. Public PPE Actors with limited permissions are available via the Apify MCP server and agentic payments where eligible.
Legal / ToS
Uses only the official Google PageSpeed Insights API with your API key. Follow Google's API Terms. Do not use this Actor to probe sites you are not allowed to measure at volume.
Changelog
- 1.0.0 – Initial release: bulk URL×strategy PSI audits, BYOK, scores + CWV + CrUX + opportunities/diagnostics, PPE $0.0015 / success.