Skip to main content
GrN.dk

Main navigation

  • Articles
  • Cases
  • Contact
  • Your Digital Project Manager
  • About Greg Nowak
  • Services
  • Portfolio
  • Container
    • Excel Freelancer
    • Kubuntu - tips and tricks
    • Linux Apache MySQL and PHP
    • News
    • Image Gallery
User account menu
  • Log in

Breadcrumb

  1. Home

WordPress PageSpeed: What to Fix First for Better Core Web Vitals

By Greg Nowak. Last updated 2026-07-14.

A fast WordPress site is an operating advantage, not a trophy score

A PageSpeed score is useful only when it helps you decide what to fix. For business owners, the real questions are whether priority pages load quickly, forms respond promptly, and releases stop reintroducing problems. Agencies need to separate template, plugin, hosting, and third-party issues before budget disappears into random optimisation work.

Start with pages that support enquiries, bookings, sales, or search traffic. Test one representative URL for each important template: a service page, campaign landing page, article, category page, and any form or product flow. A slow shared template can affect hundreds of URLs; fixing it is usually more valuable than polishing the homepage in isolation.

Read PageSpeed Insights without chasing the wrong number

PageSpeed Insights shows two forms of evidence. Lighthouse lab data is a controlled test of the URL now, so it helps diagnose a release. Field data comes from real Chrome users over a trailing 28-day period. It can lag behind a fix, fall back from URL to origin-level data, or be unavailable when traffic is too low.

Core Web Vitals are assessed at the 75th percentile. The current “good” limits are LCP at 2.5 seconds or less, INP at 200 milliseconds or less, and CLS at 0.1 or less. Lighthouse cannot directly measure INP because a synthetic load has no real interaction; use Total Blocking Time as a lab clue, then confirm INP in field data. Run mobile tests, compare the same URLs under similar conditions, and trust repeated evidence over one unusually good or bad run.

What you see Likely first suspect First practical move
Poor LCP Hero image, slow HTML, or render-blocking CSS Identify the LCP element and inspect when it is discovered, downloaded, and rendered
Poor INP or high lab TBT Long JavaScript tasks and third-party tools Remove, defer, or conditionally load scripts before adding more optimisation plugins
Poor CLS Images, embeds, banners, or fonts without reserved space Set dimensions and reserve layout space before content arrives
Slow TTFB Missing page cache, slow PHP, database work, or hosting limits Verify cache behaviour, then profile server-side work on an uncached request
A triage matrix for choosing the first investigation, not a substitute for measuring the affected template.

Fix the largest visible bottleneck first

On many WordPress sites, the LCP element is the hero image or heading. Make the hero image discoverable in the initial HTML, with a real src or srcset. Do not lazy-load it. If it is likely to be the LCP element, give it high fetch priority and include intrinsic dimensions:

<img src="/images/service-hero.webp"
     srcset="/images/service-hero-800.webp 800w, /images/service-hero.webp 1600w"
     sizes="100vw" width="1600" height="900"
     fetchpriority="high" alt="Team reviewing a WordPress performance report">

If the LCP image is hidden in a CSS background or otherwise missing from the initial HTML, preload that specific asset:

<link rel="preload" as="image" href="/images/service-hero.webp"
      type="image/webp" fetchpriority="high">

Preload is targeted, not a setting for every image. Competing high-priority resources can cancel the benefit. Compress and resize the asset, but also check the network waterfall: a small image discovered late can still produce poor LCP.

For CLS, add width and height to images, reserve space for embeds and consent banners, and avoid inserting notices above content after rendering begins. For fonts, use a sensible fallback and load only the weights the design needs.

Treat scripts and page builders as a portfolio

A visually simple Elementor or block-editor page can still load assets from the theme, builder addons, forms, chat, reviews, analytics, consent software, heatmaps, and tag management. Inventory requests by owner and page. Ask what must run before the visitor can read or act, what can wait, and what belongs only on selected templates.

Removal usually beats minification. Disable unused widgets and animation libraries, unload page-specific assets where the implementation permits it, and delay non-essential integrations without breaking consent or attribution. Test menus, forms, filters, and checkout steps after each change; INP problems often live in interactions that a load-only score cannot reproduce.

Use caching in the right order

For a mostly public WordPress site, verify full-page caching first. Confirm that anonymous repeat requests reach the intended cache layer, while logged-in, personalised, cart, and checkout responses follow the right exclusions. Persistent object caching is different: it helps database-heavy or dynamic requests by reusing results across requests, but it requires a cache service and plugin supported by the host.

A CDN can shorten delivery for distributed visitors and static media, and some services provide full-page edge caching. It will not repair a theme that generates slow HTML or ships excessive JavaScript. Diagnose origin and browser work before treating a CDN as the answer.

Keep database cleanup in the maintenance lane

Expired transients and table maintenance are legitimate housekeeping, especially on an older installation, but they rarely fix image-led LCP or script-led INP. Back up first, use staging where practical, and run database work in an appropriate maintenance window:

wp transient delete --expired
wp db optimize
wp cache flush

The first command removes expired transients; the second runs database optimisation through WP-CLI's database tooling. The cache flush is deliberately last because it clears the object cache. On WordPress multisite with persistent object caching, it will typically flush the cache for all sites and can cause a production performance hit. Use it for a known reason, not as a ritual.

Make performance part of release ownership

Keep a small benchmark set of business-critical URLs and check it after theme changes, plugin updates, new tracking, or hosting moves. Record the LCP element, major script owners, cache status, and mobile lab results before and after release. Then watch field data over the following weeks; a green lab run on launch day is evidence of a good build, not proof of the real-user outcome.

Give every new plugin or third-party widget an owner, a business purpose, and a defined set of pages. That discipline prevents a performance project from becoming a recurring cleanup exercise.

If you need someone to turn mixed PageSpeed reports, hosting advice, and agency constraints into an ordered delivery plan, Greg can review the stack, identify the highest-value fixes, and coordinate the work with your developers and marketing team. Talk to Greg about a practical WordPress performance plan.

Related on GrN.dk

  • Critical CSS for Faster Pages: When It Helps and When It Does Not
  • Why Your Website's Third-Party Stack Needs a Real Owner
  • WordPress Speculative Loading Needs a Cart, Analytics, and Cache Test

Need help with this kind of work?

Talk to Greg about WordPress performance Get in touch with Greg.

Sources

  • About PageSpeed Insights
  • Web Vitals
  • Optimize Largest Contentful Paint
  • WordPress Optimization Handbook
  • WP-CLI: wp cache flush
Last modified
2026-07-14

Tags

  • wordpress
  • PageSpeed
  • Core Web Vitals
  • website performance

Review Greg on Google

Greg Nowak Google Reviews

 

Illustrated infographic summarizing: Shorter TLS certificates expose every renewal you never automated
Shorter TLS certificates expose every renewal you never automated
2026-07-26

Shorter TLS lifetimes leave less room for manual handoffs and faulty deploy hooks. Build a renewal path that protects service availability.

Illustrated infographic summarizing: One Timeout, Two Orders: Make AI Actions Safe to Retry
One Timeout, Two Orders: Make AI Actions Safe to Retry
2026-07-25

A timed-out AI action may already have succeeded. Stable keys, durable ledgers, queues and stored results prevent a routine retry from duplicating real work.

Illustrated infographic summarizing: Your AI Visibility Dashboard Needs a Methodology, Not More Charts
Your AI Visibility Dashboard Needs a Methodology, Not More Charts
2026-07-24

A practical framework for measuring AI-search visibility with fixed prompts, repeated tests, separate metrics, retained evidence, and honest reporting.

Illustrated infographic summarizing: AI Admin APIs Are Here—But Your Directory Is Still the Source of Truth
AI Admin APIs Are Here—But Your Directory Is Still the Source of Truth
2026-07-23

New AI admin APIs can automate access and spend controls, but reliable governance still starts with authoritative directory data and clear ownership.

Illustrated infographic summarizing: OpenAI Presence Arrived—But Is Your Workflow Ready for an Agent?
OpenAI Presence Arrived—But Is Your Workflow Ready for an Agent?
2026-07-22

Before an AI agent can take on real work, its workflow needs clear scope, permissions, handoffs, evaluation cases, and production monitoring.

Illustrated infographic summarizing: Chatbot Transcripts Quietly Became a Retention and Redaction Problem
Chatbot Transcripts Quietly Became a Retention and Redaction Problem
2026-07-21

Chatbot transcripts spread across providers, logs and support tools. Here is how to map each copy, redact sensitive data and test deletion properly.

Illustrated infographic summarizing: Cloudflare Service Keys Stop in September: Find Every Caller
Cloudflare Service Keys Stop in September: Find Every Caller
2026-07-20

Cloudflare Service Keys stop working on September 30, 2026. Here is how to find every caller, move to scoped API tokens and avoid a late outage.

Illustrated infographic summarizing: Your AI Workflow Needs an Acceptance Test Before It Meets Customers
Your AI Workflow Needs an Acceptance Test Before It Meets Customers
2026-07-19

A practical way to test AI workflows using realistic scenarios, tool checks, human rubrics, regression suites, and clear release gates.

Three cover candidates for The Goats Were Load-Bearing fanned on a dark background: an ember-lit door, three slow knocks, and a founders' ledger
The Goats Were Load-Bearing: a fantasy where the bill always comes due
2026-07-19

A teaser for the upcoming darkly comic fantasy novel The Goats Were Load-Bearing — a village, a door that must stay poor, and the worst possible time to sell the herd. Readers pick the cover.

Vegan Power game: the yellow player catches falling fruit while a chicken and a cow look on
Vegan Power: The Little Game About Eating Fruit, Not Friends
2026-07-19

Vegan Power is a free browser game where you catch fruit, dodge the animals, protect seven hearts, and chase a better high score.

More articles
RSS feed

GrN.dk web platforms, web optimization, data analysis, data handling and logistics.