WordPress speed optimization takes more than installing a caching plugin. Measurements first establish whether slowness starts at the server, in themes and plugins, or in images, fonts, and scripts sent to the browser. Without finding the cause, a setting may fix one issue while breaking another page. Optimization therefore follows a cycle of measuring, correcting, and measuring again.
This guide explains Google’s Core Web Vitals metrics and thresholds, how to read PageSpeed Insights results, the main causes of slowness, and their fixes. It draws on web.dev, PageSpeed Insights documentation, and WordPress developer performance recommendations. Work is carried out from Maltepe Gülsuyu; meetings with Istanbul businesses can be in person or online, and sites in other cities are handled remotely.
Video transcript
How is WordPress speed optimized? Measurements identify whether slowness begins at the server, plugins, or files, followed by fixes and new measurements. Google measures real user experience with three metrics: LCP for loading, INP for responsiveness, and CLS for visual stability. The service includes baseline measurements, server and PHP adjustments, plugin and database cleanup, image conversion, caching and deferral settings, functional tests, and comparative reporting. Measurement and backup come first. Server settings, plugins, images, and caching are improved; forms and the cart are tested before before-and-after results are shared. There is no fixed rate. Quotes depend on the theme and page builder, plugin count, image library, WooCommerce or multilingual features, and hosting access. Scope and quote information are on the page. A three-person team with over eight years of experience. Send a slow page through WhatsApp. Onur Freelance dot com.
Let’s measure your slow page together
Send the page address and whether the problem occurs on mobile or desktop through WhatsApp for an initial measurement. Recommended tasks and a quote are provided the same day.
WordPress speed optimization at Onur Freelance: key details
- Getting started: Share the affected page and device for an initial measurement; recommended tasks and a quote are provided the same day.
- Measurement: Core Web Vitals thresholds for LCP, INP, and CLS; PageSpeed Insights scores and real user data are assessed separately.
- Team: Founder Onur Ertem, with over 8 years of experience in web design and digital marketing, and two digital marketing specialists. Discussions take place directly with the team doing the work, without an intermediary account representative.
- Location: Maltepe (Gülsuyu), Istanbul. Work is performed remotely; face-to-face meetings in Istanbul are available by appointment.
- Google reviews: A 5.0 rating on Google Business Profile from 217 reviews.
WordPress loads slowly: which layer is responsible?
Slowness usually starts in one of three layers: the server’s page generation time, themes and plugins running in WordPress, or files downloaded and processed by the browser. Symptoms provide initial clues. The following mapping supports preliminary assessment before measurement:
| Symptom | Possible cause | Relevant measurement |
|---|---|---|
| The page stays white for a long time, then appears at once | Server response time, missing cache, slow database queries | TTFB and LCP |
| Text appears, but the large image or slider arrives late | Uncompressed images or a late-loading main image | LCP |
| Menus or buttons respond slowly to taps | Heavy JavaScript or numerous third-party scripts | INP |
| Content shifts downward while reading | Images without dimensions, late fonts, or banners inserted afterward | CLS |
| The dashboard is also slow | Hosting resources, outdated PHP, a bloated database, or a heavy plugin | Server-side review |
When only the front end is slow and the dashboard is fast, browser-delivered files are usually responsible. If the dashboard is also slow, the server and database are reviewed first.
What are Core Web Vitals? LCP, INP, and CLS thresholds
Core Web Vitals are Google’s three metrics for real user experience in loading, responsiveness, and visual stability. Google’s web.dev Core Web Vitals page defines good, needs improvement, and poor thresholds as follows:
| Metric | What does it measure? | Good | Needs improvement | Poor |
|---|---|---|---|---|
| LCP (Largest Contentful Paint) | Time for the largest visible image or text block to appear | 2.5 seconds or less | 2.5–4 seconds | Over 4 seconds |
| INP (Interaction to Next Paint) | Time between a click, tap, or key press and the next screen update | 200 ms or less | 200 – 500 ms | Over 500 ms |
| CLS (Cumulative Layout Shift) | Unexpected content movement during loading and use | 0.1 or less | 0.1–0.25 | Over 0.25 |
Google recommends evaluating these thresholds at the 75th percentile of page loads, separately for mobile and desktop, aiming for most visits to remain below them. INP replaced FID as a stable Core Web Vitals metric in 2024. Scrolling and hovering are excluded from INP.
Page contents
PageSpeed Insights scores versus real user data
PageSpeed Insights shows two data types: field data collected from real Chrome users over the past 28 days, and laboratory data generated by Lighthouse on a simulated device. Core Web Vitals assessments use field data; the 0–100 performance score comes from the laboratory test.
Google’s documentation considers scores of 90 or above good, 50–89 in need of improvement, and below 50 poor. Laboratory scores can vary by several points between tests and cannot capture every real-world bottleneck. Reports are reviewed particularly for:
- Field data summary: Whether real visitors pass the three metrics.
- LCP element: Which image or text block is the largest content element and how late it appears.
- Render-blocking resources: CSS and JavaScript delaying the initial view.
- Server response time: When the HTML document’s first byte arrives.
Low-traffic pages may have no field data; decisions then use laboratory measurements and Search Console’s Core Web Vitals report.
This is why no specific speed score is promised. The aim is to move all three field metrics toward good thresholds and reduce delays visitors experience.
Image optimization: WebP, AVIF, and appropriate dimensions
Images most commonly delay LCP on WordPress sites, since the largest element is often a cover image or slider frame. WordPress added WebP upload support in version 5.8 and AVIF in 6.5; AVIF requires support from the server’s image-processing library. Image optimization includes:
- Format conversion: JPEG and PNG files are served as WebP or AVIF according to browser support, with fallback formats retained for older browsers.
- Appropriate display dimensions: A 4000-pixel photo displayed in a 400-pixel area is reduced, and WordPress’s generated sizes (srcset) are configured correctly.
- Prioritize the main image: The visible LCP image is excluded from lazy loading and loaded with priority.
- Below-the-fold images: Images and iframes lower on the page load as visitors scroll.
- Width and height: Every image receives dimensions to prevent content movement during loading and reduce CLS.
CSS background images can also be LCP elements. This common page builder pattern is reviewed separately.
Caching layers: page, object, and opcode
Caching prevents WordPress from rebuilding the same page with PHP and database queries for every visit. WordPress’s performance optimization documentation notes that caching offers the largest gains with the least effort and describes three layers.
Page caching stores a static copy for subsequent visitors. Persistent object caching, such as Redis or Memcached, holds database query results in memory, especially helping uncached dashboard and cart pages on WooCommerce and membership sites. Opcode caching (OPcache) prevents PHP code from being recompiled for every request.
Incorrect caching can expose one visitor’s cart to another or hide updated content. Excluding cart, checkout, and account pages is essential. When a server offers its own cache, such as LiteSpeed, a single page cache system is selected to prevent conflicts.
Let’s measure first, then improve speed
Share PageSpeed Insights results, hosting details, and the plugin list to identify the layer responsible and prioritize improvements.
Plugin bloat and page builder overhead
The amount of code each plugin loads on each page matters more than the plugin count. A form or slider used on one page may add scripts everywhere. WordPress documentation recommends deactivating and deleting unused plugins and measuring server performance while disabling plugins individually.
Each plugin is reviewed with these questions:
- Is it actually used, or left over from a trial?
- Does another plugin or theme feature do the same job?
- Does it load code only where needed, or on every page?
- Does it add database settings or tables read on every page load?
Overlapping security, SEO, or caching plugins slow the site and increase conflict risks.
Numerous nested sections and columns in page builders enlarge the DOM tree the browser processes. Heavy animations, hidden but loaded mobile sections, and site-wide pop-ups are also reviewed.
Server-side factors: hosting, PHP, and the database
If the server generates pages slowly, front-end improvements have limited effect. WordPress.org’s server requirements page recommends PHP 8.3 or later at the time of writing and warns that end-of-life versions such as PHP 7.4 may create security risks. Theme and plugin compatibility is tested on a copy before upgrading.
Database cleanup removes accumulated revisions, spam and trashed comments, expired transients, and tables left by deleted plugins. WordPress documentation particularly highlights reducing autoloaded options read on every page load. A full backup is always taken first.
Software changes may be insufficient when a site hits shared hosting resource limits. If a more suitable server is needed, migration is planned through the WordPress website migration service, and speed work is completed on the new server.
Deferring fonts, CSS, and JavaScript
Before drawing the initial view, browsers must download and process certain CSS and JavaScript files. Larger and more numerous files delay rendering. Deferral prioritizes what the first screen requires and postpones the rest.
Most JavaScript is configured with defer to run after page parsing; third-party chat widgets, maps, and social embeds can wait until interaction. Reducing long-running scripts directly improves INP. Unused CSS is removed and critical first-screen styles prioritized.
Unused font weights are removed, fonts are served locally where possible, and font-display is configured to prevent invisible text while fonts load. Fallback font dimensions are considered because late fonts can reflow text and cause CLS. Deferral is tested page by page, since incorrect script order can break menus or forms.
WordPress speed optimization step by step
The process begins and ends with measurement so each change’s effect can be identified. Every step is backed up and, where possible, tested on a copy first:
- Baseline measurement: Measure the homepage, the most visited service or product page, and the blog template on mobile and desktop; review Search Console’s Core Web Vitals report.
- Full backup: Back up files and the database, keeping rollback available.
- Server and PHP: Adjust the PHP version, OPcache, memory limits, and server response time.
- Plugins and database: Remove unused plugins and clean the database.
- Images: Convert the existing library and adjust dimensions and the LCP image.
- Caching and deferral: Configure page caching, CSS/JS deferral, and fonts.
- Functional tests: Test forms, cart, checkout, menus, and mobile layout individually.
- Comparative report: Share before-and-after results side by side; monitor field data changes in Search Console over the following weeks.
Because field data covers the past 28 days, improvements take time to fully appear in the Core Web Vitals report.
Installing a plugin versus measurement-based optimization
WordPress optimization often stops at installing a caching or speed plugin and enabling every option. This may temporarily raise laboratory scores, but blindly deferring all scripts can break forms, caching carts can show incorrect information, and the server response bottleneck may remain.
Measurement-based work identifies the responsible layer first, applies fixes individually, and measures each effect. Changes are documented for the owner so their purpose remains clear when plugins are added or themes updated later.
Speed is only one factor affecting search visibility. Crawling, indexing, and site structure issues are handled separately through technical SEO services.
What does speed optimization include, and what affects the fee?
Onur Freelance’s WordPress speed service includes baseline measurements, server and PHP adjustments, plugin and database cleanup, image conversion, caching, CSS/JS/font deferral, functional tests, and comparative reporting. No specific PageSpeed score or ranking is guaranteed; every action and measurement is shared clearly.
Fees vary with site structure, so a firm quote follows review rather than a fixed rate. Main factors include:
- Theme and page builder, number of pages and templates
- Plugin count and overlapping functionality
- Image library size and the number of files to convert
- WooCommerce, membership, or multilingual features that complicate caching
- Hosting access and whether server-side changes are possible
For a planned new site, speed can be incorporated from the start, as explained on the SEO-friendly web design page. To retain improvements through updates and new plugins, ongoing checks can continue through WordPress maintenance and updates. If slowness stems from an error or plugin conflict, it is investigated through WordPress troubleshooting.
Let’s clarify the optimization scope
Send the site address and your priority pages for a preliminary review, recommended priorities, and a quote. Messages are answered between 9:00 a.m. and 9:00 p.m.
Frequently asked questions
Why does my WordPress site load slowly?
Common causes are slow server page generation, too many or heavy plugins, uncompressed images, or CSS and JavaScript blocking the initial view. PageSpeed Insights and server-side measurements identify their impact.
What are good Core Web Vitals values?
Google’s web.dev defines good as LCP of 2.5 seconds or less, INP of 200 milliseconds or less, and CLS of 0.1 or less. Assessment uses the 75th percentile of page loads, separately for mobile and desktop.
Can PageSpeed scores exceed 90?
Many sites can improve substantially, but no specific score is guaranteed. Laboratory scores vary between tests; the main goal is good LCP, INP, and CLS in real user data.
Should I use WebP or AVIF?
Both modern formats offer smaller files than JPEG and PNG. WordPress supports AVIF from version 6.5, but the server’s image-processing library must also support it. Otherwise, WebP is used.
Which PHP version is needed for speed optimization?
At the time of writing, WordPress.org recommends PHP 8.3 or later. Theme and plugin compatibility is tested on a copy before upgrading.
Is installing a caching plugin enough?
Caching offers substantial gains but may be insufficient alone. Server response time, large images, heavy plugins, and deferral settings also need attention or some metrics may remain poor.
When will optimization results appear?
Laboratory changes appear immediately after the work. Search Console’s Core Web Vitals report uses the past 28 days of real user data, so full improvements take several weeks to appear.
How is WordPress speed optimization priced?
Pricing depends on the theme and page builder, plugin count, image library size, WooCommerce or multilingual features, and server access. A firm quote follows a site review.