Performance
· 14 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.
302 ms
Largest Contentful Paint Largest Contentful Paint — how long until the largest visible element loads. Under 2.5s is good.
1.09 s
Total Blocking Time Total Blocking Time — total time the main thread was blocked, preventing user input. Under 200ms is good.
179 ms
Cumulative Layout Shift Cumulative Layout Shift — measures visual stability. How much the page layout shifts during loading. Under 0.1 is good.
0.209
Speed Index Speed Index — how quickly content is visually displayed during load. Under 3.4s is good.
2.00 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.
3.75 s
Page Load Progression
FPage Weight BudgetAction5.1 MB transferred, 343 requestsFIX
Convert images to WebP/AVIF and resize to display dimensions to reduce transfer size.
Image bandwidth is high — modern formats (WebP/AVIF) and resizing typically cut it 50%+.
Source: web.dev
Large JavaScript bundles delay interactivity. Split code by route or defer non-critical scripts.
JavaScript bundle is large — code-split routes and lazy-load off-screen components to defer.
Source: web.dev
Each request adds latency. Bundle small files, use sprites, or eliminate unnecessary requests.
High HTTP request count — bundling, sprite-ing, and HTTP/2 server push can reduce per-request overhead.
Source: web.dev
DThird-Party ImpactAction67% third-party, 0 ms blockingFIX
DJS Execution CostAction2288ms total JS executionFIX
Main Thread Breakdown
| Script | Total | Scripting | Parse/Compile | Party |
|---|---|---|---|---|
| https://assets.msn.com/bundles/v1/bingHomepage/latest/microsoft.edd09c236eeae714cc11.js | 650ms | 482ms | 16ms | 3rd |
| https://assets.msn.com/bundles/v1/bingHomepage/latest/common.d1757842ccb93b150d1c.js | 359ms | 260ms | 48ms | 3rd |
| Unattributable | 347ms | 34ms | 0ms | 3rd |
| https://www.bing.com/ | 325ms | 23ms | 4ms | 1st |
| https://r.bing.com/rp/w19dDk2py2mlGW2GYbXdcuuQfy0.br.js | 240ms | 225ms | 9ms | 3rd |
| https://assets.msn.com/bundles/v1/bingHomepage/latest/social-bar-wc.60425ab86bbdc0589e07.js | 90ms | 65ms | 2ms | 3rd |
| https://www.bing.com/rp/U_ijXIZu_xhBRxPs1aGV2bq3vBo.br.js | 84ms | 53ms | 3ms | 1st |
| https://assets.msn.com/bundles/v1/bingHomepage/latest/experience.5ce3ca36e15fe40a5eb1.js | 72ms | 5ms | 22ms | 3rd |
| https://r.bing.com/rp/_IMVmfvcwkyuJTy52eloBVYz2W4.br.js | 67ms | 53ms | 2ms | 3rd |
| https://r.bing.com/rp/n23ANye7L3wtUcgKxoGHb7_ezc4.br.js | 55ms | 36ms | 0ms | 3rd |
FJS BundlesAction114 scripts, 829 KB unusedFIX
Downloaded but never executed on this page.
| Script | Size | Unused | Minified | Party |
|---|---|---|---|---|
| https://assets.msn.com/bundles/v1/bingHomepage/latest/common.d1757842ccb93b150d1c.js | 514 KB | 233 KB (45%) | ✓ | 3rd |
| https://r.bing.com/rp/w19dDk2py2mlGW2GYbXdcuuQfy0.br.js | 0 KB | 81 KB (61%) | ✓ | 3rd |
| https://r.bing.com/rp/w19dDk2py2mlGW2GYbXdcuuQfy0.br.js | 133 KB | 81 KB (61%) | ✓ | 3rd |
| https://assets.msn.com/bundles/v1/bingHomepage/latest/experience.5ce3ca36e15fe40a5eb1.js | 191 KB | 73 KB (38%) | ✓ | 3rd |
| https://r.bing.com/rp/5RUBu5dEYIDzWQtuZRVAHjBjuyc.br.js | 90 KB | 62 KB (70%) | ✓ | 3rd |
| https://r.bing.com/rp/5RUBu5dEYIDzWQtuZRVAHjBjuyc.br.js | 0 KB | 62 KB (70%) | ✓ | 3rd |
| https://r.bing.com/rp/9uYIRoQB-ThMq970XKGeKvrMhL0.br.js | 64 KB | 46 KB (72%) | ✓ | 3rd |
| https://r.bing.com/rp/9uYIRoQB-ThMq970XKGeKvrMhL0.br.js | 0 KB | 46 KB (72%) | ✓ | 3rd |
| https://assets.msn.com/bundles/v1/bingHomepage/latest/experiences_bing-homepage-feed_dist_lazy-loadings_feedManager_js.5ccc66a960d3c893ce72.js | 62 KB | 34 KB (56%) | ✓ | 3rd |
| https://assets.msn.com/bundles/v1/bingHomepage/latest/card-actions-wc.0f07467d206e8fb510d9.js | 45 KB | 31 KB (69%) | ✓ | 3rd |
Consider code splitting or tree shaking to reduce unused code.
This bundle has high unused code — code-split or tree-shake to ship only what executes.
Source: web.dev / Lighthouse coverage
Consider code splitting or tree shaking to reduce unused code.
This bundle has high unused code — code-split or tree-shake to ship only what executes.
Source: web.dev / Lighthouse coverage
Consider code splitting or tree shaking to reduce unused code.
This bundle has high unused code — code-split or tree-shake to ship only what executes.
Source: web.dev / Lighthouse coverage
Consider code splitting or tree shaking to reduce unused code.
This bundle has high unused code — code-split or tree-shake to ship only what executes.
Source: web.dev / Lighthouse coverage
Consider code splitting or tree shaking to reduce unused code.
This bundle has high unused code — code-split or tree-shake to ship only what executes.
Source: web.dev / Lighthouse coverage
BImage Optimization179 images, 0 KB saveableREVIEW
CGreen HostingActionWhether the site is served from green-energy infrastructureREVIEW
Green Hosting
No green hosting detected
BHTTP CachingprivateREVIEW
private
| Directive | Value | Meaning |
|---|---|---|
| private | — | Only browser cache, not CDN/proxy |
A+Text CompressionAll text resources are compressedPASS
A+Font LoadingNo web fonts (system fonts)PASS
A+Resource CachingAll resources properly cachedPASS
A+Critical Rendering PathNo render-blocking resourcesPASS
A+Resource HintsNo optimization neededPASS
Network Waterfall343 requests over 0msINFO
Performance analysis not available for this result.
Third-Party Script CostPer-script blocking time, transfer cost, and cache headersINFO
| Script | Category | Execution | Transfer | Unused | Monthly Cost | Verdict |
|---|---|---|---|---|---|---|
assets.msn.com assets.msn.com | Other | 650ms | 115 KB | 26% | $9/mo | Costly |
assets.msn.com assets.msn.com | Other | 359ms | 514 KB | 45% | $5/mo | Costly |
Unattributable Unattributable | Other | 347ms | 0 KB | — | $5/mo | Costly |
r.bing.com r.bing.com | Other | 240ms | 0 KB | 61% | $3/mo | Costly |
assets.msn.com assets.msn.com | Other | 90ms | 30 KB | — | $1/mo | Optional |
assets.msn.com assets.msn.com | Other | 72ms | 191 KB | 38% | $1/mo | Optional |
r.bing.com r.bing.com | Other | 67ms | 24 KB | — | $1/mo | Optional |
r.bing.com r.bing.com | Other | 55ms | 0 KB | — | $1/mo | Optional |
These scripts may cost more than they're worth
- assets.msn.com adds 650ms and costs ~$9/month
- assets.msn.com adds 359ms and costs ~$5/month
- Unattributable adds 347ms and costs ~$5/month
- r.bing.com adds 240ms and costs ~$3/month
82% of JavaScript execution time is spent on third-party scripts. Consider auditing which scripts are essential.
When third-party JS execution time exceeds your own, performance gains from frontend work are capped by code you don't own.
Learn more ▾ ▴
Every millisecond of third-party JS competes with your own for main-thread time. If their share is bigger than yours, optimization on your code base barely moves the needle. Audit, defer, or remove third-parties before further frontend optimization. Use Lighthouse's third-party audit to identify the worst offenders.
Source: web.dev
assets.msn.com takes 650ms 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
assets.msn.com takes 359ms 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
Unattributable takes 347ms 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
r.bing.com takes 240ms 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
61% of r.bing.com's code is unused. The script may be loading features you don't use.
Bundle has high unused-code ratio — tree-shaking and route-splitting recover the wasted bytes.
Source: web.dev