WORDPRESS: New Speculation Plugin Ruins Core Web Vitals

75 views
Skip to first unread message

Jan R

unread,
Apr 22, 2026, 6:58:09 PMApr 22
to Chrome UX Report (Discussions)
Hey Team, I found that the Wordpress Speculation Plugin does the following: It prerenders pages that might be clicked. BUT: Obviously the pretender is gapping slowly NOT reflecting real rendering. Consequently the LCP and even worse the CLS jumped in direction of needs improvement. In reality Cloudflare and Argon are delivering fast so the CLS is NOT happening within a threshold time and Pagespeed CrUX does not count this als CLS. So Our values worsened Feb-> March. Deactivating the Plugin and all went back to normal. So this is something stupid. The Speculation is helpful for UX but CrUX is counting this rendering against us. So can CrUX please EXCLUDE the speculative pre-render performance? Thank you!

Barry Pollard

unread,
Apr 23, 2026, 6:06:36 AMApr 23
to Chrome UX Report (Discussions), janpierr...@gmail.com
I'm afraid we need a lot more details here.

I work on both CrUX and Speculation Rules and also helped with the WordPress Speculative Loading plugin and it's subsequent implementation in WordPress core. Speculation Rules does usually improve performance if implemented correctly (i.e. not over used) and I've see those improvements reflected in LCP and CLS numbers in CrUX.

We also do not want to exclude things that improve performance by the user — the whole point of the Chrome User Experience Report is to measure the User Experience as much as possible.

Jan R

unread,
Apr 23, 2026, 9:15:39 AMApr 23
to Chrome UX Report (Discussions), barryp...@google.com, Jan R

Hi Barry,

Thank you for looking into this. Here is the full context with timeline and data.

Our setup: globotur.de is a WordPress site (theme: dfd-native off the shelf with tons of unused css/js) with WP Rocket cache and Cloudflare Argo Smart Routing. The site has some inherent layout shift sources due to a difficult template. With Argo + WP Rocket cache, these shifts have been fast enough that field CLS stayed around 0.02.

What changed (verified from server logs):

  • Mar 11: WordPress updated to 6.9.4 (includes Speculation Rules integration)
  • Mar 23: WP Rocket updated from 3.20.5 to 3.20.6.1
  • The Speculation Rules plugin was active with: {"prerender": [{"source":"document", "eagerness":"moderate"}]}

What we observed in CrUX (Search Console, origin level, p75):

  • Before March: CLS stable at ~0.02
  • After Mar 11: CLS starts climbing to ~0.03
  • After Mar 23: CLS accelerates to ~0.08-0.10
  • Lab tests (PageSpeed Insights Lighthouse): CLS consistently 0.00-0.01

What we did:

  • Apr 04: Deactivated the speculation-rules plugin, cleared WP Rocket cache
  • Within days the CLS trend reversed (see attached chart showing the drop)

The key observation:

The lab vs. field discrepancy is what led us to the Speculation Rules plugin. Lab tests never trigger prerender activation, so they always report near-zero CLS. Field data (CrUX) shows the elevated CLS. When we deactivated the plugin, field CLS dropped back to previous levels.

Our site has layout shifts that are "fast enough" to be negligible on a normal cached+Argo page load, but we suspect that during prerender activation these same shifts get counted. As the plugin most probably great for UX, it seems to harm the field CLS measured by Google (CrUX). The issue are contradicting goals: The CLS is with the CWV supposed to be a ranking factor. Which might harm our Google ranking. 

We may be wrong about the exact mechanism. Perhaps the issue is that our specific combination of RevSlider visibility toggling, font loading without font-display:swap, and content-visibility:auto interacts badly with prerender. We are happy to provide more data or re-enable the plugin temporarily for debugging if that would help you investigate.

Best regards, 

Jan Richter

Bildschirmfoto 2026-04-23 um 14.48.06.jpg

Amit

unread,
Apr 23, 2026, 10:01:22 AMApr 23
to Chrome UX Report (Discussions), janpierr...@gmail.com, barryp...@google.com
You are using paid version of WP Rocket cache and Cloudflare Argo Smart Routing in your website  https://www.globotur.de/
So, WP Rocket cache and Cloudflare Argo Smart Routing is responsible why speed performance and Core Web Vitals score low.
Instead of here, You must contact to WP Rocket cache and Cloudflare Argo Smart Routing

Barry Pollard

unread,
Apr 23, 2026, 10:27:19 AMApr 23
to Jan R, Chrome UX Report (Discussions)
The site has some inherent layout shift sources due to a difficult template. With Argo + WP Rocket cache, these shifts have been fast enough that field CLS stayed around 0.02.

I still see some performance issues on the site. For example scrolling up and down in https://www.globotur.de/brasilien-blog/ shows CLS increasing continually. Caching can only help with "load CLS" but not with "scrolling CLS"

The lab vs. field discrepancy is what led us to the Speculation Rules plugin. Lab tests never trigger prerender activation, so they always report near-zero CLS. Field data (CrUX) shows the elevated CLS. When we deactivated the plugin, field CLS dropped back to previous levels.

That is not the only difference with lab and field data. Lighthouse does not scroll or do other interactions. As I say I easily found a fairly major CLS issue that on the blog page that will only show up in CrUX data and not in basic Lab tests.

I have also just tested Prerender in your site with a console snippet and saw the peformance benefits expected and no greater CLS.

It is possible the plugin does something different in prerendering mode. Or another feature was also included in that update that caused more CLS and has also been switched off. If you're using a paid service with them as Amit suggests then it might be best to raise with them.

From a CrUX perspective we do considered Prerendered pages (providing they are visited!) and we report the metrics the user sees. And, as I stated before, we have many instances of this correctly showing performance improvements for LCP and CLS for sites using prerendering. So, without fuirther evidence here, I see nothing for CrUX to do here.

Jan R

unread,
Apr 24, 2026, 12:15:34 PMApr 24
to Chrome UX Report (Discussions), barryp...@google.com, Chrome UX Report (Discussions), Jan R
Hey Barry, 

thank you so much for testing and you precious feedback. 
Yeah, the off-the-shelf template is really a bad one. But we are locked-in since then.
But according to the CrUX values we came down from 0,3 to 0,05 after the Cloudflare solution. 

I just can rely on what I am seeing and Crux is my SoT: After deactivation the field data returned to normal. 
So for me it seems that the CrUX field data do count the pre-rendering time. But it can be another reason. 
That's above my knowledge, I can just evaluate our case based on the data I have. 

So this is regarding our probably special case my workaround for now to match the CWV again. 
Happy to activate the speculation plugin at a later stage when maybe WP Rocket / Cloudflare / WP handle this better if CrUX field data measuring is not the culprit. 

Thank you for your attention. Have a great weekend!

Best
Jan
Reply all
Reply to author
Forward
0 new messages