johan.im
Data from Aug 21, 2026, 1:20 AM UTC — 17h old.
11ty Emeritus · 1 measurement · since Aug 21, 2026 · last attempt 17h
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.
Scores
Lab metrics Lighthouse, mobile
| Metric | Current | Previous | Change | Best | Worst | Trend |
|---|---|---|---|---|---|---|
| LCP Largest Contentful Paint | 1.56 s | — | — | 1.56 s | 1.56 s | |
| CLS Cumulative Layout Shift | 0.001 | — | — | 0.001 | 0.001 | |
| TBT Total Blocking Time | 0 ms | — | — | 0 ms | 0 ms | |
| FCP First Contentful Paint | 1.25 s | — | — | 1.25 s | 1.25 s | |
| Speed Index | 1.25 s | — | — | 1.25 s | 1.25 s | |
| TTFB Time to First Byte | 477 ms | — | — | 477 ms | 477 ms |
What LCP is made of
A flat LCP number tells you something regressed. The subparts tell you whether it was the server, resource discovery, the download, or rendering.
Page weight
| Metric | Current | Previous | Change | Best | Worst | Trend |
|---|---|---|---|---|---|---|
| Page Weight | 23.4 kB | — | — | 23.4 kB | 23.4 kB | |
| Requests | 11 | — | — | 11 | 11 | |
| Third-party Weight | 4.7 kB | — | — | 4.7 kB | 4.7 kB | |
| Third-party CPU | 2 ms | — | — | 2 ms | 2 ms | |
| Unused JS | 0 B | — | — | 0 B | 0 B | |
| Unused CSS | 0 B | — | — | 0 B | 0 B |
By resource type
Third parties 2 entities
4.7 kB transferred, 2 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 | 139 ms | — | — | 139 ms | 139 ms | |
| Long Tasks | 0 | — | — | 0 | 0 | |
| DOM Elements | 88 | — | — | 88 | 88 | |
| Axe Violations Violating nodes from a full axe run — stricter than Lighthouse's subset | 7 | — | — | 7 | 7 | |
| A11y Failures | 1 | — | — | 1 | 1 | |
| A11y Failing Nodes | 6 | — | — | 6 | 6 |
Main thread work
Axe violations axe-core 4.13.0, full rule set
7 violating nodes across 2 rules, 213 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
link-in-text-block— Links must be distinguishable without relying on color 6 nodes -
moderate
region— All page content should be contained by landmarks 1 node
Accessibility failures 1 of 23 audits
Tracked as a count, not just the score — the weighted score is coarse enough that you can ship a broken component and barely move it.
-
link-in-text-block— Links rely on color to be distinguishable. 6 nodes
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 21, 2026, 1:20 AM UTC | 100 | 1.56 s | 0.001 | 0 ms | 23.4 kB | 3/3 | ±3 | 3,377 | 21.5s |
Embed this score
Live below, then the markup that produces it. Drop that on any page to show
johan.im's scores, updated whenever this instance
re-measures — more about the component. Don’t forget to bundle the speedlify-score.js component code into your site!
<speedlify-score speedlify-url="https://zachleat.github.io/speedlify2/" url="https://johan.im/"></speedlify-score>