Enter any URL and get a full GTmetrix-style report — Core Web Vitals, waterfall, CrUX field data, opportunities, diagnostics, and history. Free forever.
7 report tabs, 17+ metrics, CrUX field data, waterfall, structure audits. No paywall, ever.
Lighthouse-powered 0–100 score with A–F letter grade. Weighted across 6 Core Web Vitals metrics.
Field data from real Chrome users visiting your site — LCP, CLS, FCP, INP distribution with pass/fail status.
Every request in chronological order with type-colored bars, timing, and transfer size.
Prioritized punch list of structural issues — caching, images, render-blocking, DOM size, and more.
Timeline ruler showing when FCP, LCP, TTI, and Fully Loaded fire during the page load sequence.
Every audit saved locally. Track performance over time, see grade changes, and spot regressions.
Throttled Moto G4 mobile or fast desktop. Different scores, different bottlenecks.
TTFB, FCP, LCP, SI, TBT, TTI, CLS, Fully Loaded Time, page size, request count, and more.
Breakdown of total page weight by resource type — HTML, CSS, JS, images, fonts — with percentage bars.
Velox uses the Google PageSpeed Insights API v5, which runs Google Lighthouse in a controlled datacenter environment. Results are lab data — consistent and reproducible, but not identical to real user experience. The CrUX tab shows real user data separately.
💡 Run tests 2–3 times and average the scores. Server load and CDN caching state can cause variance of ±5–10 points between runs.
High-level overview: speed visualization timeline, top issues ranked by impact, page size breakdown by resource type, and request count summary. Start here to get oriented.
All 17+ performance metrics in full detail — from TTFB to Fully Loaded Time, with thresholds and bar charts. This is your stopwatch.
Prioritized audit list of structural issues — the "instruction manual" for improving performance. Each audit shows impact (High/Medium/Low/Pass) and a description of what to fix.
Chrome User Experience Report data — anonymized measurements from real Chrome users visiting your site. Shows distribution of Good / Needs Improvement / Poor for LCP, CLS, FCP, and INP. Only available for URLs with enough traffic in Google's dataset.
Every network request in chronological order with type-colored bars. Bar position = when the request started. Bar width = how long it took. Use this to spot render-blocking resources, slow third parties, and sequential request chains.
All network requests grouped with transfer size, resource type, and proportional size bars. Identify which resources contribute most to page weight.
Every audit you run is saved in your browser (localStorage). Track performance over time, see when grades change, and spot regressions after deploys.
Weighted aggregate of 6 Lighthouse metrics:
Average of all structural audit scores. Measures how well the page is built, independent of network conditions. Improving structure generally improves performance too.
A = 90–100, B = 75–89, C = 60–74, D = 45–59, E = 30–44, F = 0–29.
| Metric | Good | Needs Improvement | Poor |
|---|---|---|---|
| LCP | ≤ 2.5s | 2.5–4s | > 4s |
| CLS | ≤ 0.1 | 0.1–0.25 | > 0.25 |
| FCP | ≤ 1.8s | 1.8–3s | > 3s |
| TBT | ≤ 200ms | 200–600ms | > 600ms |
| TTI | ≤ 3.8s | 3.8–7.3s | > 7.3s |
| SI | ≤ 3.4s | 3.4–5.8s | > 5.8s |
Mobile: Simulates a Moto G4 with 4x CPU throttling and Slow 4G network (150ms RTT, 1.6 Mbps down). Scores will be significantly lower than desktop. This is what most of your real users experience.
Desktop: No CPU throttling, fast cable connection. Use to diagnose JS execution and rendering issues without network noise.
GET https://www.googleapis.com/pagespeedonline/v5/runPagespeed
| Parameter | Required | Values |
|---|---|---|
url | Yes | Full URL including https:// |
strategy | No | mobile (default) · desktop |
category | No | performance · accessibility · seo · best-practices |
key | Recommended | Your Google API key |
const url = 'https://example.com';
const key = 'YOUR_API_KEY';
const strategy = 'mobile'; // or 'desktop'
const res = await fetch(
`https://www.googleapis.com/pagespeedonline/v5/runPagespeed` +
`?url=${encodeURIComponent(url)}&strategy=${strategy}` +
`&category=performance&key=${key}`
);
const data = await res.json();
const lhr = data.lighthouseResult;
const score = Math.round(lhr.categories.performance.score * 100);
const lcp = lhr.audits['largest-contentful-paint'].numericValue;
const cls = lhr.audits['cumulative-layout-shift'].numericValue;
const tbt = lhr.audits['total-blocking-time'].numericValue;
console.log(`Score: ${score}/100`);
console.log(`LCP: ${(lcp/1000).toFixed(2)}s`);
console.log(`CLS: ${cls.toFixed(3)}`);
console.log(`TBT: ${Math.round(tbt)}ms`);
#!/bin/bash
# velox-check.sh — add to your GitHub Actions or deploy hook
SCORE=$(curl -s \
"https://www.googleapis.com/pagespeedonline/v5/runPagespeed\
?url=https://yoursite.com&strategy=mobile\
&category=performance&key=$PSI_KEY" \
| python3 -c "
import sys, json
d = json.load(sys.stdin)
print(int(d['lighthouseResult']['categories']['performance']['score']*100))
")
echo "Performance score: $SCORE"
[ "$SCORE" -lt 75 ] && echo "❌ Score below 75. Blocking." && exit 1
echo "✅ Score OK."
💡 Free tier: 25,000 requests/day on your own quota. No billing needed at that limit.
⚠️ Never commit API keys to public repos. Use environment variables in CI/CD.
Velox does not create accounts, store passwords, or track individuals. The only data involved:
localStorage. Never sent to any server. You can clear it anytime.Audit requests are processed by Google. Google's Privacy Policy applies to those requests. We receive the API response in your browser only — it's never forwarded to our servers.
No tracking cookies. No advertising cookies. No analytics. The only browser storage is localStorage for your audit history — client-side only, never transmitted.
Google Fonts (fonts.googleapis.com) for typography. No ad networks, no tracking pixels, no social widgets.
Questions: privacy@velox.dev
Velox is a free web performance analysis tool. It sends URLs you provide to Google's PageSpeed Insights API and presents results. Provided "as is" with no warranty of uptime or accuracy.
You may analyze URLs you own or have permission to test. You may not use Velox to:
If you supply a Google API key, you are responsible for its security and any usage costs beyond Google's free tier.
Velox is not liable for decisions made based on its reports. Scores are lab-based and may differ from real user experience. Always validate with real user monitoring before major infrastructure decisions.
We may update these terms. Continued use constitutes acceptance. Contact: legal@velox.dev
✓ No incidents in the last 30 days.