A deep dive into optimizing LCP
Ғылым және технология
There is no shortage of advice on the web about improving page load performance, and yet, of the three Core Web Vitals, Largest Contentful Paint (LCP) is still the hardest metric for most sites to consistently meet the recommended "good" threshold. This talk looks at what makes LCP a hard metric to optimize, and offers some concrete strategies to break this complex metric down into a few simple parts, making it much easier to reason about and ultimately improve.
Resource:
Optimize LCP → goo.gle/3vhmmSg
Speaker: Philip Walton
Watch more:
All Google I/O 2022 Sessions → goo.gle/IO22_AllSessions
Web at I/O 2022 playlist → goo.gle/IO22_Web
All Google I/O 2022 technical sessions → goo.gle/IO22_Sessions
Subscribe to Google Chrome Developers → goo.gle/ChromeDevs
#GoogleIO
Пікірлер: 62
12:25 - Point where the practical advise starts 18:19 - Real website case study
Extremely simple and helpful explanation. I could bring the LCP that used to stay between 3.5 to 4s, down to 1.5 to 2s. Thanks a lot for creating this video!
Thank you so much. You gave me the tools that I need to learn, apply the learning, and combine other functions and information.
thank you for simple and practical advices. i hope you have simple and practical guidance along your way.
Really clear, well done Philip!
What a really good talk Phil. Sending it to everyone. :P Thank you.
Thank you for the video; I really liked the practical example at the end and the various breakdowns. 🙂
This was brilliant! Loved the structure of the video and the optimization of the demo at the end!
@mariuszmiszuta3200
2 жыл бұрын
I miss your content @YouCodeThings
I can't exaggerate how helpful this type of learning- and practical material is for us to improve our user experiences and ultimately improving the bottom line (for all you PM's out there). I would strongly urge and request (beg?) that the same format is made but for INP, as we're getting closer to March 2024 and INP becoming de-facto part of Core Web Vitals. Thanks for the extremely well produced and explained material. More of this will make the web a better place for everyone.
@RickViscomi
Ай бұрын
Google just released an INP deep dive video last month: kzread.info/dash/bejne/laGoyK9tldCtZc4.html
Amazing, such a great video... Thanks for the insights on this topic
Thank you for this video its very interesting, but i hava a qestion where I can get perf.js file????
Can you give basic instructions to non-coders on how to install the perf.js code with a wordpress site? Thanks
Wonderful illustrations and much appreciated. Are there tools within the Performance test that can help track down the element_render_delay? Looking to pinpoint the javascript files or functions could be causing a long LCP? A stack trace leading to the LCP?
Very helpful. Thank you Phillip.
Wow. So helpful. Thank you very much!
anyone knows when this bug "LCP_SUB_PARTS.forEach(performance.clearMeasures);" can be fixed?
Hi is there a video for optimizing website banner images to pass the page insight?
Amazing!!! Its Exactly Just what i looking for to improve Agency websites SEO, thanks A lot! 😬😬😁
תודה רבה, הטיפ הזה על טעינה מראש של תמונות הביא לי לפחות 10 נקודות. כל הזמן הזה ניסיתי לעכב את הטעינה של תמונה בראש הדף במקום לנסות לטעון אותה יותר מהר. 👍
For those looking for the perf js file, you'll need to type it out yourself which is shown fully on the screen The file is only 36 lines I searched on the linked article, the author's github, and the co-author's github and I was unable to find this file
@paulydee5650
Жыл бұрын
I typed in verbatim the code and it didn't work for me. I'm pretty sure I had everything right; I even put it in chatGPT to make sure I didn't have any typos. Realized that the Web Vitals Extension on Chrome already does this anyway, so no need for the script.
How do we fix LCP Preload Largest Contentful Paint image when using native web components I have an example when using the picture tag also using the fetchpriority = hgih which works when its just on the dom, but my question is without using the preload in the how do we fix this issue? as you don't want to preload the image on every page?
Thank you for your excellent advice! Is LCP computed only for the landing page or for every page a user visits during a session?
@sbfhoney435
Жыл бұрын
For Each page
This video is perfect, thanks a lot
Sir this amazing but how to do in WordPress without plugin?
At 27:43: 1. Why is london.jpg still loaded? 2. Why are there only 5 max concurrent requests in flight? I thought Chrome can handle 6 connections to a domain at a time.
Could you please share code example?
Awesome video, how can we optimize wordpress websites?
is it possible to have access to a project you've been working on as a demo? I'd like to follow your steps just to make I can reproduce and see similar results. Thanks
How can I improve the Load delay?
I'm unable to replicate the 'document_ttfb", 'resource_load_delay', 'resource_load_time' in the inspector/Performance - where do you see these features? Thanks.
@philipwalton3768
2 жыл бұрын
See the Optimize LCP article for the code that outputs those marks: web.dev/optimize-lcp/
Can we have a source code to practice?
Very useful, Thanks.
@AlirezaMirhabibi
2 ай бұрын
And also professional.
Excellent !
why my Timings section doesnt look like his @22:49
working with next and nuxt for years, seeing him copying and pasting the rendered markup into the html page caused a shortcut in my brain :D
Optimising LCP! Yes! Finally!
Where can we get the perf.js code used in the example to measure all the metrics?
@philipwalton3768
2 жыл бұрын
You can find that code in the linked article, Optimize LCP: web.dev/optimize-lcp/
@rishabsharma5307
Жыл бұрын
@@philipwalton3768 How to add perf.js code in performance tab so that it start showing those bars?
@rishabsharma5307
Жыл бұрын
@@philipwalton3768 And can you please share the repo link?
4:22 yes, exactly.
Is there any reason to believe that using the Link header would offer better performance over using a link tag?
@philipwalton3768
2 жыл бұрын
It can, especially if you have a lot of content in the prior to the tag. But on most pages it makes very little difference.
@GabrielMartinez-gs9bo
2 жыл бұрын
@@philipwalton3768 Thank you very much for your reply! I also assume that if we were to use http push for our preloaded link header we could potentially get even better results! I will try to experiment with it, wish me luck!
@EricoGuizzo
2 жыл бұрын
@@philipwalton3768 At 27:34 how does the browser know to prioritize the london.avif image - without using preload or fetchpriority?
@ChromeDevs
2 жыл бұрын
@@EricoGuizzo Because the fetchpriority attribute is applied to the tag within the element, so the URL that gets prioritized is the same one that the browser will ultimately load (after resolving the elements).
@EricoGuizzo
2 жыл бұрын
@@ChromeDevs I see, very cool. Thanks for the clarification.
Sorry if this was mentioned in the video (I didn't listen to the whole thing). What type on connection do those times target? Is it 4G, 3G?
@philipwalton3768
2 жыл бұрын
The thresholds for all the Core Web Vitals metrics are based on UX research, so they target all connection types. See: web.dev/defining-core-web-vitals-thresholds/
يا صديقي العزيز هل هناك ترجمة لمحتوى الفيديو باللغة العربية
As amazing this was, the only issue is that nobody codes in plain HTML anymore where we have absolute control to apply optimisation the web standard way. In Next 12, it's annoying to optimise these things when it still fails in mobile after all the best standard framework practices.
@shivankbatra5643
9 ай бұрын
yeah the video was amazing but i m facing the same issue. Using next 12, have implemented these things but getting a high LCP on mobile. Did you figure something out?
@user-xr4oo2xp7q
9 ай бұрын
@@shivankbatra5643 No. Nothing.
11:09 🎉
youtube's mobile LCP? 6secs :P
In my eyes everything about LCP is not about the image itself but all the other aspects.. sadly.. And sadly everybody is just talking about the hero image.