Lighthouse & PageSpeed Audit — Lab + Field Core Web Vitals
Pricing
from $3.01 / 1,000 results
Lighthouse & PageSpeed Audit — Lab + Field Core Web Vitals
Run Google's official Lighthouse audit (PageSpeed Insights v5 API) on any URL: performance, accessibility, SEO and best-practices scores, Core Web Vitals from both lab and real-user field data, and ranked improvement opportunities.
Pricing
from $3.01 / 1,000 results
Rating
0.0
(0)
Developer
Axery
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
2 days ago
Last modified
Categories
Share
Lighthouse / PageSpeed Insights Audit
Runs Google's official Lighthouse audit on any URL — the same audit Chrome DevTools runs locally — as a hosted, scriptable Actor. This wraps Google's own public PageSpeed Insights v5 API directly; it is not a scrape.
What you get per URL
- Category scores (0-100): performance, accessibility, best-practices, SEO, PWA.
- Core Web Vitals, lab data: this specific run's LCP, CLS, TBT, FCP, Speed Index and Time to Interactive, under fixed simulated network/CPU throttling — reproducible, synthetic.
- Core Web Vitals, field data: real Chrome User Experience Report percentiles for the exact URL, and a site-wide fallback when Google lacks enough traffic on that specific page. This is what real visitors experienced, not a simulation — kept separate from lab data deliberately, since a page can score badly in the lab while real users had a fine experience, or the reverse.
- Ranked opportunities: failing performance audits, sorted by estimated time savings in milliseconds — the fixes worth doing first, not just a wall of raw audit data.
You need your own Google API key
This API requires a key for any real usage. Confirmed directly against the live endpoint:
| Request | Result |
|---|---|
| No key | HTTP 429 — Google's shared anonymous quota, already exhausted globally |
| Invalid key | HTTP 400 — "API key not valid" |
| Valid key | Full audit |
Getting one is free and takes a minute: in Google Cloud Console, enable the PageSpeed Insights API for a project, then create an API key under Credentials. No billing account is required for this API's free daily quota.
⚠️ Verification status
Every other Actor in this suite was tested against live, real data before shipping. This one could not be — no valid Google API key was available during development, and the invalid-key error path was confirmed live (see the table above) but the success-path response shape was not. The client is built directly against Google's stable, versioned, publicly documented v5 API schema, which has been unchanged for years, so this is lower-risk than reverse-engineering an undocumented site — but it is a documented risk, not a verified one.
Please run it once with your own key and check the output against the schema before relying on it. If anything looks off, the fix is almost certainly in src/scraper.py's field mapping, not the request itself (the request format is confirmed working via the error-path test above).
Input
| Field | Type | Notes |
|---|---|---|
urls | array | URLs to audit. Each takes ~15-40 seconds — this audits pages one at a time, it does not bulk-crawl a site. |
apiKey | string | Your Google PageSpeed Insights API key. Required. |
strategy | enum | mobile or desktop. Google's ranking signals are mobile-first. |
categories | array | Any of performance, accessibility, best-practices, seo, pwa. Fewer categories audit faster. |
locale | string | Language for audit text, e.g. es, de. Defaults to English. |
proxyConfiguration | object | Not needed — Google's own infrastructure fetches the target page, not this Actor. |
Known limits
- Per-URL, not per-thousand. This is priced and used per audited page — a batch of 100 URLs is 100 real Lighthouse runs, each taking real time.
- Field data is often absent.
core_web_vitals_fieldis null for any URL without enough real-world Chrome traffic for Google to report on — common for low-traffic or new pages. Checkcore_web_vitals_field_originfor the site-wide number in that case. - A failed URL is still a row. If an audit fails (bad key, unreachable URL), that URL's row carries an
errorfield instead of scores, rather than vanishing from the dataset silently.
Local development
pip install -r requirements.txtpython test_local.py https://example.com --api-key YOUR_REAL_KEY --out sample_output.json
There is no sample_output.json committed in this folder, unlike every other Actor in this suite — see the verification status note above for why.