Performance
· 15 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.
1.48 s
Largest Contentful Paint Largest Contentful Paint — how long until the largest visible element loads. Under 2.5s is good.
3.48 s
Total Blocking Time Total Blocking Time — total time the main thread was blocked, preventing user input. Under 200ms is good.
834 ms
Cumulative Layout Shift Cumulative Layout Shift — measures visual stability. How much the page layout shifts during loading. Under 0.1 is good.
0.019
Speed Index Speed Index — how quickly content is visually displayed during load. Under 3.4s is good.
4.08 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.
10.27 s
Page Load Progression
FPage Weight BudgetAction15.5 MB transferred, 374 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
Subset fonts to include only used characters, or switch to system font stacks.
Font payload is large — subset to used glyphs only, or fall back to system fonts (zero load time).
Source: web.dev font loading
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 ImpactAction100% third-party, 0 ms blockingFIX
FJS Execution CostAction3791ms total JS executionFIX
Main Thread Breakdown
| Script | Total | Scripting | Parse/Compile | Party |
|---|---|---|---|---|
| Unattributable | 811ms | 76ms | 0ms | 3rd |
| https://www.googletagmanager.com/gtm.js?id=GTM-NGK35S | 459ms | 382ms | 47ms | 3rd |
| https://www.fordham.edu/media/home/admin-use-only/javascript/scripts.js | 362ms | 126ms | 21ms | 3rd |
| https://www.fordham.edu/ | 248ms | 37ms | 1ms | 3rd |
| https://analytics.tiktok.com/i18n/pixel/static/main.MWE0ZWQ3ZWQwMA.js | 183ms | 157ms | 25ms | 3rd |
| https://ob.branderblender.com/i/74f7635909fcace6102251dbf4ff89ae.js | 162ms | 133ms | 6ms | 3rd |
| https://www.googletagmanager.com/gtag/js?id=G-3KWFKV7D2E&cx=c>m=4e64k0h2 | 159ms | 103ms | 31ms | 3rd |
| https://www.googletagmanager.com/gtag/js?id=G-2H1840JQZK&cx=c>m=4e64k0h2 | 149ms | 115ms | 32ms | 3rd |
| https://www.googletagmanager.com/gtag/js?id=AW-16939606188&cx=c>m=4e64k0h2 | 125ms | 109ms | 14ms | 3rd |
| https://obs.branderblender.com/ct?id=67496&url=https%3A%2F%2Fwww.fordham.edu%2F&sf=0&tpi=&ch=&uvid=&tsf=0&tsfmi=&tsfu=&cb=1776814104386&hl=2&op=0&ag=866425812&rand=84288101720517729171651626718062742502521295785605671287767810622100509170847525012792271708&fs=1350x940&fst=1350x940&np=linux%20x86_64&nv=google%20inc.&ref=&ss=800x600&nc=0&at=&di=W1siZWYiLDYxNDRdLFstMTksIlsxMCwxMCwxMCwxMCwwLDAsMSwyNCwyNCxcIi1cIiw4MDAsNjAwLDgwMCw2MDAsNzgwLDU4MCwxMzUwLDk0MCwwLDAsMCwwLFwiLVwiLFwiLVwiLDEzNTAsOTQwLDBdIl0sWy0yMywiKyJdLFstMzUsIlsxNzc2ODE0MTA0MjU1LDBdIl0sWy0zOCwiaSwtMSwtMSw3MDEsMCwxLDAsNSw5LDUyMywtMSwwLDEzMzYsMTQ3NiwzNzY1LDM3NjUiXSxbLTUyLCItIl0sWy02MiwiODAiXSxbLTY1LCItIl0sWy03MiwiRXhVPSJdLFstMTMsIi0iXSxbLTIxLCItIl0sWy0zLCJbXCJpbnRlcm5hbC1wZGYtdmlld2VyXCIsXCJpbnRlcm5hbC1wZGYtdmlld2VyXCIsXCJpbnRlcm5hbC1wZGYtdmlld2VyXCIsXCJpbnRlcm5hbC1wZGYtdmlld2VyXCIsXCJpbnRlcm5hbC1wZGYtdmlld2VyXCJdIl0sWy0zNywiLTEwOS02Ni03MC0iXSxbLTE3LCI0Il0sWy00NCwiMCwwLDAsNSJdLFstNiwiLSJdLFstMzAsIltcInZcIiwwXSJdLFstOSwiKyJdLFstMzMsIi0iXSxbLTM2LCJbXCI0LzNcIixcIjQvM1wiXSJdLFstNTgsIi0iXSxbLTQwLCIzMyJdLFstNjEsIntcIndnc2xcIjpcIjg7cGFja2VkXzR4OF9pbnRlZ2VyX2RvdF9wcm9kdWN0O3N1Ymdyb3VwX3VuaWZvcm1pdHk7c3ViZ3JvdXBfaWQ7cmVhZG9ubHlfYW5kX3JlYWR3cml0ZV9zdG9yYWdlX3RleHR1cmVzO3VucmVzdHJpY3RlZF9wb2ludGVyX3BhcmFtZXRlcnM7cG9pbnRlcl9jb21wb3NpdGVfYWNjZXNzO3RleHR1cmVfYW5kX3NhbXBsZXJfbGV0O3VuaWZvcm1fYnVmZmVyX3N0YW5kYXJkX2xheW91dDtcIixcInBjZlwiOlwicmdiYTh1bm9ybVwifSJdLFstNDUsIi0iXSxbLTI0LCJbXCJzYXlzd2hvXCIsMCxcIkNocm9tZSAxNDZcIiwxLDFdIl0sWy02NiwiZ2VvbG9jYXRpb24sY2h1YWZ1bGx2ZXJzaW9ubGlzdCxjcm9zc29yaWdpbmlzb2xhdGVkLHNjcmVlbndha2Vsb2NrLG9uZGV2aWNlc3BlZWNocmVjb2duaXRpb24sdHJhbnNsYXRvcixwdWJsaWNrZXljcmVkZW50aWFsc2dldCxzaGFyZWRzdG9yYWdlc2VsZWN0dXJsLGNodWFhcmNoLGNvbXB1dGVwcmVzc3VyZSxjaHByZWZlcnNyZWR1Y2VkdHJhbnNwYXJlbmN5LGRlZmVycmVkZmV0Y2gsdXNiLGNoc2F2ZWRhdGEscHVibGlja2V5Y3JlZGVudGlhbHNjcmVhdGUsc2hhcmVkc3RvcmFnZSxkZWZlcnJlZGZldGNobWluaW1hbCxydW5hZGF1Y3Rpb24sY2hkb3dubGluayxjaHVhZm9ybWZhY3RvcnMsb3RwY3JlZGVudGlhbHMscGF5bWVudCxjaHVhLGNodWFtb2RlbCxjaGVjdCxhdXRvcGxheSxjYW1lcmEsbGFuZ3VhZ2VkZXRlY3Rvcixwcml2YXRlc3RhdGV0b2tlbmlzc3VhbmNlLGRpZ2l0YWxjcmVkZW50aWFsc2dldCxhY2NlbGVyb21ldGVyLGNodWFwbGF0Zm9ybXZlcnNpb24saWRsZWRldGVjdGlvbixwcml2YXRlYWdncmVnYXRpb24saW50ZXJlc3Rjb2hvcnQsY2h2aWV3cG9ydGhlaWdodCxjYXB0dXJlZHN1cmZhY2Vjb250cm9sLGxvY2FsZm9udHMsY2h1YXBsYXRmb3JtLG1pZGksY2h1YWZ1bGx2ZXJzaW9uLHhyc3BhdGlhbHRyYWNraW5nLGNsaXBib2FyZHJlYWQsZ2FtZXBhZCxkaXNwbGF5Y2FwdHVyZSxrZXlib2FyZG1hcCxqb2luYWRpbnRlcmVzdGdyb3VwLGFyaWFub3RpZnksbG9jYWxuZXR3b3JrLGNodWFoaWdoZW50cm9weXZhbHVlcyxjaHdpZHRoLGNocHJlZmVyc3JlZHVjZWRtb3Rpb24sYnJvd3Npbmd0b3BpY3MsZW5jcnlwdGVkbWVkaWEsbG9jYWxuZXR3b3JrYWNjZXNzLGd5cm9zY29wZSxzZXJpYWwsY2hydHQsY2h1YW1vYmlsZSx3aW5kb3dtYW5hZ2VtZW50LHVubG9hZCxjaGRwcixjaHByZWZlcnNjb2xvcnNjaGVtZSxjaHVhd293NjQsYXR0cmlidXRpb25yZXBvcnRpbmcsZnVsbHNjcmVlbixpZGVudGl0eWNyZWRlbnRpYWxzZ2V0LHByaXZhdGVzdGF0ZXRva2VucmVkZW1wdGlvbixoaWQsc3VtbWFyaXplcixjaHVhYml0bmVzcyxzdG9yYWdlYWNjZXNzLHN5bmN4aHIsY2hkZXZpY2VtZW1vcnksY2h2aWV3cG9ydHdpZHRoLHBpY3R1cmVpbnBpY3R1cmUsbWFnbmV0b21ldGVyLGxvb3BiYWNrbmV0d29yayxjbGlwYm9hcmR3cml0ZSxtaWNyb3Bob25lIl0sWy0xMSwie1widFwiOlwiXCIsXCJtXCI6W1wiZGVzY3JpcHRpb25cIl19Il0sWy0xMiwibnVsbCJdLFstNTYsImxhbmRzY2FwZS1wcmltYXJ5Il0sWy0xNiwiMCJdLFstMiwiLSJdLFstNCwiLSJdLFstMjksIi0iXSxbLTUsIi0iXSxbLTU0LCJ7XCJoXCI6W1wiXzNcIixcIjI4NzI4OTkzMjBcIixcIl8yXCIsXCIyMzQzMzUyMzE1XCJdLFwiZFwiOltdLFwiYlwiOltdLFwic1wiOjF9Il0sWy0xNCwiLSJdLFstMzksIltcIjIwMDMwMTA3XCIsMixcIkdlY2tvXCIsXCJOZXRzY2FwZVwiLFwiTW96aWxsYVwiLG51bGwsbnVsbCx0cnVlLDQsZmFsc2UsbnVsbCw1LHRydWUsdHJ1ZSxudWxsLDAsdHJ1ZSx0cnVlLGZhbHNlLHRydWVdIl0sWy00MywiMDAwMDAwMDEwMTAwMDAwMTAwMTExMDExMDExMDExMDEwMDAwMDEwMTEwMSJdLFstMjYsIntcInRqaHNcIjo2MTEwMzQxMSxcInVqaHNcIjo0MzE3MzYzNSxcImpoc2xcIjoyMTU2NjU4Njg4fSJdLFstNDcsIi0iXSxbLTcwLCItIl0sWy03MSwiYTAxMTAwMTAxMDAxMDAxMDEwMDAxMDEwMDExMTExMDEwMDAwMTAiXSxbLTMyLCItIl0sWy03MywiRWhRPSJdLFstNDIsIjg4MzM5OTAxNiJdLFstMSwiLSJdLFstMjIsIltcIm5cIixcIm5cIl0iXSxbLTI3LCJbMCwwLDAsXCI0Z1wiLG51bGxdIl0sWy01MCwiLSJdLFstNjksIi0iXSxbLTgsIi0iXSxbLTEwLCItIl0sWy03NSwie30uc29tZUZ1bmMgaXMgbm90IGEgZnVuY3Rpb24iXSxbLTE1LCItIl0sWy0xOCwiWzAsMCwwLDFdIl0sWy0yNSwiLSJdLFstNjcsIi0iXSxbLTQ5LCItIl0sWy0yOCwiZW4tVVMsZW4iXSxbLTcsIi0iXSxbLTUxLCItIl0sWy01OSwiZGVmYXVsdCJdLFsiYm5jaCIsMTU3XSxbLTIwLCI2MjQ3ODI4OTQuMTc3NjgxNDEwMyJdLFstNDYsIjAiXSxbLTY4LCItIl0sWy0zMSwiZmFsc2UiXSxbLTM0LCItIl0sWy00OCwiW1wiLVwiLFwiLVwiLFwiLVwiLFwiLVwiLFwiLVwiXSJdLFstNTMsIjAwMSJdLFstNzQsIjAsMCJdLFstNDEsIi0iXSxbLTYwLCItIl0sWy02MywiMzYiXSxbLTU1LCIxIl0sWy01NywiV0UwWmVFdExXRUFYZkZ3WkVWRk5UVWxLQXhZV1Zsc1hXMHRZVjExY1MxdFZYRmRkWEVzWFdsWlVGbEFXRGcxZkRnOEtEQUFKQUY5YVdGcGNEd2dKQ3dzTUNGMWJYdzFmWHdFQVdGd1hVMG9EQ0FNUENBMExEQkFWV0UwWlN4a1JVVTFOU1VvREZoWldXeGRiUzFoWFhWeExXMVZjVjExY1N4ZGFWbFFXVUJZT0RWOE9Ed29NQUFrQVgxcFlXbHdQQ0FrTEN3d0lYVnRmRFY5ZkFRQllYQmRUU2dNSUF3OFBEZ0FPRUE9PSJdLFstNjQsIlswLFwibWFjT1NcIixbe1wiYlwiOlwiQ2hyb21pdW1cIixcInZcIjpcIjE0NlwifSx7XCJiXCI6XCJHb29nbGUgQ2hyb21lXCIsXCJ2XCI6XCIxNDZcIn1dXSJdLFsiYWJuY2giLDIyM10sWyJkZGIiLCIwLDAsMCwwLDEsMCwwLDEsMCwwLDAsMCwwLDAsMSwwLDAsMCwwLDAsMCwwLDAsMCwwLDIsMCwwLDAsMCwwLDAsMCwwLDEsMSwwLDAsMCwwLDAsMCwzLDMsMCwwLDAsMSwwLDAsMCwwLDAsMSwwLDEsMCwzLDAsMCwwLDAsMzYsMCwwLDAsMCwwLDAsMSwwLDEsMCwxLDAiXSxbImNiIiwiMCwwLDAsMCwwLDAsMCwxLDAsMSwwLDEsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDEsMCwxLDEsMCwwLDAsMCwxLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwxLDAsMCwwLDAsMCwwLDAsMCwwLDAsMCwwLDAsMSwwLDAsMCwwLDAsMCwwLDAsMSwxLDAsMCwwLDEsMCwwLDAsMSwxIl1d&dep=0&pre=0&sdd=&cri=8marzicHiY&pto=3896&ver=65&gac=624782894.1776814103&mei=&ap=&fe=1&duid=1.1776814104.iEgPAvsCTcnwtE83&suid=1.1776814104.u7OTyRD8vOuaAtnM&tuid=1.1776814104.cEAdda8nh0u7msJT&sid=1.1776814104403.6sinRUDoPoN6SQcX&fbc=->m=WyJPbmVUcnVzdExvYWRlZCIsIk9wdGFub25Mb2FkZWQiLCJPbmVUcnVzdEdyb3Vwc1VwZGF0ZWQiLCJuZXh0cm9sbC1yZWFkeSJd&it=191%2C2207%2C146&fbcl=-&gacl=&gacsd=-&rtic=-&rtict=-&bgc=-&spa=1&urid=0&ab=&sck=-&io=Ojk2Oi0%2BOTY6LSY5NjstJj8%2BNjstJj88NjstJj8yNjstJj46NjstaGA2Oi1uc2hKeHJlaDY6LWVkbXk2Oi17c2w2Lj5JZGlhbmh%2FLjk7RGlhbmh%2FLj5P | 120ms | 114ms | 1ms | 3rd |
Showing top 10 of 22 scripts
FJS BundlesAction75 scripts, 799 KB unusedFIX
Downloaded but never executed on this page.
| Script | Size | Unused | Minified | Party |
|---|---|---|---|---|
| https://www.googletagmanager.com/gtag/js?id=G-2H1840JQZK&cx=c>m=4e64k0h2 | 178 KB | 69 KB (39%) | ✓ | 3rd |
| https://cdn.cookielaw.org/scripttemplates/202511.1.0/otBannerSdk.js | 124 KB | 66 KB (53%) | ✓ | 3rd |
| https://www.googletagmanager.com/gtag/js?id=G-3KWFKV7D2E&cx=c>m=4e64k0h2 | 157 KB | 65 KB (41%) | ✓ | 3rd |
| https://www.googletagmanager.com/gtag/destination?id=DC-8667917&cx=c>m=4e64k0h2 | 129 KB | 62 KB (48%) | ✓ | 3rd |
| https://www.googletagmanager.com/gtag/destination?id=AW-1041205602&cx=c>m=4e64k0h2 | 134 KB | 60 KB (45%) | ✓ | 3rd |
| https://www.googletagmanager.com/gtag/destination?id=AW-697257689&cx=c>m=4e64k0h2 | 134 KB | 60 KB (45%) | ✓ | 3rd |
| https://www.googletagmanager.com/gtag/js?id=DC-14828328&cx=c>m=4e64k0h2 | 129 KB | 57 KB (44%) | ✓ | 3rd |
| https://www.fordham.edu/media/home/admin-use-only/javascript/scripts.js | 92 KB | 56 KB (61%) | ✓ | 3rd |
| https://www.googletagmanager.com/gtag/js?id=AW-16939606188&cx=c>m=4e64k0h2 | 144 KB | 56 KB (39%) | ✓ | 3rd |
| https://www.googletagmanager.com/gtm.js?id=GTM-NGK35S | 206 KB | 55 KB (27%) | ✓ | 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
FPage Weight InventoryAction374 resources · 15.5 MB · 799 KB savings availableFIX
~799.0 KiB of savings available
| # | Resource | Type | Size | Cache | Unused | 3rd party | Issues |
|---|---|---|---|---|---|---|---|
| — | — | ||||||
| 374 resources | 15.5 MiB | ||||||
FHTTP CachingActionNo cache headersFIX
No Cache-Control header
Adding a Cache-Control header can significantly improve repeat-visit performance.
CImage OptimizationAction137 images, 0 KB saveableREVIEW
Set explicit width and height to prevent CLS.
Image without explicit width/height — browser can't reserve space; CLS jumps when image loads.
Source: web.dev / Core Web Vitals
Set explicit width and height to prevent CLS.
Image without explicit width/height — browser can't reserve space; CLS jumps when image loads.
Source: web.dev / Core Web Vitals
Set explicit width and height to prevent CLS.
Image without explicit width/height — browser can't reserve space; CLS jumps when image loads.
Source: web.dev / Core Web Vitals
Set explicit width and height to prevent CLS.
Image without explicit width/height — browser can't reserve space; CLS jumps when image loads.
Source: web.dev / Core Web Vitals
Set explicit width and height to prevent CLS.
Image without explicit width/height — browser can't reserve space; CLS jumps when image loads.
Source: web.dev / Core Web Vitals
Set explicit width and height to prevent CLS.
Image without explicit width/height — browser can't reserve space; CLS jumps when image loads.
Source: web.dev / Core Web Vitals
Set explicit width and height to prevent CLS.
Image without explicit width/height — browser can't reserve space; CLS jumps when image loads.
Source: web.dev / Core Web Vitals
Set explicit width and height to prevent CLS.
Image without explicit width/height — browser can't reserve space; CLS jumps when image loads.
Source: web.dev / Core Web Vitals
Set explicit width and height to prevent CLS.
Image without explicit width/height — browser can't reserve space; CLS jumps when image loads.
Source: web.dev / Core Web Vitals
CGreen HostingActionWhether the site is served from green-energy infrastructureREVIEW
Green Hosting
No green hosting detected
A+Text CompressionAll text resources are compressedPASS
A+Font Loading6 fonts (308 KB)PASS
Web fonts
6
308 KB total
Render-blocking
0
of 6
Dominant font-display
swap
Most common across fonts
Font loading timeline
- Subset this font — over 100 KB suggests Latin Extended or full glyph coverage that most pages don't need
Optimization checklist
- Preload critical fonts (priority=high)
- Use woff2 format for all fonts
- Set font-display to swap, optional, or fallback
- Subset large fonts (≤100 KB each)
Fixing the unchecked items could save ~84 KB and ~168 ms
A+Resource CachingAll resources properly cachedPASS
A+Critical Rendering PathNo render-blocking resourcesPASS
A+Resource HintsNo optimization neededPASS
Network Waterfall374 requests over 10347msINFO
Third-Party Script CostPer-script blocking time, transfer cost, and cache headersINFO
| Script | Category | Execution | Transfer | Unused | Monthly Cost | Verdict |
|---|---|---|---|---|---|---|
Unattributable Unattributable | Other | 811ms | 0 KB | — | $11/mo | Costly |
Google Tag Manager www.googletagmanager.com | Tag Manager | 459ms | 206 KB | 27% | $6/mo | Costly |
www.fordham.edu www.fordham.edu | Other | 362ms | 92 KB | 61% | $5/mo | Costly |
www.fordham.edu www.fordham.edu | Other | 248ms | 23 KB | — | $3/mo | Costly |
analytics.tiktok.com analytics.tiktok.com | Other | 183ms | 106 KB | 54% | $2/mo | Optional |
ob.branderblender.com ob.branderblender.com | Other | 162ms | 45 KB | — | $2/mo | Optional |
Google Tag Manager www.googletagmanager.com | Tag Manager | 159ms | 157 KB | 41% | $2/mo | Optional |
Google Tag Manager www.googletagmanager.com | Tag Manager | 149ms | 178 KB | 39% | $2/mo | Optional |
Google Tag Manager www.googletagmanager.com | Tag Manager | 125ms | 144 KB | 39% | $2/mo | Optional |
obs.branderblender.com obs.branderblender.com | Other | 120ms | 2 KB | — | $2/mo | Optional |
my.fordhamu.org my.fordhamu.org | Other | 118ms | 4 KB | — | $2/mo | Optional |
Google Tag Manager www.googletagmanager.com | Tag Manager | 118ms | 146 KB | 36% | $2/mo | Optional |
OneTrust cdn.cookielaw.org | Consent | 109ms | 124 KB | 53% | $1/mo | Essential |
Facebook Pixel connect.facebook.net | Advertising | 99ms | 97 KB | 27% | $1/mo | Optional |
Google Tag Manager www.googletagmanager.com | Tag Manager | 81ms | 129 KB | 44% | $1/mo | Optional |
Google Tag Manager www.googletagmanager.com | Tag Manager | 79ms | 129 KB | 48% | $1/mo | Optional |
sc-static.net sc-static.net | Other | 75ms | 25 KB | — | $1/mo | Optional |
s.dpmsrv.com s.dpmsrv.com | Other | 71ms | 13 KB | — | $1/mo | Optional |
Google Tag Manager www.googletagmanager.com | Tag Manager | 70ms | 134 KB | 45% | $1/mo | Optional |
Google Tag Manager www.googletagmanager.com | Tag Manager | 69ms | 134 KB | 45% | $1/mo | Optional |
Facebook Pixel connect.facebook.net | Advertising | 63ms | 46 KB | — | $1/mo | Optional |
Adobe Fonts use.typekit.net | Font | 61ms | 16 KB | — | $1/mo | Optional |
These scripts may cost more than they're worth
- Unattributable adds 811ms and costs ~$11/month
- Google Tag Manager adds 459ms and costs ~$6/month
- www.fordham.edu adds 362ms and costs ~$5/month
- www.fordham.edu adds 248ms and costs ~$3/month
100% 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
Unattributable takes 811ms 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
Google Tag Manager takes 459ms 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
www.fordham.edu takes 362ms 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 www.fordham.edu'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
www.fordham.edu takes 248ms 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
54% of analytics.tiktok.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
53% of OneTrust'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