Performance Dashboard

Lighthouse lab scores over time. Target: 100 Performance score with Speed Index under 3.4s.

Last updated: 4/24/2026, 3:49:51 PM

Latest Audit

61.5
Score
5.68s
Speed Index
5.68s
FCP
8.12s
LCP
19ms
TBT
0
CLS
5ms
TTFB
Label: end-to-end-test Throttle: Default Runs: 2

Audit History

Date Label Score SI FCP LCP TBT CLS Throttle
4/24/2026 03:49 PM end-to-end-test 61.5 5.68s 5.68s 8.12s 19ms 0 Default
4/24/2026 03:46 PM final-verification 100 771ms 771ms 1.58s 0ms 0 Default
4/24/2026 03:43 PM slow-4g-baseline 100 765ms 765ms 1.58s 0ms 0 Slow 4G
4/24/2026 03:42 PM after-font-preload 100 784ms 784ms 1.58s 0ms 0 Default
4/24/2026 03:39 PM production 100 2.27s 1.21s 1.51s 0ms 0 Default
4/24/2026 03:38 PM baseline 100 1.06s 1.06s 1.67s 0ms 0 Default

Latest Trace Analysis

Main Thread Work

Other 165ms
Script Evaluation 78ms
Style & Layout 41ms
Parse HTML & CSS 15ms
Rendering 10ms
Script Parsing & Compilation 4ms

Critical Requests

http://localhost:4321/ 129KB @ 4ms
inter-400.woff2 47KB @ 13ms
cormorant-400.woff2 35KB @ 13ms
client 291KB @ 14ms
entrypoint.js?v=b2e62597 52KB @ 14ms
global.css 69KB @ 17ms

Opportunities

  • Reduce unused JavaScript: 150ms
  • Reduce unused CSS: 50KB

How to Run Audits

Local preview (default throttling)

npm run build && npm run perf:audit

Production URL

npm run perf:audit:prod

Slow 4G simulation

npm run perf:audit -- --4g --label=slow-4g-test

Custom runs and label

node scripts/lighthouse-audit.mjs http://localhost:4321 5 --label=after-font-fix

Performance Findings

Critical Path Analysis

  • HTML (gzipped): ~17KB
  • Inter font: 47KB (preloaded)
  • Cormorant font: 35KB (preloaded)
  • Total critical: ~100KB

Optimizations Applied

  • CSS inlined (no render-blocking)
  • Both fonts preloaded
  • font-display: optional
  • Images: WebP + fetchpriority
  • No client-side JS on home page

Target achieved: Median score 100, SI under 1s locally, under 2.5s on production. All Lighthouse optimization audits passing.