Archived topic
anyone offer Core Web Vitals service for GeneratePress and WP Rocket
30 replies · Started by Fraser on October 25, 2021
Does anyone offer a Core Web Vitals service for websites that use GeneratePress, GenerateBlocks, and WP Rocket?
Whilst I have a mobile score of 98 on most pages, I have been unable to fix an LCP issue since 28th May and my improvements continued to fail the test.
The actual score is 3.1 seconds
As a result, organic traffic has declined.
The featured image in the header element appears to be the core issue.
I've tried every solution in this forum but to no avail.
I'm not looking for suggestions, but someone who can actually fix this issue.
Hi there,
can you share a link to the site so i can take a look?
platonik.co.uk
So i ran a PSI test and what i was first surprised to see in the Lab Data is that FCP, LCP and Time to Interactive were all 2.8 seconds. And more surprising there are no opportunities or diagnostics relating to those times. And checking the Critical Chain requests i see there is only the domDocument and 1 x font request... no CSS hmmmm.
Which lead me to inspect the site with the browser developers tools to find all of the CSS was being loaded inline in the <head> of the site by WP Rocket... and theres around 4000 lines of it... which i would hazard a guess as being the issue.
So I ran another PSI test with WP Rocket disabled ( by adding the ?nowprocket query string to the URL ):
We now have some differentials to work with and i can see whats happening behind the scenes.
Can you disable the Optimize CSS Options in WP Rocket ( ie. Used CSS ) so we can take a look without that one setting being applied ?
thanks for investigating David. I have disabled this option, see attached
https://www.screencast.com/t/M1bMyNuErM
Fraser
Hmmm....
For testing could you remove the background image of the hero element on mobile ?
You can use add this CSS to do that :
@media(max-width: 414px) {
.entry-content .gb-container:first-child:before {
background-image: unset !important;
}
}
Done
And that made absolutely no difference to any of the timings... which is bizarre as that removed over 50kb of data from initial load. I also tested this page:
https://www.platonik.co.uk/keyword/
Which is just text and yet the results are the same ....
Aside from WP Rocket deferring JS i can't see any front end scripts running that would interfere with the loading. Theres no redirects or other network requests i can see that would affect it either.
The fact that all FCP timings are high and none of the usual culprits ( see here ) are appearing in any tests i do it points to the TTFB timings.
Can you check with your host to see if they can provide any insight as to why TTFB may be slowed down?
As a side note - it won't make any noticeable different but in Customizer > General, change the Icon Type to SVG. It will remove the tiny font files currently being requested for theme icons.
Thanks, David, I changed the icon type and I'll reach out to Flywheel to get feedback on TTFB.
Typical host response.
"As this site is running perfectly on our end there isn't much more optimizing we can do it would be on the dev side."
Final test to try - in the Customizer set the fonts to Inherit ( which will load only System Stack fonts and NO google fonts ) then clear the WP Rocket caches.
And we can retest the page without them...
Done that
That made a huge improvement across the site except for the Home Page:
Keyword page:
https://developers.google.com/speed/pagespeed/insights/?url=https%3A%2F%2Fwww.platonik.co.uk%2Fkeyword%2F
So Google font is being a pain in the *** ... you can try loading them locally:
https://docs.generatepress.com/article/adding-local-fonts/
That should keep those improvements.
But now the Front Page - are there any extra scripts / tracking codes being run on the front page ?
Thanks, David, I'll load fonts locally.
Regarding the home page, there are no scripts or codes that spring to mind but I'll investigate.
I notice this error onlu on the home page in the Developers Console:
Unhandled Promise Rejection: TypeError: null is not an object (evaluating 'e.parentNode.replaceChild')
Its the WP Rocket Lazy loading script. Could be a problem as its running some Javascript that looks to be 'moving' HTML but is failing. Check with WP Rocket on whats going on there... best to eliminate these errors.