gohugo.io
Ranks Overall #1,158 Developer Tooling #36 Site Generators #11
Data from Oct 6, 2026, 11:13 PM UTC old Measured every 2 days · 25 runs since Aug 20, 2026
Elsewhere:
PageSpeed Insights ·
Calibre ·
Treo ·
CrUX Vis ·
Tame the Bots ·
Scoring Calculator ·
Wayback Machine
Lighthouse benchmark index was 4,311, 73% faster than this project's median of 2,486. CPU-bound metrics — TBT, TTI, main thread work — are affected by this and may have moved without the site changing at all.
Lab data is measured using Lighthouse, Mobile mode unless otherwise specified. Field data is reported from Chrome UX Report (using p75 measurements).
Stack
Filmstrip LAB Throttled
How the page drew during the measured load, at 8 points across 3.00 s. Compare this filmstrip against another site.
-
375 ms
-
750 ms
-
1.13 s
-
1.50 s
-
1.88 s
-
2.25 s
-
2.63 s
-
3.00 s
Lighthouse Scores LAB Simulated
Metrics LAB FIELD
Field figures are the p75 across real Chrome users over a 28-day trailing window (2026-09-07 → 2026-10-04), url-level.
| Metric | Lab Simulated | Field | |||
|---|---|---|---|---|---|
| Value | Change / range | Trend | p75 | Distribution | |
| LCP CWV Largest Contentful Paint | 2.08 s good | ↓ -1566 ms (-42.9%) significant 2.08 s – 3.65 s | 1.34 s good | 92.3% 4.4% 3.4% | |
| INP CWV Interaction to Next Paint — field only, no lab run can measure it | n/a | — | 77 ms good | 94.9% 3.7% 1.4% | |
| CLS CWV Cumulative Layout Shift | 0 good | → no change 0 – 0 | 0 good | 97.5% 2.2% 0.3% | |
| TBT Total Blocking Time | 20 ms good | ↓ -118 ms (-85.5%) significant 20 ms – 145 ms | n/a | — | |
| FCP First Contentful Paint | 981 ms good | ↓ -227 ms (-18.8%) 916 ms – 1.30 s | 1.36 s good | 85.6% 9.1% 5.4% | |
| Speed Index | 1.21 s good | ↓ -336 ms (-21.8%) 955 ms – 3.07 s | n/a | — | |
| TTFB Time to First Byte | 632 ms good | ↓ -31 ms (-4.7%) 602 ms – 670 ms | 730 ms good | 78.6% 15.6% 5.8% | |
LCP Subparts LAB Throttled
The subparts attribute LCP to your server, resource discovery, download, or rendering. They come from one throttled load, the same one as the filmstrip, so they add up to that load’s LCP rather than the simulated Lab LCP above.
LCP LAB Simulated vs LCP FIELD
The lab LCP is 1.56× the field p75 — real users likely have above-average hardware or network connectivity.
Page weight
| Metric | Value | Change / range | Trend |
|---|---|---|---|
| Page Weight | 454 kB | ↑ +1.4 kB (+0.3%) 442 kB – 454 kB | |
| Requests | 14 | ↑ +1 (+7.7%) significant 13 – 14 | |
| Third-party Weight | 180 kB | ↑ +1.1 kB (+0.6%) 170 kB – 180 kB | |
| Third-party CPU | 36 ms | ↓ -23 ms (-38.6%) significant 36 ms – 59 ms | |
| Unused JS | 75.9 kB | ↓ -1.5 kB (-2%) 73.3 kB – 77.9 kB | |
| Unused CSS | 0 B | → no change 0 B – 0 B |
By resource type
| Type | Transfer | Share | Size | Requests |
|---|---|---|---|---|
| script | 44.9% | 204 kB | 3 | |
| font | 42.7% | 194 kB | 2 | |
| document | 4.9% | 22.3 kB | 1 | |
| stylesheet | 3.1% | 14.3 kB | 1 | |
| other | 2.3% | 10.6 kB | 4 | |
| image | 2% | 9.1 kB | 3 | |
| Total | 454 kB | 14 |
Third parties 2 entities
| Entity | Transfer | Size | Main thread Simulated |
|---|---|---|---|
| Google Tag Manager | 180 kB | 36 ms | |
| Google Analytics | 543 B | 0 ms | |
| Total | 180 kB | 36 ms |
Without JavaScript
The same load, photographed twice at 412×823: once with scripts disabled, once as rendered.
0.1% of pixels differ — they are nearly identical. A shifted layout counts as difference, so a <noscript> banner alone can account for a large figure.
Page health
| Metric | Value | Change / range | Trend |
|---|---|---|---|
| Main Thread Work | 400 ms | ↓ -250 ms (-38.4%) significant 400 ms – 682 ms | |
| Long Tasks | 2 | ↓ -1 (-33.3%) significant 2 – 3 | |
| DOM Elements | 332 | → no change 332 – 332 | |
| Axe Violations Violating nodes from a full Axe CLI run (more than Lighthouse reports) | 7 | → no change 7 – 7 | |
| A11y Failures | 2 | → no change 2 – 2 | |
| A11y Failing Nodes | 4 | → no change 4 – 4 |
Main thread work
| Task | Time | Share | Duration Simulated |
|---|---|---|---|
| script evaluation | 46% | 185 ms | |
| other | 28% | 113 ms | |
| style layout | 10% | 38 ms | |
| script parse compile | 8% | 31 ms | |
| parse HTML | 4% | 17 ms | |
| paint composite render | 2% | 8 ms | |
| garbage collection | 2% | 7 ms | |
| Total | 400 ms |
Axe violations axe-core 4.13.0, full rule set
7 violating nodes across 2 rules, 358 passing. This is a standalone Axe CLI run and is stricter than the subset Lighthouse already includes.
-
moderate
region— All page content should be contained by landmarks 4 nodesOffending elements
-
.mb-8<img src="/images/hugo-logo-wide.svg" alt="Hugo Logo" class="w-64 aspect-3/1 mx-auto mb-8"> -
h1<h1 class="text-4xl font-bold tracking-tight text-balance text-gray-900 dark:text-gray-300 sm:text-6xl">The world’s fastest framework for building websites</h1> -
.text-lg<div class="mt-8 text-lg font-medium text-pretty text-gray-800 dark:text-gray-400 sm:text-xl/8">Hugo is one of the most popular open-source static site generators. With its amazing speed and flexibil… -
.uppercase<a href="/documentation/" class="rounded-md uppercase tracking-wide bg-blue-600 hover:bg-blue-500 px-3.5 py-2.5 text-sm font-semibold text-white shadow-xs focus-visible:outline-2 focus-visible:outlin…
-
-
serious
color-contrast— Elements must meet minimum color contrast ratio thresholds 3 nodesOffending elements
-
.pl-9.relative:nth-child(1) > .ml-1 > .hover\:text-blue-500.text-blue-500.font-semibold<a class="text-blue-500 hover:text-blue-500 font-semibold" href="https://github.com/gohugoio/hugo">Star button</a> -
a[href$="discourse.gohugo.io"]<a class="text-blue-500 hover:text-blue-500 font-semibold" href="https://discourse.gohugo.io">Hugo forums</a> -
.pl-9.relative:nth-child(3) > .ml-1 > .hover\:text-blue-500.text-blue-500.font-semibold<a class="text-blue-500 hover:text-blue-500 font-semibold" href="https://github.com/gohugoio/hugo/releases">release</a>
-
Accessibility failures 2 of 30 audits
-
color-contrast— Background and foreground colors do not have a sufficient contrast ratio. 3 nodes -
label-content-name-mismatch— Elements with visible text labels do not have matching accessible names. 1 node
Hygiene
Measurement log
Field history 25 weeks
Weekly p75 from the CrUX History API, backfilled in a single request.
| Week ending | LCP | INP | CLS | FCP | TTFB |
|---|---|---|---|---|---|
| 2026-09-26 | 1.29 s | 79 ms | 0 | 1.31 s | 730 ms |
| 2026-09-19 | 1.31 s | 77 ms | 0 | 1.31 s | 711 ms |
| 2026-09-12 | 1.28 s | 80 ms | 0 | 1.29 s | 720 ms |
| 2026-09-05 | 1.24 s | 79 ms | 0 | 1.26 s | 712 ms |
| 2026-08-29 | 1.26 s | 77 ms | 0 | 1.27 s | 700 ms |
| 2026-08-22 | 1.28 s | 78 ms | 0 | 1.30 s | 712 ms |
| 2026-08-15 | 1.26 s | 72 ms | 0 | 1.28 s | 701 ms |
| 2026-08-08 | 1.29 s | 71 ms | 0 | 1.30 s | 717 ms |
| 2026-08-01 | 1.30 s | 71 ms | 0 | 1.31 s | 724 ms |
| 2026-07-25 | 1.25 s | 71 ms | 0 | 1.27 s | 710 ms |
| 2026-07-18 | 1.23 s | 71 ms | 0 | 1.24 s | 704 ms |
| 2026-07-11 | 1.21 s | 72 ms | 0 | 1.21 s | 686 ms |
Runs
Every stored run for this URL, newest first.
| When | Scores | Perf | LCP | CLS | TBT | Weight | Runs | Spread | Bench | Took | Archive |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Oct 6, 2026, 11:13 PM UTC | 99 | 2.08 s | 0 | 20 ms | 454 kB | 3/3 | ±9 | 4,311 +73% | 45.2s |
|
|
| Oct 3, 2026, 9:01 PM UTC | 88 | 3.65 s | 0 | 138 ms | 452 kB | 3/3 | ±8 | 2,497 0% | 50.9s |
|
|
| Oct 1, 2026, 2:19 PM UTC | 98 | 2.16 s | 0 | 108 ms | 452 kB | 3/3 | ±0 | 2,500 +1% | 48.1s |
|
|
| Sep 29, 2026, 11:15 AM UTC | 98 | 2.15 s | 0 | 93 ms | 451 kB | 3/3 | ±4 | 2,491 0% | 48.1s |
|
|
| Sep 25, 2026, 5:55 AM UTC | 89 | 3.60 s | 0 | 130 ms | 450 kB | 3/3 | ±10 | 2,494 0% | 48.4s |
|
|
| Sep 23, 2026, 12:22 AM UTC | 98 | 2.16 s | 0 | 68 ms | 450 kB | 3/3 | ±9 | 2,972 +20% | 46.8s |
|
|
| Sep 20, 2026, 11:25 PM UTC | 98 | 2.17 s | 0 | 108 ms | 449 kB | 3/3 | ±0 | 2,476 0% | 49.7s |
|
|
| Sep 18, 2026, 1:53 PM UTC | 99 | 2.15 s | 0 | 48 ms | 450 kB | 3/3 | ±0 | 2,948 +19% | 46.3s |
|
|
| Sep 16, 2026, 9:32 AM UTC | 99 | 2.19 s | 0 | 56 ms | 448 kB | 3/3 | ±0 | 3,976 +60% | 46.5s |
|
|
| Sep 14, 2026, 6:18 AM UTC | 99 | 2.15 s | 0 | 25 ms | 448 kB | 3/3 | ±1 | 2,976 +20% | 45.6s |
|
|
| Sep 11, 2026, 11:30 PM UTC | 98 | 2.16 s | 0 | 100 ms | 448 kB | 3/3 | ±0 | 2,328 -6% | 48.4s |
|
|
| Sep 9, 2026, 8:55 PM UTC | 90 | 3.52 s | 0 | 92 ms | 448 kB | 3/3 | ±7 | 3,383 +36% | 23.3s |
|
|
| Sep 7, 2026, 7:36 PM UTC | 89 | 3.53 s | 0 | 145 ms | 448 kB | 3/3 | ±9 | 2,489 0% | 25.5s |
|
|
| Sep 5, 2026, 12:30 PM UTC | 98 | 2.16 s | 0 | 68 ms | 447 kB | 3/3 | ±1 | 2,993 +20% | 21.3s |
|
|
| Sep 4, 2026, 1:03 AM UTC | 98 | 2.15 s | 0 | 99 ms | 445 kB | 3/3 | ±2 | 2,341 -6% | 22.1s |
|
|
| Sep 2, 2026, 11:15 PM UTC | 97 | 2.20 s | 0 | 140 ms | 445 kB | 3/3 | ±0 | 2,241 -10% | 22.9s |
|
|
| Sep 1, 2026, 10:45 PM UTC | 98 | 2.17 s | 0 | 131 ms | 445 kB | 3/3 | ±0 | 2,478 0% | 23.4s |
|
|
| Aug 31, 2026, 9:02 PM UTC | 98 | 2.20 s | 0 | 116 ms | 445 kB | 3/3 | ±0 | 2,328 -6% | 22.7s |
|
|
| Aug 27, 2026, 2:29 PM UTC | 90 | 3.49 s | 0 | 124 ms | 443 kB | 3/3 | ±21 | 2,430 -2% | 27.9s |
|
|
| Aug 26, 2026, 4:38 AM UTC | 98 | 2.17 s | 0 | 93 ms | 443 kB | 3/3 | ±29 | 2,577 +4% | 27.6s |
|
|
| Aug 25, 2026, 3:53 AM UTC | 98 | 2.15 s | 0 | 108 ms | 443 kB | 3/3 | ±20 | 2,495 0% | 24.5s |
|
|
| Aug 24, 2026, 3:02 AM UTC | 98 | 2.15 s | 0 | 116 ms | 442 kB | 3/3 | ±31 | 2,478 0% | 27.6s |
|
|
| Aug 23, 2026, 1:15 AM UTC | 98 | 2.15 s | 0 | 92 ms | 443 kB | 3/3 | ±29 | 2,370 -5% | 26.8s |
|
|
| Aug 22, 2026, 1:09 AM UTC | 88 | 3.62 s | 0 | 144 ms | 443 kB | 3/3 | ±3 | 2,492 0% | 28.2s |
|
|
| Aug 20, 2026, 11:34 PM UTC | 98 | 2.15 s | 0 | 95 ms | 443 kB | 3/3 | ±0 | 2,316 -7% | 22.3s |
|