Browsers will use heuristic caching, which can be unpredictable. Set explicit cache headers.
No Cache-Control header
Adding a Cache-Control header can significantly improve repeat-visit performance.
C
Image Optimization
Action
22 images, 0 KB saveable
REVIEW
22 images, 0 KB saveable
Warning::
!
https://media.gq.com/photos/69e794b0b1f3694dc92a9a... is missing width/height — may cause layout shift
Set explicit width and height to prevent CLS.
Warning::
!
https://media.gq.com/photos/672d3371185c998a089f44... is missing width/height — may cause layout shift
Set explicit width and height to prevent CLS.
Warning::
!
https://media.gq.com/photos/69bd61df1a1859dc0fb520... is missing width/height — may cause layout shift
Set explicit width and height to prevent CLS.
Warning::
!
https://media.gq.com/photos/694431af5900ae9ac3a8f5... is missing width/height — may cause layout shift
Set explicit width and height to prevent CLS.
Warning::
!
https://media.gq.com/photos/69443c3cfdbb2ead6d70a7... is missing width/height — may cause layout shift
Set explicit width and height to prevent CLS.
Warning::
!
https://media.gq.com/photos/69e2b1718036b66827e7d8... is missing width/height — may cause layout shift
Set explicit width and height to prevent CLS.
Warning::
!
https://media.gq.com/photos/69e6a391642fceda9b372a... is missing width/height — may cause layout shift
Set explicit width and height to prevent CLS.
Warning::
!
is missing width/height — may cause layout shift
Set explicit width and height to prevent CLS.
Warning::
!
https://media.gq.com/photos/69e7833db1f3694dc92a99... is missing width/height — may cause layout shift
Set explicit width and height to prevent CLS.
Warning::
!
https://media.gq.com/photos/69e7c198b1f3694dc92a9e... is missing width/height — may cause layout shift
Set explicit width and height to prevent CLS.
Warning::
!
https://media.gq.com/photos/69e7d15baefd46c3b3ed3c... is missing width/height — may cause layout shift
Set explicit width and height to prevent CLS.
Warning::
!
https://media.gq.com/photos/69c28be4a871df66a39bf5... is missing width/height — may cause layout shift
Set explicit width and height to prevent CLS.
Warning::
!
https://www.gq.com/verso/static/gq-global/assets/l... is missing width/height — may cause layout shift
Set explicit width and height to prevent CLS.
Warning::
!
https://media.gq.com/photos/69e7cb804bc53e59f356cb... is missing width/height — may cause layout shift
Set explicit width and height to prevent CLS.
Warning::
!
https://media.gq.com/photos/69e7d15baefd46c3b3ed3c... is missing width/height — may cause layout shift
Set explicit width and height to prevent CLS.
Warning::
!
https://media.gq.com/photos/69e7833db1f3694dc92a99... is missing width/height — may cause layout shift
Set explicit width and height to prevent CLS.
22images435 KB
0oversized-0 KB
6legacy format
16missing dimensionsCLS risk
Set explicit width and height to prevent CLS.
Why this matters
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.
Why this matters
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.
Why this matters
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.
Why this matters
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.
Why this matters
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.
Why this matters
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.
Why this matters
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.
Why this matters
Performance issues directly impact user engagement and conversion rates.
Set explicit width and height to prevent CLS.
Why this matters
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.
Why this matters
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.
Why this matters
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.
Why this matters
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.
Why this matters
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.
Why this matters
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.
Why this matters
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.
Why this matters
Image without explicit width/height — browser can't reserve space; CLS jumps when image loads.
Source: web.dev / Core Web Vitals
C
Green Hosting
Action
Whether the site is served from green-energy infrastructure
REVIEW
Green Hosting
No green hosting detected
A+
Text Compression
All text resources are compressed
PASS
All text resources are compressed
Info::
✓
All text resources are compressed
All text resources are properly compressed.
A+
Font Loading
6 fonts (343 KB)
PASS
6 fonts (343 KB)
Info::
i
6 font(s) use font-display: swap (FOUT risk but functional)
Web fonts
6
343 KB total
Render-blocking
0
of 6
Dominant font-display
swap
Most common across fonts
Font loading timeline
TransferFOIT (block)FOUT (swap)
agaramondpro-regular-we...woff2swap
Size83 KB
Load time53 ms
Start397 ms
RiskFOUT — text flashes from fallback to web font
GQSans-Bold.woff2woff2swap
Size47 KB
Load time13 ms
Start397 ms
RiskFOUT — text flashes from fallback to web font
GQSans-Regular.woff2woff2swap
Size44 KB
Load time13 ms
Start398 ms
RiskFOUT — text flashes from fallback to web font
GQSans-RegularItalic.woff2woff2swap
Size50 KB
Load time20 ms
Start398 ms
RiskFOUT — text flashes from fallback to web font
GQSans-BoldItalic.woff2woff2swap
Size53 KB
Load time21 ms
Start400 ms
RiskFOUT — text flashes from fallback to web font
agaramondpro-semibold-w...woff2swap
Size65 KB
Load time22 ms
Start401 ms
RiskFOUT — text flashes from fallback to web font
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)
A+
Resource Caching
All resources properly cached
PASS
All resources properly cached
Info::
✓
No caching issues found
All static resources have appropriate caching headers.
A+
Critical Rendering Path
No render-blocking resources
PASS
No render-blocking resources
Info::
✓
No render-blocking resources detected
A+
Resource Hints
4 hints, 0 missing preconnects
PASS
4 hints, 0 missing preconnects
Info::
✓
Page uses 4 resource hint(s)
Current Resource Hints
preconnect
2
preload
2
dns-prefetch—
prefetch—
4 resource hints configured
A+
Render-Blocking Resources
No render-blocking resources detected
PASS
No render-blocking resources detected
Info::
✓
No render-blocking resources detected in <head>
A+
Third-Party Resources
No third-party resources detected
PASS
No third-party resources detected
Network Waterfall
97 requests over 3303ms
INFO
HTML JavaScript CSS Images Fonts XHR/Fetch Other
Third-Party Script Cost
Per-script blocking time, transfer cost, and cache headers
INFO
100%of JavaScript execution is third-party
First-party Third-party10005ms · 2360KB · $173/mo
Script
Category
Execution
Transfer
Unused
Monthly Cost
Verdict
www.gq.com
www.gq.com
Other
3184ms
329 KB
49%
$55/mo
Costly
www.gq.com
www.gq.com
Other
1730ms
34 KB
—
$30/mo
Costly
www.gq.com
www.gq.com
Other
1091ms
182 KB
—
$19/mo
Costly
Unattributable
Unattributable
Other
632ms
0 KB
—
$11/mo
Costly
privacy.condenastdigital.com
privacy.condenastdigital.com
Other
620ms
199 KB
—
$11/mo
Costly
www.gq.com
www.gq.com
Other
579ms
53 KB
—
$10/mo
Costly
www.gq.com
www.gq.com
Other
498ms
481 KB
50%
$9/mo
Costly
Google Tag Manager
www.googletagmanager.com
Tag Manager
378ms
191 KB
39%
$7/mo
Costly
s.skimresources.com
s.skimresources.com
Other
209ms
15 KB
—
$4/mo
Costly
Google Tag Manager
www.googletagmanager.com
Tag Manager
192ms
120 KB
51%
$3/mo
Optional
cdn.gladly.com
cdn.gladly.com
Other
174ms
44 KB
56%
$3/mo
Optional
securepubads.g.doubleclick.net
securepubads.g.doubleclick.net
Other
169ms
188 KB
77%
$3/mo
Optional
www.gq.com
www.gq.com
Other
164ms
304 KB
45%
$3/mo
Optional
www.gq.com
www.gq.com
Other
159ms
16 KB
—
$3/mo
Optional
globalservices.conde.digital
globalservices.conde.digital
Other
98ms
26 KB
—
$2/mo
Optional
securepubads.g.doubleclick.net
securepubads.g.doubleclick.net
Other
74ms
34 KB
—
$1/mo
Optional
www.gq.com
www.gq.com
Other
54ms
145 KB
75%
$1/mo
Optional
www.gq.com
Other
Costly
Execution3184ms
Transfer329 KB
Unused49%
Monthly Cost$55/mo
www.gq.com
Other
Costly
Execution1730ms
Transfer34 KB
Monthly Cost$30/mo
www.gq.com
Other
Costly
Execution1091ms
Transfer182 KB
Monthly Cost$19/mo
Unattributable
Other
Costly
Execution632ms
Transfer0 KB
Monthly Cost$11/mo
privacy.condenastdigital.com
Other
Costly
Execution620ms
Transfer199 KB
Monthly Cost$11/mo
www.gq.com
Other
Costly
Execution579ms
Transfer53 KB
Monthly Cost$10/mo
www.gq.com
Other
Costly
Execution498ms
Transfer481 KB
Unused50%
Monthly Cost$9/mo
Google Tag Manager
Tag Manager
Costly
Execution378ms
Transfer191 KB
Unused39%
Monthly Cost$7/mo
s.skimresources.com
Other
Costly
Execution209ms
Transfer15 KB
Monthly Cost$4/mo
Google Tag Manager
Tag Manager
Optional
Execution192ms
Transfer120 KB
Unused51%
Monthly Cost$3/mo
cdn.gladly.com
Other
Optional
Execution174ms
Transfer44 KB
Unused56%
Monthly Cost$3/mo
securepubads.g.doubleclick.net
Other
Optional
Execution169ms
Transfer188 KB
Unused77%
Monthly Cost$3/mo
www.gq.com
Other
Optional
Execution164ms
Transfer304 KB
Unused45%
Monthly Cost$3/mo
www.gq.com
Other
Optional
Execution159ms
Transfer16 KB
Monthly Cost$3/mo
globalservices.conde.digital
Other
Optional
Execution98ms
Transfer26 KB
Monthly Cost$2/mo
securepubads.g.doubleclick.net
Other
Optional
Execution74ms
Transfer34 KB
Monthly Cost$1/mo
www.gq.com
Other
Optional
Execution54ms
Transfer145 KB
Unused75%
Monthly Cost$1/mo
These scripts may cost more than they're worth
www.gq.com adds 3184ms and costs ~$55/month
www.gq.com adds 1730ms and costs ~$30/month
www.gq.com adds 1091ms and costs ~$19/month
Unattributable adds 632ms and costs ~$11/month
privacy.condenastdigital.com adds 620ms and costs ~$11/month
www.gq.com adds 579ms and costs ~$10/month
www.gq.com adds 498ms and costs ~$9/month
Google Tag Manager adds 378ms and costs ~$7/month
s.skimresources.com adds 209ms and costs ~$4/month
100% of JavaScript execution time is spent on third-party scripts. Consider auditing which scripts are essential.
Why this matters
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
www.gq.com takes 3184ms of CPU time. Consider loading it asynchronously or replacing it with a lighter alternative.
Why this matters
This script has high main-thread execution time — optimize hot paths or defer.
Source: web.dev
www.gq.com takes 1730ms of CPU time. Consider loading it asynchronously or replacing it with a lighter alternative.
Why this matters
This script has high main-thread execution time — optimize hot paths or defer.
Source: web.dev
www.gq.com takes 1091ms of CPU time. Consider loading it asynchronously or replacing it with a lighter alternative.
Why this matters
This script has high main-thread execution time — optimize hot paths or defer.
Source: web.dev
Unattributable takes 632ms of CPU time. Consider loading it asynchronously or replacing it with a lighter alternative.
Why this matters
This script has high main-thread execution time — optimize hot paths or defer.
Source: web.dev
privacy.condenastdigital.com takes 620ms of CPU time. Consider loading it asynchronously or replacing it with a lighter alternative.
Why this matters
This script has high main-thread execution time — optimize hot paths or defer.
Source: web.dev
www.gq.com takes 579ms of CPU time. Consider loading it asynchronously or replacing it with a lighter alternative.
Why this matters
This script has high main-thread execution time — optimize hot paths or defer.
Source: web.dev
www.gq.com takes 498ms of CPU time. Consider loading it asynchronously or replacing it with a lighter alternative.
Why this matters
This script has high main-thread execution time — optimize hot paths or defer.
Source: web.dev
Google Tag Manager takes 378ms of CPU time. Consider loading it asynchronously or replacing it with a lighter alternative.
Why this matters
This script has high main-thread execution time — optimize hot paths or defer.
Source: web.dev
s.skimresources.com takes 209ms of CPU time. Consider loading it asynchronously or replacing it with a lighter alternative.
Why this matters
This script has high main-thread execution time — optimize hot paths or defer.
Source: web.dev
51% of Google Tag Manager's code is unused. The script may be loading features you don't use.
Why this matters
Bundle has high unused-code ratio — tree-shaking and route-splitting recover the wasted bytes.
Source: web.dev
56% of cdn.gladly.com's code is unused. The script may be loading features you don't use.
Why this matters
Bundle has high unused-code ratio — tree-shaking and route-splitting recover the wasted bytes.
Source: web.dev
77% of securepubads.g.doubleclick.net's code is unused. The script may be loading features you don't use.
Why this matters
Bundle has high unused-code ratio — tree-shaking and route-splitting recover the wasted bytes.
Source: web.dev
75% of www.gq.com's code is unused. The script may be loading features you don't use.
Why this matters
Bundle has high unused-code ratio — tree-shaking and route-splitting recover the wasted bytes.