fly.io
Data from Aug 23, 2026, 1:15 AM UTC 21h old
Web Hosts #7 · 3 measurements · since Aug 20, 2026
Stack
Detected on the same page load as the accessibility pass — the generator
from <meta name="generator"> or the shape of the page,
the host from response headers.
Core Web Vitals field data, url-level
Real Chrome users, 28-day window (2026-07-25 → 2026-08-21). This is what Google measures you on.
Scores
Filmstrip Lighthouse, mobile
How the page drew during the measured load, at 8 points across 3.00 s.
-
375 ms
-
750 ms
-
1.13 s
-
1.50 s
-
1.88 s
-
2.25 s
-
2.63 s
-
3.00 s
Lab metrics Lighthouse, mobile
| Metric | Current | Previous | Change | Best | Worst | Trend |
|---|---|---|---|---|---|---|
| LCP Largest Contentful Paint | 9.29 s | 9.42 s | ↓ -130 ms (-1.4%) | 9.27 s | 9.42 s | |
| CLS Cumulative Layout Shift | 0 | 0 | → no change | 0 | 0 | |
| TBT Total Blocking Time | 851 ms | 824 ms | ↑ +27 ms (+3.3%) | 667 ms | 851 ms | |
| FCP First Contentful Paint | 1.51 s | 1.51 s | ↑ +6 ms (+0.4%) | 1.51 s | 1.52 s | |
| Speed Index | 3.42 s | 1.51 s | ↑ +1916 ms (+127%) significant | 1.51 s | 3.42 s | |
| TTFB Time to First Byte | 607 ms | 604 ms | ↑ +3 ms (+0.5%) | 604 ms | 612 ms |
What LCP is made of observed, unthrottled
A flat LCP number tells you something regressed. The subparts tell you whether it was the server, resource discovery, the download, or rendering.
Measured on the trace before throttling is modelled, so these are real durations that will not sum to the 9.29 s above — that figure is a simulation of the same load on a slow phone and connection. Read these for the proportions: which phase dominates.
Field data Chrome UX Report, url-level
Real Chrome users, 28-day trailing window (2026-07-25 → 2026-08-21). This is what Google measures you on.
| Metric | p75 | Rating | Distribution (good / needs work / poor) |
|---|---|---|---|
| LCP CWV | 2.54 s | needs-improvement | 74.3% good |
| INP CWV Interaction to Next Paint — field only, Lighthouse cannot measure this in a lab run | 136 ms | good | 85.6% good |
| CLS CWV | 0 | good | 99.6% good |
| FCP | 2.10 s | needs-improvement | 66.9% good |
| TTFB | 830 ms | needs-improvement | 73.5% good |
Lab vs field
Lab LCP 9.29 s · field p75 2.54 s · real users are 0.27× faster than the lab.
Field history 25 weeks
Weekly p75 from the CrUX History API, backfilled in a single request.
| Week ending | LCP | INP | CLS | FCP | TTFB |
|---|---|---|---|---|---|
| 2026-08-15 | 2.59 s | 139 ms | 0 | 2.14 s | 853 ms |
| 2026-08-08 | 2.69 s | 149 ms | 0 | 2.19 s | 871 ms |
| 2026-08-01 | 2.81 s | 161 ms | 0 | 2.25 s | 890 ms |
| 2026-07-25 | 2.90 s | 162 ms | 0 | 2.25 s | 879 ms |
| 2026-07-18 | 2.92 s | 165 ms | 0 | 2.23 s | 832 ms |
| 2026-07-11 | 2.88 s | 161 ms | 0 | 2.19 s | 801 ms |
| 2026-07-04 | 2.81 s | 154 ms | 0 | 2.13 s | 750 ms |
| 2026-06-27 | 2.76 s | 152 ms | 0 | 2.11 s | 727 ms |
| 2026-06-20 | 2.75 s | 147 ms | 0 | 2.09 s | 703 ms |
| 2026-06-13 | 2.71 s | 141 ms | 0 | 2.04 s | 675 ms |
| 2026-06-06 | 2.72 s | 141 ms | 0 | 2.02 s | 659 ms |
| 2026-05-30 | 2.66 s | 140 ms | 0 | 1.98 s | 639 ms |
Page weight
| Metric | Current | Previous | Change | Best | Worst | Trend |
|---|---|---|---|---|---|---|
| Page Weight | 2.28 MB | 2.45 MB | ↓ -171.6 kB (-7.2%) significant | 2.28 MB | 2.49 MB | |
| Requests | 42 | 44 | ↓ -2 (-4.5%) | 42 | 44 | |
| Third-party Weight | 255 kB | 245 kB | ↑ +10.3 kB (+4.3%) | 245 kB | 287 kB | |
| Third-party CPU | 68 ms | 63 ms | ↑ +6 ms (+9.1%) | 58 ms | 68 ms | |
| Unused JS | 615 kB | 731 kB | ↓ -112.8 kB (-15.8%) significant | 615 kB | 763 kB | |
| Unused CSS | 98.9 kB | 98.9 kB | → no change | 98.9 kB | 98.9 kB |
By resource type
Third parties 1 entities
255 kB transferred, 68 ms of main thread time. This is the number most likely to regress without anyone on your team shipping anything.
Page health
| Metric | Current | Previous | Change | Best | Worst | Trend |
|---|---|---|---|---|---|---|
| Main Thread Work | 2.85 s | 2.66 s | ↑ +197 ms (+7.4%) | 2.08 s | 2.85 s | |
| Long Tasks | 9 | 14 | ↓ -5 (-35.7%) | 9 | 14 | |
| DOM Elements | 438 | 438 | → no change | 438 | 438 | |
| Axe Violations Violating nodes from a full axe run — stricter than Lighthouse's subset | 1 | 1 | → no change | 1 | 1 | |
| A11y Failures | 0 | 0 | → no change | 0 | 0 | |
| A11y Failing Nodes | 0 | 0 | → no change | 0 | 0 |
Main thread work
Axe violations axe-core 4.13.0, full rule set
1 violating node across 1 rule, 666 passing. This is a standalone axe run, stricter than the subset Lighthouse folds into its score above — and it is the second tiebreaker in the ranking.
-
serious
scrollable-region-focusable— Scrollable region must have keyboard access 1 node
Hygiene
Changes rarely — which is exactly why a change is worth noticing.
Measurement log
Every stored run for this URL, newest first. Failures are kept as records — "this site was down on Tuesday" is data too.
| When | Perf | LCP | CLS | TBT | Weight | Runs | Spread | Bench | Took |
|---|---|---|---|---|---|---|---|---|---|
| Aug 23, 2026, 1:15 AM UTC | 54 | 9.29 s | 0 | 851 ms | 2.28 MB | 3/3 | ±10 | 2,506 | 43.7s |
| Aug 21, 2026, 11:22 PM UTC | 55 | 9.42 s | 0 | 824 ms | 2.45 MB | 3/3 | ±1 | 2,377 | 35.5s |
| Aug 20, 2026, 10:36 PM UTC | 58 | 9.27 s | 0 | 667 ms | 2.49 MB | 3/3 | ±2 | 2,698 | 38.9s |
Embed this score
Live below, then the markup that produces it. Drop that on any page to show
fly.io's scores, updated whenever this instance
re-measures — more about the component. Don’t forget to bundle the speedlify2-score.js component code into your site!
<speedlify2-score speedlify-url="https://www.speedlify.dev/" url="https://fly.io/"></speedlify2-score>