Performance
· 27 checks — Lighthouse + waterfall + sustainability rolled into one auditable list.Performance-focused optimization plan with CWV assessment, top offenders, and time estimates
First Contentful Paint First Contentful Paint — how long until the browser renders the first piece of content. Under 1.8s is good.
931 ms
Largest Contentful Paint Largest Contentful Paint — how long until the largest visible element loads. Under 2.5s is good.
3.12 s
Total Blocking Time Total Blocking Time — total time the main thread was blocked, preventing user input. Under 200ms is good.
15.64 s
Cumulative Layout Shift Cumulative Layout Shift — measures visual stability. How much the page layout shifts during loading. Under 0.1 is good.
0.003
Speed Index Speed Index — how quickly content is visually displayed during load. Under 3.4s is good.
1.27 s
Time to Interactive Time to Interactive — how long until the page is fully interactive and responds to user input. Under 3.8s is good.
21.42 s
Page Load Progression
DThird-Party ImpactAction81% third-party, 0 ms blockingFIX
FJS Execution CostAction21090ms total JS executionFIX
Main Thread Breakdown
| Script | Total | Scripting | Parse/Compile | Party |
|---|---|---|---|---|
| https://fanlore.org/cdn-cgi/challenge-platform/h/b/orchestrate/chl_page/v1?ray=a2013c42dc0f0f85 | 19673ms | 19346ms | 37ms | 1st |
| Unattributable | 982ms | 240ms | 0ms | 1st |
| https://challenges.cloudflare.com/turnstile/v0/b/3104729c556c/api.js?onload=WBul8&render=explicit | 255ms | 205ms | 13ms | 3rd |
| https://fanlore.org/ | 179ms | 19ms | 3ms | 1st |
BHTTP/3 (QUIC)HTTP/3 not advertisedREVIEW
CCompression AlgorithmActionMain response served uncompressedREVIEW
BServer-Timing ObservabilityNo Server-Timing header foundREVIEW
BJavaScript Blocking2 JS blocking issue(s) detectedREVIEW
BHTTP Cachings-maxage=1200, must-revalidate, max-age=0REVIEW
s-maxage=1200, must-revalidate, max-age=0
| Directive | Value | Meaning |
|---|---|---|
| s-maxage | 1200 | CDN caches for 20 minutes |
| must-revalidate | — | Must recheck with server after expiry |
| max-age | 0 | Cache for 0 seconds |
A+Page Weight Budget609 KB transferred, 20 requestsPASS
A+Text CompressionAll text resources are compressedPASS
AImage Optimization2 images, 0 KB saveablePASS
A+Font LoadingNo web fonts (system fonts)PASS
A+JS Bundles9 scripts, 0 KB unusedPASS
Downloaded but never executed on this page.
| Script | Size | Unused | Minified | Party |
|---|---|---|---|---|
| https://fanlore.org/cdn-cgi/challenge-platform/h/b/orchestrate/chl_page/v1?ray=a2013c42dc0f0f85 | 75 KB | — | ✓ | 1st |
| blob:https://fanlore.org/ee0c78a3-4b1f-42c5-8e7b-a32ce22a351f | 0 KB | — | ✓ | 3rd |
| https://challenges.cloudflare.com/turnstile/v0/b/3104729c556c/api.js?onload=WBul8&render=explicit | 24 KB | — | ✓ | 3rd |
| blob:https://fanlore.org/092b9a99-b353-476c-93f8-2a255067b69e | -0 KB | — | ✓ | 3rd |
| blob:https://challenges.cloudflare.com/ad077931-9811-47ee-a735-a1368442ce26 | 0 KB | — | ✓ | 3rd |
| blob:https://challenges.cloudflare.com/b78528c8-a7ea-49e2-a72f-68247f99962b | -0 KB | — | ✓ | 3rd |
| blob:https://challenges.cloudflare.com/b78528c8-a7ea-49e2-a72f-68247f99962b | -0 KB | — | ✓ | 3rd |
| blob:https://challenges.cloudflare.com/b78528c8-a7ea-49e2-a72f-68247f99962b | -0 KB | — | ✓ | 3rd |
| blob:https://challenges.cloudflare.com/d38fa9e2-1e89-4b64-ab56-4037708fac47 | -0 KB | — | ✓ | 3rd |
A+Resource CachingAll resources properly cachedPASS
A+Critical Rendering PathNo render-blocking resourcesPASS
A+Resource HintsNo optimization neededPASS
A+LCP Image PreloadLCP preload audit not availablePASS
A+Main HTML Cache-ControlMain HTML max-age=0 (≤ 5min) is appropriatePASS
A+Server Response Intelligence1 server-response signal(s) detectedPASS
APage Weight Inventory20 resources · 609 KB · 0 KB savings availablePASS
| # | Resource | Type | Size | Cache | Unused | 3rd party | Issues |
|---|---|---|---|---|---|---|---|
| — | — | ||||||
| 20 resources | 608.7 KiB | ||||||
A+Render-Blocking ResourcesNo render-blocking resources detectedPASS
A+Third-Party ResourcesNo third-party resources detectedPASS
A+CSS Performance DepthNo CSS performance depth issues detectedPASS
A+Green HostingWhether the site is served from green-energy infrastructurePASS
Green Hosting
This site is hosted on green energy infrastructure
Provider: Cloudflare
Network Waterfall20 requests over 3437msINFO
Third-Party Script CostPer-script blocking time, transfer cost, and cache headersINFO
| Script | Category | Execution | Transfer | Unused | Monthly Cost | Verdict |
|---|---|---|---|---|---|---|
challenges.cloudflare.com challenges.cloudflare.com | Other | 255ms | 24 KB | — | $3/mo | Costly |
These scripts may cost more than they're worth
- challenges.cloudflare.com adds 255ms and costs ~$3/month
challenges.cloudflare.com takes 255ms of CPU time. Consider loading it asynchronously or replacing it with a lighter alternative.
This script has high main-thread execution time — optimize hot paths or defer.
Source: web.dev
Real-User Performance (CrUX)Field metrics from the Chrome User Experience ReportINFO
Chrome User Experience (CrUX)
Real-user metrics from the Chrome UX Report (2026-06-25 — 2026-07-22)
LCP (p75)
1310 ms
95% good
INP (p75)
262 ms
59% good
CLS (p75)
0.040
94% good
FCP (p75)
1235 ms
TTFB (p75)
833 ms
Image Optimization1 images, 6 KB total, 0 KB wastedINFO
Image Optimization Audit
Total Images
1
Total Size
6 KB