Vampire Vape ·Core Web Vitals · May 2026
← Overview

Core Web Vitals & site speed

https://www.vampirevape.co.uk · 100 URLs · mobile + desktop · May 2026
97 / 100
Cross-referenced with tracking audit. Third-party vendor attribution, consent-gating status, and PII leakage flags are included below.

Executive summary

Vampire Vape's mobile performance is sitting in the danger zone — scores as low as 50 on key pages — putting organic rankings and paid landing page Quality Scores at measurable risk; the single biggest revenue-adjacent issue is a third-party stylesheet (srverror.com/styles.css) blocking render on 86% of pages and wasting over 65 seconds of aggregate load time across the site, meaning shoppers on mobile are staring at blank screens before they can browse or convert. Two root causes — unoptimised Google Tag Manager tag firing and render-blocking CSS and font resources — are suppressing scores that could realistically reach the low-to-mid 90s with targeted fixes, directly improving ad efficiency and SEO visibility.

At a glance

3 critical114 high17 medium
100
URLs audited
24
Finding types
(134 occurrences)
11
Distinct vendors
6
LCP lazy-loaded
+12
Max projected lift

Top 3 fixes

The highest-impact actions from the full recommendation list. Start here — these three alone are projected to move the needle most.

1
HIGH

Fix srverror.com/styles.css immediately

this single stylesheet blocks render on 86% of mobile pages (65,823ms aggregate waste). Audit whether it is actually needed — the domain name suggests it may be an error-monitoring asset loaded incorrectly. If required, load it non-blocking using the pattern: …

2
HIGH

Fix the Google Fonts render block

fonts.googleapis.com/css?family=Open+Sans blocks render on 86% of mobile pages (65,032ms aggregate). Replace the standard <link> with a preconnect + font-display:swap approach: add <link rel='preconnect' href='https://fonts.googleapis.com'> in <head>, then loa…

3
HIGH

Audit and slim down GTM tags

Open GTM Preview and identify every tag set to fire on 'All Pages'. Tags for remarketing, heatmaps, chat widgets, and A/B testing tools should be scoped to specific page paths or event triggers instead. GTM is costing 218ms blocking time per mobile page load a…

Core Web Vitals distribution

How the sample splits across Google's Good / Needs Improvement / Poor bands for each metric. A passing site needs ≥75% of URLs in Good for every metric. Hover each segment for exact counts.

mobile

LCP ≤2.5s good · >4s poor
92%
1%
6%
86 good · 1 NI · 6 poor
INP ≤200ms good · >500ms poor (lab: TBT)
94%
4%
2%
87 good · 4 NI · 2 poor
CLS ≤0.1 good · >0.25 poor
96%
3%
1%
89 good · 3 NI · 1 poor

desktop

LCP ≤2.5s good · >4s poor
100%
94 good · 0 NI · 0 poor
INP ≤200ms good · >500ms poor (lab: TBT)
94%
3%
3%
88 good · 3 NI · 3 poor
CLS ≤0.1 good · >0.25 poor
97%
1%
2%
91 good · 1 NI · 2 poor

CrUX field trend — last 6 months

Real-user data from Google's Chrome User Experience Report. Each sparkline spans ~25 weekly periods ending now. Background bands show Good (green) / Needs Improvement (yellow) / Poor (red). A diverging field vs lab story is a signal — lab tests reveal the bad page-load path, but field data is what Google ranks on.

https://www.vampirevape.co.uk mobile
LCP 1697ms
▲ 7% worse · 25 weekly periods
INP 85ms
▼ 7% better · 25 weekly periods
CLS 0.030
stable · 25 weekly periods
https://www.vampirevape.co.uk desktop
LCP 1517ms
▼ 3% better · 25 weekly periods
INP 51ms
▼ 7% better · 25 weekly periods
CLS 0.050
▲ 25% worse · 25 weekly periods
1 additional per-URL CrUX trends — show all
https://www.vampirevape.co.uk/delivery mobile
LCP 1009ms
INP 77ms
CLS 0.000

LCP anti-patterns

A correctly-tuned LCP element loads eagerly, has fetchpriority="high", and is discoverable in the initial HTML. Any of these missing will delay paint.

6
URLs with loading="lazy" on LCP
Fix: remove loading="lazy" on above-the-fold LCP element
7
URLs missing fetchpriority="high"
Fix: add fetchpriority="high" to LCP img / preload tag
0
LCP not discoverable in initial HTML
Fix: server-render the LCP element or add <link rel="preload">
6 URLs with lazy-loaded LCP — show list
URLStrategyLCP (lab)Score
https://www.vampirevape.co.uk desktop 1341ms 58
https://www.vampirevape.co.uk mobile 5251ms 71
https://www.vampirevape.co.uk/aspire-pockex-replacement-glass desktop 1031ms 50
https://www.vampirevape.co.uk/aspire-pockex-replacement-glass mobile 4801ms 43
https://www.vampirevape.co.uk/bar-salts-strawberry-ice-10ml-60ml-longfill-concentrate desktop 988ms 62
https://www.vampirevape.co.uk/delivery desktop 1081ms 85

Worst pages

Lowest-scoring URLs per strategy — prioritise these for manual investigation in addition to sitewide fixes.

mobile

#URLScoreLCP (lab)TBT (lab)CLSFlags
1 https://www.vampirevape.co.uk/faqs 34 10285ms 491ms 0.417
2 https://www.vampirevape.co.uk/aspire-pockex-replacement-glass 43 4801ms 1730ms 0.071 lazy LCPno fp
3 https://www.vampirevape.co.uk/delivery 52 9806ms 306ms 0.038
4 https://www.vampirevape.co.uk/catalog/category/view/id/1145 55 3151ms 1018ms 0.126
5 https://www.vampirevape.co.uk/lost-mary-bm6000-prefilled-pod-10mg-1pk 57 4652ms 370ms 0.162 no fp
6 https://www.vampirevape.co.uk/catalog/category/view/id/3778 61 10826ms 119ms 0.14
7 https://www.vampirevape.co.uk 71 5251ms 281ms 0.035 lazy LCPno fp
8 https://www.vampirevape.co.uk/catalog/category/view/id/2496 94 2255ms
9 https://www.vampirevape.co.uk/vampire-vape-70-30-caramelised-banana-pancake-50ml-shortfill-e-liquid 95 2341ms
10 https://www.vampirevape.co.uk/vampire-vape-vamp-toes-10ml-e-liquid 95 2340ms

desktop

#URLScoreLCP (lab)TBT (lab)CLSFlags
1 https://www.vampirevape.co.uk/catalog/category/view/id/2508 43 2453ms 445ms 0.288
2 https://www.vampirevape.co.uk/aspire-pockex-replacement-glass 50 1031ms 935ms 0.268 lazy LCPno fp
3 https://www.vampirevape.co.uk 58 1341ms 1845ms 0.053 lazy LCPno fp
4 https://www.vampirevape.co.uk/bar-salts-strawberry-ice-10ml-60ml-longfill-concentrate 62 988ms 974ms 0.054 lazy LCPno fp
5 https://www.vampirevape.co.uk/environmental-policy 77 2386ms 217ms 0.021
6 https://www.vampirevape.co.uk/delivery 85 1081ms 262ms 0.043 lazy LCPno fp
7 https://www.vampirevape.co.uk/e-liquid/10ml-e-liquid/vape-spot-10ml-e-liquids 87 1156ms 200ms 0.105
8 https://www.vampirevape.co.uk/privacy-policy 94 1206ms 28ms 0.04
9 https://www.vampirevape.co.uk/innokin-pzp-max-coils-3pk 99 667ms
10 https://www.vampirevape.co.uk/aspire-veynom-ex-kit-rainbow 99 655ms

Sitewide third-party impact

How each vendor compounds across every audited page. Fixing a script on 1% of pages nudges the score. Fixing a script on 90% of pages moves it.

VendorStrategyCoverage Mean blockingAggregate blocking Transfer totalConsent
Google Tag Manager
(gtm)
desktop
8/100 · 8%
325ms 2600ms 3031 KB before consent
Cookiebot desktop
8/100 · 8%
31ms 246ms 1067 KB before consent
lipscore.com desktop
8/100 · 8%
3ms 25ms 991 KB
ahrefs.com desktop
8/100 · 8%
1ms 10ms 29 KB
New Relic desktop
8/100 · 8%
1ms 8ms 265 KB
Ometria desktop
8/100 · 8%
0ms 0ms 71 KB
Trust Pilot desktop
8/100 · 8%
0ms 0ms 99 KB
affiliatefuture.com desktop
8/100 · 8%
0ms 0ms 12 KB
Google Analytics
(ga4)
desktop
8/100 · 8%
0ms 0ms 9 KB before consent
Google Fonts desktop
85/100 · 85%
0ms 0ms 1377 KB
srverror.com desktop
85/100 · 85%
0ms 0ms 94 KB
Google Tag Manager
(gtm)
mobile
7/100 · 7%
318ms 2223ms 2734 KB before consent
Cookiebot mobile
7/100 · 7%
28ms 198ms 902 KB before consent
lipscore.com mobile
7/100 · 7%
2ms 12ms 849 KB
Ometria mobile
7/100 · 7%
1ms 9ms 62 KB

Sitewide heavy files

Specific files that either render-block or ship large amounts of unused code on many pages at once. One-file fixes that propagate everywhere.

FileTypeStrategy CoverageWasted
https://www.srverror.com/styles.css render blocking desktop 85/100 · 85% 18393ms aggregate
https://fonts.googleapis.com/css?family=Open+Sans render blocking desktop 85/100 · 85% 17588ms aggregate
https://www.vampirevape.co.uk/static/version1774449510/_cache/merged/4b99b28e82d75b2e19802a36528948d2.min.css render blocking desktop 8/100 · 8% 1268ms aggregate
https://www.vampirevape.co.uk/static/version1774449510/_cache/merged/dc682e5d32b130d237723be506e42f0a.min.css render blocking desktop 6/100 · 6% 499ms aggregate
sion1774449510/frontend/FlavourWarehouse/VampireVape/en_GB/FlavourWarehouse_Marketing/js/product/labels.min.js render blocking desktop 2/100 · 2% 391ms aggregate
atic/version1774449510/frontend/FlavourWarehouse/VampireVape/en_GB/FlavourWarehouse_Marketing/js/labels.min.js render blocking desktop 2/100 · 2% 389ms aggregate
https://www.vampirevape.co.uk/static/version1774449510/_cache/merged/6cca0708a05d06be0c985d3aa34e2da9.min.css render blocking desktop 2/100 · 2% 172ms aggregate
https://custom-page.qa-apptrana.com/ifc/400/styles/main.css render blocking desktop 1/100 · 1% 0ms aggregate
https://www.vampirevape.co.uk/static/version1774449510/_cache/merged/dc682e5d32b130d237723be506e42f0a.min.css unused css desktop 6/100 · 6% 174KB (91% unused)
://static.lipscore.com/assets/lipscore-v1-98cfc83a3af5ccbf62bf453b84995412470b050e7eaebe9eef2630dbceb5773f.css unused css desktop 8/100 · 8% 131KB (98% unused)
https://www.vampirevape.co.uk/static/version1774449510/_cache/merged/6cca0708a05d06be0c985d3aa34e2da9.min.css unused css desktop 2/100 · 2% 57KB (89% unused)
https://www.googletagmanager.com/gtag/js?id=G-B0FRYP2L33&cx=c&gtm=4e64t1 unused js desktop 6/100 · 6% 518KB (55% unused)
https://www.googletagmanager.com/gtm.js?id=GTM-WDR9M62 unused js desktop 8/100 · 8% 482KB (43% unused)
https://static.lipscore.com/assets/en/lipscore-v1.js unused js desktop 8/100 · 8% 452KB (70% unused)
https://www.googletagmanager.com/gtag/destination?id=G-B0FRYP2L33&cx=c&gtm=4e64t1 unused js desktop 3/100 · 3% 192KB (40% unused)

What-if: projected score lift per fix

Directional estimates — each scenario assumes an 80% reduction in the named script's blocking contribution. Actual lift varies based on what Lighthouse then sees as the next bottleneck.

Defer or consent-gate Google Tag Manager (desktop)
+12
Today: 43 / 100 Projected: 55 / 100

Removing 80% of Google Tag Manager's 372ms blocking contribution drops TBT from 445ms to 147ms. Directional only — actual lift depends on which other scripts Lighthouse then sees as bottlenecks.

Defer or consent-gate Google Tag Manager (mobile)
+7
Today: 34 / 100 Projected: 41 / 100

Removing 80% of Google Tag Manager's 319ms blocking contribution drops TBT from 491ms to 235ms. Directional only — actual lift depends on which other scripts Lighthouse then sees as bottlenecks.

Template rollup

Median performance per template. Each template can be expanded to show the exact URLs audited — useful for tracing why a template is underperforming.

mobile

branded
43.0
3 URLs
LCP: 2487ms
INP: 89ms
CLS: —
category
96.0
25 URLs
LCP: 2487ms
INP: 89ms
CLS: —
home
71.0
1 URL
LCP: 1690ms
INP: 85ms
CLS: 0.02
other
96.0
6 URLs
LCP: 2487ms
INP: 89ms
CLS: —
product
96.0
65 URLs
LCP: 2487ms
INP: 89ms
CLS: —

desktop

branded
89.5
3 URLs
LCP: 2244ms
INP: 57ms
CLS: 0.05
category
100.0
25 URLs
LCP: 2244ms
INP: 57ms
CLS: 0.05
home
58.0
1 URL
LCP: 1546ms
INP: 49ms
CLS: 0.05
other
100.0
6 URLs
LCP: 2244ms
INP: 57ms
CLS: 0.05
product
100.0
65 URLs
LCP: 2244ms
INP: 57ms
CLS: 0.05
Which URLs were audited? Expand to see the full sample by template.

product (65 URLs)

Deep script inspection

Top scripts fetched directly and inspected for minification, compression, cache TTL, and stale library versions.

ScriptSizeMinified EncodingCache TTLVersionNotes
end/FlavourWarehouse/VampireVape/en_GB/FlavourWarehouse_Marketing/js/product/labels.min.js 0 KB yes gzip 30d healthy
10/frontend/FlavourWarehouse/VampireVape/en_GB/FlavourWarehouse_Marketing/js/labels.min.js 0 KB yes gzip 30d healthy
https://www.googletagmanager.com/gtm.js?id=GTM-WDR9M62 143 KB yes gzip 0d Cache-Control max-age is only 900s — users re-download on every visit. Aim for ≥1 year with a content hash in the filename.
https://www.googletagmanager.com/gtag/js?id=G-B0FRYP2L33&cx=c&gtm=4e64t1 162 KB yes gzip 0d Cache-Control max-age is only 900s — users re-download on every visit. Aim for ≥1 year with a content hash in the filename.
https://static.lipscore.com/assets/en/lipscore-v1.js 81 KB yes gzip healthy
https://www.googletagmanager.com/gtag/js?id=G-B0FRYP2L33&cx=c&gtm=4e64t1h1 162 KB yes gzip 0d Cache-Control max-age is only 900s — users re-download on every visit. Aim for ≥1 year with a content hash in the filename.
https://www.googletagmanager.com/gtag/destination?id=G-B0FRYP2L33&cx=c&gtm=4e64t1 162 KB yes gzip 0d Cache-Control max-age is only 900s — users re-download on every visit. Aim for ≥1 year with a content hash in the filename.
949-a465-e709abdeeb5e/cc.js?renew=false&referer=www.vampirevape.co.uk&dnt=false&init=false 78 KB yes gzip 0d Cache-Control max-age is only 1s — users re-download on every visit. Aim for ≥1 year with a content hash in the filename.
https://www.googletagmanager.com/gtag/destination?id=G-B0FRYP2L33&cx=c&gtm=4e64t1h1 162 KB yes gzip 0d Cache-Control max-age is only 900s — users re-download on every visit. Aim for ≥1 year with a content hash in the filename.
=f1ba143c-1f4b-4949-a465-e709abdeeb5e&implementation=gtm&consentmode-dataredaction=dynamic 27 KB yes gzip 0d Cache-Control max-age is only 314s — users re-download on every visit. Aim for ≥1 year with a content hash in the filename.
https://www.googletagmanager.com/gtag/js?id=G-B0FRYP2L33&cx=c&gtm=4e64u0h2 161 KB yes gzip 0d Cache-Control max-age is only 900s — users re-download on every visit. Aim for ≥1 year with a content hash in the filename.

All recommendations

  1. Fix srverror.com/styles.css immediately: this single stylesheet blocks render on 86% of mobile pages (65,823ms aggregate waste). Audit whether it is actually needed — the domain name suggests it may be an error-monitoring asset loaded incorrectly. If required, load it non-blocking using the pattern: <link rel='stylesheet' href='...' media='print' onload='this.media=\'all\''>. This is the highest ROI change on the entire site.
  2. Fix the Google Fonts render block: fonts.googleapis.com/css?family=Open+Sans blocks render on 86% of mobile pages (65,032ms aggregate). Replace the standard <link> with a preconnect + font-display:swap approach: add <link rel='preconnect' href='https://fonts.googleapis.com'> in <head>, then load the font stylesheet using the media='print' onload pattern to make it non-blocking.
  3. Audit and slim down GTM tags: Open GTM Preview and identify every tag set to fire on 'All Pages'. Tags for remarketing, heatmaps, chat widgets, and A/B testing tools should be scoped to specific page paths or event triggers instead. GTM is costing 218ms blocking time per mobile page load and 343ms on desktop — reducing the tag count firing on page load is projected to lift desktop scores by up to 12 points.
  4. Gate GTM initialisation behind consent: Change analytics and advertising tags inside GTM to use a 'Consent Initialization' trigger gated on analytics_storage=granted (analytics) or ad_storage=granted (ads). This prevents the GTM script payload from executing on cold loads for non-consenting users, reducing main-thread work by up to 414ms on mobile and 621ms on desktop.
  5. Defer or async Cookiebot: Cookiebot is adding 83ms of blocking time and 189ms of main-thread work on desktop. If it is loaded via GTM, add it as a tag with a 'Consent Initialization' trigger. If it is hard-coded in the HTML template, add the async and defer attributes to its <script> tag. Ensure it is placed as low in <head> as your compliance requirements allow.
  6. Eliminate remaining render-blocking resources for a further ~2,100ms FCP saving: A Lighthouse audit flags 2–3 additional render-blocking CSS and JS files delaying First Contentful Paint by 460–626ms per page. For each CSS file, apply the media='print' onload='this.media=\'all\'' non-blocking load pattern; for JS files, add the defer attribute. If any are injected via GTM tags, set document.write to false and apply consent triggers as above.

Findings

24 distinct finding types across 134 occurrences. Numeric variants of the same finding (e.g. "costs 867ms" vs "costs 698ms") are collapsed into one row with a range in the title.

Severity Finding Affected Recommendation
critical
third_party
desktop
Google Tag Manager costs 343–621ms blocking + varies main-thread on desktop
Rank #1 by blocking time on this page. Google Tag Manager transfers 299 KB and keeps the main thread busy for 621ms, delaying INP and TBT. It fires BEFORE consent according to the tracking audit — so …
www.vampirevape.co.uk GTM's own weight usually means a lot of tags. Run GTM Preview and look for tags firing on every page that could be scoped to specific events or URLs.
critical
third_party
mobile
Google Tag Manager costs 218–414ms blocking + varies main-thread on mobile
Rank #1 by blocking time on this page. Google Tag Manager transfers 299 KB and keeps the main thread busy for 414ms, delaying INP and TBT. It fires BEFORE consent according to the tracking audit — so …
www.vampirevape.co.uk GTM's own weight usually means a lot of tags. Run GTM Preview and look for tags firing on every page that could be scoped to specific events or URLs.
critical
third_party
desktop
Cookiebot costs 83–189ms blocking + varies main-thread on desktop
Rank #2 by blocking time on this page. Cookiebot transfers 141 KB and keeps the main thread busy for 189ms, delaying INP and TBT. It fires BEFORE consent according to the tracking audit — so it's degr…
www.vampirevape.co.uk Load Cookiebot with `async defer`, push it as late as safely possible, and if it's tag-manager-loaded, add a consent trigger. If it's not strictly needed for functionality, lazy-load on first interaction.
high
render_blocking
desktopmobile
2–3 render-blocking resources delay FCP by 202–1560ms
The top offenders: …sion1774449510/_cache/merged/4b99b28e82d75b2e19802a36528948d2.min.css (268ms); …rehouse/VampireVape/en_GB/FlavourWarehouse_Marketing/js/labels.min.js (268ms); …sion1774449510/_cach…
96 URLs
+46 more — see xlsx
Move non-critical CSS to preload + onload flip, or inline critical CSS for above-the-fold. For scripts, add `defer` (or `async` for independent scripts). If the file is first-party + required, consider HTTP/2 push or bundle it into the initial chunk.
high
third_party
desktop
Google Tag Manager costs 258–1036ms blocking + varies main-thread on desktop
Rank #1 by blocking time on this page. Google Tag Manager transfers 458 KB and keeps the main thread busy for 1036ms, delaying INP and TBT.
4 URLs
GTM's own weight usually means a lot of tags. Run GTM Preview and look for tags firing on every page that could be scoped to specific events or URLs.
high
third_party
mobile
Google Tag Manager costs 267–1014ms blocking + varies main-thread on mobile
Rank #1 by blocking time on this page. Google Tag Manager transfers 458 KB and keeps the main thread busy for 1014ms, delaying INP and TBT.
4 URLs
GTM's own weight usually means a lot of tags. Run GTM Preview and look for tags firing on every page that could be scoped to specific events or URLs.
high
lcp
mobile
LCP element takes 4652–5251ms to paint on mobile
LCP element snippet: `[LAZY_LOADED|NO_FETCHPRIORITY] <img width="1920" height="1080" style="aspect-ratio: auto 1920 / 1080" src="https://www.vampirevape.co.uk/media/.renditions/wysiwyg/hyva-theme-plac…
3 URLs
The LCP element is an image — the single most impactful fix is usually preloading it and serving it in AVIF/WebP at the exact display size.
high
render_blocking
desktopmobile
https://www.srverror.com/styles.css blocks render on 85–86%% of pages — 18393–65823ms aggregate wasted
×2 occurrences
Seen on 86/100 audited mobile pages.
sitewide This single file blocks render across most of the site. Defer it (add `defer`), preload it, or inline its critical portion. Biggest sitewide win per line-of-change you'll find.
high
render_blocking
desktopmobile
https://fonts.googleapis.com/css?family=Open+Sans blocks render on 85–86%% of pages — 17588–65032ms aggregate wasted
×2 occurrences
Seen on 86/100 audited mobile pages.
sitewide This single file blocks render across most of the site. Defer it (add `defer`), preload it, or inline its critical portion. Biggest sitewide win per line-of-change you'll find.
high
third_party
desktop
Google Tag Manager — 2599ms aggregate blocking across the audit (desktop)
Google Tag Manager appears on 8/100 pages (8%). Mean blocking per page: 324ms. Total main-thread time: 4732ms. Transfer: 3031KB sitewide. Fires BEFORE consent on pages with a CMP — degrading experienc…
sitewide Because Google Tag Manager is on most of the site, fixing it once yields a sitewide lift. Move it behind a consent trigger, defer until user interaction, or switch to server-side tagging if it supports it.
high
third_party
mobile
Google Tag Manager — 2222ms aggregate blocking across the audit (mobile)
Google Tag Manager appears on 7/100 pages (7%). Mean blocking per page: 317ms. Total main-thread time: 4054ms. Transfer: 2734KB sitewide. Fires BEFORE consent on pages with a CMP — degrading experienc…
sitewide Because Google Tag Manager is on most of the site, fixing it once yields a sitewide lift. Move it behind a consent trigger, defer until user interaction, or switch to server-side tagging if it supports it.
high
unused_js
desktopmobile
3941KB unused JavaScript from www.googletagmanager.com across 12 URLs
Top files: /gtag.js/js (65KB / 41%); /assets/en/lipscore-v1.js (62KB / 76%); /gtm.js (60KB / 43%); /f1ba143c-1f4b-4949-a465-e709abdeeb5e/cc.js (25KB / 24%); /uc.js (22KB / 64%). Every KB of JS costs netw…
12 URLs
Tree-shake or code-split these bundles. For third-party, check whether you can import subsets (e.g. lodash → lodash-es per-method). For first-party, consider dynamic imports on the routes that actually need them.
medium
render_blocking
desktop
2–3 render-blocking resources delay FCP by 202–323ms
The top offenders: …sion1774449510/_cache/merged/4b99b28e82d75b2e19802a36528948d2.min.css (121ms); …rehouse/VampireVape/en_GB/FlavourWarehouse_Marketing/js/labels.min.js (121ms); …sion1774449510/_cach…
3 URLs
Move non-critical CSS to preload + onload flip, or inline critical CSS for above-the-fold. For scripts, add `defer` (or `async` for independent scripts). If the file is first-party + required, consider HTTP/2 push or bundle it into the initial chunk.
medium
third_party
desktop
Google Tag Manager costs 100–455ms blocking + varies main-thread on desktop
Rank #1 by blocking time on this page. Google Tag Manager transfers 458 KB and keeps the main thread busy for 455ms, delaying INP and TBT.
3 URLs
GTM's own weight usually means a lot of tags. Run GTM Preview and look for tags firing on every page that could be scoped to specific events or URLs.
medium
third_party
mobile
Google Tag Manager costs 145–435ms blocking + varies main-thread on mobile
Rank #1 by blocking time on this page. Google Tag Manager transfers 300 KB and keeps the main thread busy for 435ms, delaying INP and TBT.
2 URLs
GTM's own weight usually means a lot of tags. Run GTM Preview and look for tags firing on every page that could be scoped to specific events or URLs.
medium
cwv_lab
mobile
Mobile LCP runs 1.6–10.2ss–86s slower than desktop on varies URLs
A large mobile-vs-desktop LCP gap usually indicates mobile-specific issues: larger hero image being served on mobile, JS bundles not being split by device class, or slow 4G network simulation exposing…
86 URLs
+36 more — see xlsx
Audit the `<picture>` source served on mobile, check if the JS bundle has mobile-specific code paths gated behind expensive conditions, and verify the CDN's mobile edge is healthy.
medium
unused_js
Script health: https://www.googletagmanager.com/gtm.js?id=GTM-WDR9M62
Cache-Control max-age is only 900s — users re-download on every visit. Aim for ≥1 year with a content hash in the filename.
sitewide Address the specific issues flagged: produce a minified build, enable compression, extend cache-TTL with a filename hash, and upgrade deprecated libraries.
medium
unused_js
Script health: https://www.googletagmanager.com/gtag.js/js?id=G-B0FRYP2L33&cx=c&gtm=4e64t1
Cache-Control max-age is only 900s — users re-download on every visit. Aim for ≥1 year with a content hash in the filename.
sitewide Address the specific issues flagged: produce a minified build, enable compression, extend cache-TTL with a filename hash, and upgrade deprecated libraries.
medium
unused_js
Script health: https://www.googletagmanager.com/gtag.js/js?id=G-B0FRYP2L33&cx=c&gtm=4e64t1h1
Cache-Control max-age is only 900s — users re-download on every visit. Aim for ≥1 year with a content hash in the filename.
sitewide Address the specific issues flagged: produce a minified build, enable compression, extend cache-TTL with a filename hash, and upgrade deprecated libraries.
medium
unused_js
Script health: ttps://www.googletagmanager.com/gtag.js/destination?id=G-B0FRYP2L33&cx=c&gtm=4e64t1
Cache-Control max-age is only 900s — users re-download on every visit. Aim for ≥1 year with a content hash in the filename.
sitewide Address the specific issues flagged: produce a minified build, enable compression, extend cache-TTL with a filename hash, and upgrade deprecated libraries.
medium
unused_js
Script health: 709abdeeb5e/cc.js?renew=false&referer=www.vampirevape.co.uk&dnt=false&init=false
Cache-Control max-age is only 1s — users re-download on every visit. Aim for ≥1 year with a content hash in the filename.
sitewide Address the specific issues flagged: produce a minified build, enable compression, extend cache-TTL with a filename hash, and upgrade deprecated libraries.
medium
unused_js
Script health: ps://www.googletagmanager.com/gtag.js/destination?id=G-B0FRYP2L33&cx=c&gtm=4e64t1h1
Cache-Control max-age is only 900s — users re-download on every visit. Aim for ≥1 year with a content hash in the filename.
sitewide Address the specific issues flagged: produce a minified build, enable compression, extend cache-TTL with a filename hash, and upgrade deprecated libraries.
medium
unused_js
Script health: 1f4b-4949-a465-e709abdeeb5e&implementation=gtm&consentmode-dataredaction=dynamic
Cache-Control max-age is only 314s — users re-download on every visit. Aim for ≥1 year with a content hash in the filename.
sitewide Address the specific issues flagged: produce a minified build, enable compression, extend cache-TTL with a filename hash, and upgrade deprecated libraries.
medium
unused_js
Script health: https://www.googletagmanager.com/gtag.js/js?id=G-B0FRYP2L33&cx=c&gtm=4e64u0h2
Cache-Control max-age is only 900s — users re-download on every visit. Aim for ≥1 year with a content hash in the filename.
sitewide Address the specific issues flagged: produce a minified build, enable compression, extend cache-TTL with a filename hash, and upgrade deprecated libraries.