96Overall
Lugh Frontend Health
Category scores
Performance99
ReliabilityN/A
Contract100
Efficiency100
Security90
SEO96
Accessibility89
Run overview
7 pages audited.
16 recommendations generated.
Pages
| Page | p50 | p95 | p99 | Size | Score |
|---|---|---|---|---|---|
| GET / | 32 ms | 37 ms | 37 ms | 1.6 KB | 97 |
| GET /en/ | 28 ms | 31 ms | 31 ms | 2.3 KB | 97 |
| GET /es/ | 27 ms | 30 ms | 31 ms | 2.3 KB | 97 |
| GET /en/call/ | 29 ms | 34 ms | 36 ms | 2.3 KB | 98 |
| GET /es/call/ | 29 ms | 49 ms | 78 ms | 2.3 KB | 98 |
| GET /en/results/audit-probe | 33 ms | 39 ms | 40 ms | 1.6 KB | 93 |
| GET /__spa-fallback-probe | 34 ms | 45 ms | 46 ms | 1.6 KB | 98 |
Assets
| Largest assets | Kind | Enc | Blocking | Status | Size |
|---|---|---|---|---|---|
| /assets/index-w1Ztt0G9.js | script | br | No | 200 | 349.3 KB |
| /fonts/playfair-display.woff2 | font | — | No | 200 | 37.6 KB |
| https://static.cloudflareinsights.com/beacon.min.js | script | gzip | No | 200 | 29.6 KB |
| /assets/index-HryJ-STP.css | style | br | Yes | 200 | 24.9 KB |
| /fonts/crimson-400.woff2 | font | — | No | 200 | 16.3 KB |
Markup
| Page | Lang | Title | Desc | Canonical | OG | hreflang | Headings |
|---|---|---|---|---|---|---|---|
| GET / | en | Yes | No | No | 0 | 0 | — |
| GET /en/ | en | Yes | Yes | Yes | 7 | 3 | — |
| GET /es/ | es | Yes | Yes | Yes | 7 | 3 | — |
| GET /en/call/ | en | Yes | Yes | Yes | 7 | 3 | — |
| GET /es/call/ | es | Yes | Yes | Yes | 7 | 3 | — |
| GET /en/results/audit-probe | en | Yes | No | No | 0 | 0 | — |
| GET /__spa-fallback-probe | en | Yes | No | No | 0 | 0 | — |
Browser metrics
| Page | LCP | CLS | TBT | Transfer | Completed |
|---|---|---|---|---|---|
| GET / | 234 ms | 0.000 | 0 ms | 801.1 KB | 3 |
| GET /en/ | 192 ms | 0.000 | 0 ms | 798.8 KB | 3 |
| GET /es/ | 194 ms | 0.000 | 0 ms | 795.3 KB | 3 |
| GET /en/call/ | 200 ms | 0.000 | 0 ms | 215.2 KB | 3 |
| GET /es/call/ | 190 ms | 0.000 | 0 ms | 215.3 KB | 3 |
| GET /en/results/audit-probe | 334 ms | 0.183 | 0 ms | 216.9 KB | 3 |
| GET /__spa-fallback-probe | 126 ms | 0.000 | 0 ms | 209.7 KB | 3 |
Advice
Performance
- GET /en/results/audit-probe: Cumulative Layout Shift is 0.183 — reduce unstable layout toward 0.1.
Security
- GET /: Content-Security-Policy is report-only — promote it to enforcing once the reports are clean.
- GET /en/: Content-Security-Policy is report-only — promote it to enforcing once the reports are clean.
- GET /es/: Content-Security-Policy is report-only — promote it to enforcing once the reports are clean.
- GET /en/call/: Content-Security-Policy is report-only — promote it to enforcing once the reports are clean.
- GET /es/call/: Content-Security-Policy is report-only — promote it to enforcing once the reports are clean.
- GET /en/results/audit-probe: Content-Security-Policy is report-only — promote it to enforcing once the reports are clean.
- GET /__spa-fallback-probe: Content-Security-Policy is report-only — promote it to enforcing once the reports are clean.
SEO
- GET /en/: 3 of 4 title/description/h1/canonical signals are present in both the served shell and rendered DOM (missing from the served shell: h1).
- GET /es/: 3 of 4 title/description/h1/canonical signals are present in both the served shell and rendered DOM (missing from the served shell: h1).
- GET /en/call/: 3 of 4 title/description/h1/canonical signals are present in both the served shell and rendered DOM (missing from the served shell: h1).
- GET /es/call/: 3 of 4 title/description/h1/canonical signals are present in both the served shell and rendered DOM (missing from the served shell: h1).
Accessibility
- GET /: 3 of 7 form controls have no <label for>, aria-label or aria-labelledby.
- GET /en/: 3 of 7 form controls have no <label for>, aria-label or aria-labelledby.
- GET /es/: 3 of 7 form controls have no <label for>, aria-label or aria-labelledby.
- GET /en/results/audit-probe: heading outline: 0 <h1> elements (expected exactly 1).