codeberg.page
Ranks Overall #1,686 Developer Tooling #78 Web Hosts #15
Data from Oct 6, 2026, 11:10 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,008, 61% 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 7.49 s. Compare this filmstrip against another site.
-
936 ms
-
1.87 s
-
2.81 s
-
3.74 s
-
4.68 s
-
4.82 s
-
6.55 s
-
7.49 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 | 7.55 s poor | ↑ +69 ms (+0.9%) 7.34 s – 8.23 s | 3.07 s needs work | 65.6% 18.4% 16.1% | |
| INP CWV Interaction to Next Paint — field only, no lab run can measure it | n/a | — | 87 ms good | 94.8% 4% 1.2% | |
| CLS CWV Cumulative Layout Shift | 0.038 good | ↑ +0.038 0 – 0.038 | 0.020 good | 95.7% 3.1% 1.2% | |
| TBT Total Blocking Time | 0 ms good | → no change 0 ms – 0 ms | n/a | — | |
| FCP First Contentful Paint | 6.51 s poor | ↓ -32 ms (-0.5%) 6.34 s – 7.15 s | 3.23 s poor | 49.6% 23.1% 27.3% | |
| Speed Index | 6.51 s poor | ↓ -32 ms (-0.5%) 6.34 s – 7.15 s | n/a | — | |
| TTFB Time to First Byte | 805 ms needs work | ↑ +70 ms (+9.5%) significant 696 ms – 805 ms | 968 ms needs work | 67% 26.5% 6.5% | |
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 2.46× the field p75 — real users likely have above-average hardware or network connectivity.
Page weight
| Metric | Value | Change / range | Trend |
|---|---|---|---|
| Page Weight | 1.07 MB | ↓ -5 B 1.07 MB – 1.18 MB | |
| Requests | 13 | → no change 13 – 14 | |
| Third-party Weight | 1.07 MB | ↓ -5 B 1.07 MB – 1.17 MB | |
| Third-party CPU | 4 ms | ↓ -2 ms (-40%) significant 4 ms – 7 ms | |
| Unused JS | 110 kB | → no change 110 kB – 110 kB | |
| Unused CSS | 393 kB | → no change 393 kB – 393 kB |
By resource type
| Type | Transfer | Share | Size | Requests |
|---|---|---|---|---|
| stylesheet | 47.3% | 505 kB | 3 | |
| font | 36.5% | 390 kB | 4 | |
| script | 15% | 160 kB | 2 | |
| document | 0.6% | 6.6 kB | 1 | |
| image | 0.6% | 6.0 kB | 1 | |
| other | 0.1% | 1.3 kB | 1 | |
| Total | 1.07 MB | 13 |
Third parties 1 entities
| Entity | Transfer | Size | Main thread Simulated |
|---|---|---|---|
| codeberg.org | 1.07 MB | 4 ms | |
| Total | 1.07 MB | 4 ms |
Without JavaScript
The same load, photographed twice at 412×823: once with scripts disabled, once as rendered.
1.3% 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 | 230 ms | ↓ -56 ms (-19.6%) significant 224 ms – 354 ms | |
| Long Tasks | 0 | → no change 0 – 1 | |
| DOM Elements | 230 | → no change 222 – 230 | |
| Axe Violations Violating nodes from a full Axe CLI run (more than Lighthouse reports) | 6 | → no change 6 – 8 | |
| A11y Failures | 3 | → no change 3 – 3 | |
| A11y Failing Nodes | 4 | → no change 4 – 5 |
Main thread work
| Task | Time | Share | Duration Simulated |
|---|---|---|---|
| other | 42% | 96 ms | |
| style layout | 35% | 80 ms | |
| parse HTML | 9% | 22 ms | |
| script evaluation | 6% | 13 ms | |
| paint composite render | 4% | 10 ms | |
| script parse compile | 4% | 9 ms | |
| Total | 230 ms |
Axe violations axe-core 4.13.0, full rule set
6 violating nodes across 4 rules, 268 passing. This is a standalone Axe CLI run and is stricter than the subset Lighthouse already includes.
-
serious
color-contrast— Elements must meet minimum color contrast ratio thresholds 2 nodesOffending elements
-
.content > p:nth-child(2) > a<a href="https://docs.codeberg.org/ci/actions/">Forgejo Actions</a> -
p:nth-child(3) > a<a href="https://docs.codeberg.org/codeberg-pages/forgejo-actions/">our documentation</a>
-
-
moderate
region— All page content should be contained by landmarks 2 nodesOffending elements
-
.codeberg-hero > div > div<div> -
.content<div class="content">
-
-
serious
link-in-text-block— Links must be distinguishable without relying on color 1 nodeOffending element
-
a[href$="codeberg.org"]<a style="color: inherit; opacity: 0.6" href="https://codeberg.org">Codeberg</a>
-
-
moderate
meta-viewport— Zooming and scaling must not be disabled 1 nodeOffending element
-
meta[name="viewport"]:nth-child(2)<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" name="viewport">
-
Accessibility failures 3 of 15 audits
-
color-contrast— Background and foreground colors do not have a sufficient contrast ratio. 2 nodes -
link-in-text-block— Links rely on color to be distinguishable. 1 node -
meta-viewport— `[user-scalable="no"]` is used in the `<meta name="viewport">` element or the `[maximum-scale]` attribute is less than 5. 1 node
SEO failures 1 of 8 audits
-
meta-description— Document does not have a meta description
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-10-03 | 3.15 s | 87 ms | 0.020 | 3.28 s | 972 ms |
| 2026-09-26 | 2.96 s | 77 ms | 0.020 | 3.00 s | 954 ms |
| 2026-09-19 | 2.60 s | 77 ms | 0.020 | 2.74 s | 926 ms |
| 2026-09-12 | 2.50 s | 73 ms | 0.020 | 2.56 s | 910 ms |
| 2026-09-05 | 2.54 s | 71 ms | 0.020 | 2.56 s | 925 ms |
| 2026-08-29 | 2.47 s | 77 ms | 0.020 | 2.47 s | 837 ms |
| 2026-08-22 | 2.77 s | 69 ms | 0.020 | 2.79 s | 878 ms |
| 2026-08-15 | 2.77 s | 70 ms | 0.020 | 2.79 s | 890 ms |
| 2026-08-08 | 2.81 s | 69 ms | 0.020 | 2.84 s | 912 ms |
| 2026-08-01 | 2.84 s | 73 ms | 0.020 | 2.88 s | 899 ms |
| 2026-07-25 | 2.66 s | 74 ms | 0.020 | 2.70 s | 893 ms |
| 2026-07-18 | 2.88 s | 77 ms | 0.020 | 2.94 s | 986 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:10 PM UTC | 60 | 7.55 s | 0.038 | 0 ms | 1.07 MB | 3/3 | ±5 | 4,008 +61% | 51.8s |
|
|
| Oct 3, 2026, 8:58 PM UTC | 60 | 7.49 s | 0 | 0 ms | 1.07 MB | 3/3 | ±12 | 2,407 -3% | 51.5s |
|
|
| Oct 1, 2026, 2:15 PM UTC | CHROME_INTERSTITIAL_ERROR: Chrome prevented page load with an interstitial. Make sure you are testing the correct URL and that the server is properly responding to all requests. |
37.9s | |||||||||
| Sep 29, 2026, 11:12 AM UTC | 60 | 7.40 s | 0 | 0 ms | 1.07 MB | 3/3 | ±8 | 2,491 0% | 50.1s |
|
|
| Sep 25, 2026, 5:52 AM UTC | 60 | 7.45 s | 0 | 0 ms | 1.07 MB | 3/3 | ±7 | 2,501 +1% | 55.7s |
|
|
| Sep 23, 2026, 12:19 AM UTC | 60 | 7.41 s | 0.038 | 0 ms | 1.07 MB | 3/3 | ±10 | 2,973 +20% | 51.6s |
|
|
| Sep 20, 2026, 11:22 PM UTC | 60 | 7.34 s | 0 | 0 ms | 1.07 MB | 3/3 | ±0 | 2,484 0% | 50.8s |
|
|
| Sep 18, 2026, 1:50 PM UTC | 60 | 7.40 s | 0 | 0 ms | 1.07 MB | 3/3 | ±0 | 3,071 +24% | 49.4s |
|
|
| Sep 16, 2026, 9:29 AM UTC | 60 | 7.43 s | 0 | 0 ms | 1.07 MB | 3/3 | ±6 | 3,849 +55% | 49.3s |
|
|
| Sep 14, 2026, 6:15 AM UTC | 60 | 7.34 s | 0 | 0 ms | 1.07 MB | 3/3 | ±0 | 2,705 +9% | 49.1s |
|
|
| Sep 11, 2026, 11:27 PM UTC | 60 | 7.40 s | 0 | 0 ms | 1.07 MB | 3/3 | ±8 | 2,244 -10% | 51s |
|
|
| Sep 9, 2026, 8:54 PM UTC | 60 | 7.36 s | 0 | 0 ms | 1.07 MB | 3/3 | ±12 | 3,298 +33% | 26.5s |
|
|
| Sep 7, 2026, 7:34 PM UTC | 60 | 7.49 s | 0.038 | 0 ms | 1.07 MB | 3/3 | ±6 | 2,474 0% | 29.1s |
|
|
| Sep 5, 2026, 3:35 AM UTC | 60 | 7.35 s | 0 | 0 ms | 1.07 MB | 3/3 | ±0 | 2,644 +6% | 26.6s |
|
|
| Sep 4, 2026, 1:01 AM UTC | 60 | 7.40 s | 0 | 0 ms | 1.07 MB | 3/3 | ±1 | 2,417 -3% | 26.2s |
|
|
| Sep 2, 2026, 11:13 PM UTC | 60 | 7.44 s | 0 | 0 ms | 1.07 MB | 3/3 | ±0 | 2,367 -5% | 26.1s |
|
|
| Sep 1, 2026, 8:57 PM UTC | 60 | 7.49 s | 0.038 | 0 ms | 1.07 MB | 3/3 | ±10 | 2,480 0% | 29.1s |
|
|
| Aug 31, 2026, 6:31 PM UTC | 60 | 7.49 s | 0.038 | 0 ms | 1.07 MB | 3/3 | ±6 | 2,433 -2% | 29.3s |
|
|
| Aug 27, 2026, 4:15 AM UTC | 60 | 7.39 s | 0 | 0 ms | 1.07 MB | 3/3 | ±6 | 3,245 +31% | 32.8s |
|
|
| Aug 25, 2026, 11:24 PM UTC | 60 | 7.43 s | 0 | 0 ms | 1.07 MB | 3/3 | ±1 | 2,400 -3% | 26.8s |
|
|
| Aug 24, 2026, 11:21 PM UTC | 60 | 7.39 s | 0 | 0 ms | 1.07 MB | 3/3 | ±9 | 2,325 -6% | 26.8s |
|
|
| Aug 23, 2026, 11:19 PM UTC | 60 | 7.39 s | 0 | 0 ms | 1.07 MB | 3/3 | ±11 | 2,656 +7% | 30.8s |
|
|
| Aug 22, 2026, 10:20 PM UTC | 59 | 8.23 s | 0 | 0 ms | 1.18 MB | 3/3 | ±12 | 2,348 -6% | 29.8s |
|
|
| Aug 21, 2026, 9:23 PM UTC | 59 | 8.13 s | 0 | 0 ms | 1.18 MB | 3/3 | ±9 | 2,486 0% | 28.6s |
|
|
| Aug 20, 2026, 8:31 PM UTC | 59 | 7.94 s | 0 | 0 ms | 1.18 MB | 3/3 | ±0 | 2,459 -1% | 25.8s |
|
|