Trim the Payload: A Repeatable Elementor Pro Speed Audit for UK Sites
Photo: web performance audit dashboard laptop UK office Core Web Vitals, via thumbs.dreamstime.com
A 4 MB homepage is not a networking problem. It is a decision problem. Elementor Pro gets blamed for pages that were assembled like a skip, not designed like a system. On a recent Bristol membership site, the audit took the homepage from 2.9 MB to 0.9 MB and mobile LCP from 3.8s to 1.8s without swapping the builder. The biggest wins were not exotic: one icon library instead of three, a static hero instead of a five-slide carousel, and global styles that stopped every heading widget carrying its own font stack.
That is the pattern across UK client sites. The builder is rarely the whole story. The payload is usually a pile of small decisions: a slider here, a font weight there, an addon pack that loads CSS on every page because one widget is used on the contact page.
Where the weight comes from
The usual suspects are boringly consistent. Font icon libraries are near the top: Font Awesome and eicons loaded in full for a handful of icons. Unused widgets and addon packs come next. Every addon that registers widgets can enqueue CSS and JavaScript, and Elementor does not always know which pages need which assets. Heavy sliders are another repeat offender. A hero carousel with three 2000px background images will cost more than most of the rest of the page. Then there is global style drift: per-widget typography and colour overrides that create a large, specific CSS file and make every new section a fresh set of exceptions.
Images and fonts finish the job. PNG hero images, background images without srcset, four weights of a Google font loaded from a third-party domain, and LCP images marked lazy. None of these are Elementor problems in isolation. They are build habits.
The audit sequence
Start with field data, not vibes. Run PageSpeed Insights for the origin and note the CrUX LCP, INP and CLS. Then run WebPageTest from London with a mobile profile, cold cache and a capped connection. Lighthouse in Chrome is fine for a quick pass, but the waterfall is where the story is.
- Open the Network panel and sort by transfer size. Write down the top ten assets. You will usually find the icon font, two or three images, the Elementor CSS bundle, a slider script and a tag manager container.
- Check render-blocking CSS and JavaScript. Look for font files loading from a third-party domain and for scripts that could be deferred.
- Go to Elementor settings and experiments. Enable improved asset loading and improved CSS loading if the site is stable with them. Enable inline font icons if the site uses icons. Disable widgets and addon elements the site does not use.
- Audit global styles. Open Site Settings and compare typography and colours with what individual widgets are doing. If twenty headings have local overrides, the global styles are not doing their job.
- Run the image pipeline. Serve AVIF or WebP, set correct dimensions, use srcset, lazy-load below-fold images, and remove lazy loading from the LCP image. Add fetchpriority high to the hero image where appropriate.
- List every third-party script. Tag manager, chat, reviews, cookie banner, heatmaps. Ask which ones are needed on first load and which can wait for interaction or consent.
- Re-test on a cold cache. Compare lab data with field data, but do not expect them to match exactly. Field data is the truth; lab data is the debugger.
Before and after: UK lab examples
These are cold-cache mobile lab results from recent UK builds. Field data will vary by device, network and consent state, but the direction is consistent.
| Site type | Payload before | Payload after | LCP before | LCP after | INP before | INP after | | Manchester B2B services | 4.1 MB | 1.2 MB | 4.6 s | 2.0 s | 280 ms | 110 ms | | Leeds ecommerce category | 3.6 MB | 1.5 MB | 4.1 s | 2.3 s | 320 ms | 140 ms | | Bristol membership homepage | 2.9 MB | 0.9 MB | 3.8 s | 1.8 s | 210 ms | 90 ms |
The pattern is not magic. The Manchester site dropped a full Font Awesome load, two unused addon packs and a background video. The Leeds category page replaced a product carousel with a grid and stopped loading a second copy of jQuery from a plugin. The Bristol site moved from nested sections to containers, cut four font weights to two, and replaced a slider with a static image and CSS.
Quick wins that keep Elementor Pro
Disable Font Awesome and eicons if the site does not use them. Use inline SVG for the handful of icons that remain. If the site does need an icon library, load only the subset. Check Elementor's font icon settings and confirm the experiment is doing what you expect.
Replace hero sliders with a static image, a short video with a poster frame, or a CSS-only crossfade. If the client insists on a carousel, keep it to two or three slides, compress the images properly, and do not load a second slider library.
Consolidate global styles. Set typography, colours and spacing in Site Settings, then remove per-widget overrides. This reduces CSS and makes the next page faster to build. Use containers rather than deep section-column nesting. A shallower DOM helps INP and makes responsive editing less painful.
Self-host fonts in WOFF2 and limit weights. Two weights are often enough for a service site; three is usually the ceiling. Use font-display: swap and preload only the font used above the fold.
For hosting, choose a UK-friendly stack: a host with LiteSpeed or NGINX, PHP 8.3 or newer, full-page caching and object caching. Put a CDN with UK edge presence in front, such as Cloudflare or Bunny, and enable Brotli and HTTP/3. UK-focused hosts such as Krystal or 20i are common choices, but the configuration matters more than the logo. Test from London and Manchester, not just from your office in Shoreditch.
Finally, audit on a schedule. A site that was fast at launch can put on a megabyte after three campaigns, a chat widget and a reviews plugin. A quarterly payload check is cheaper than a redesign.