GoogleChrome / GoogleChrome/lighthouse

Improve LCP lantern graphs

Open
#15,737 1 comment 2 reactions 0 assignees View on GitHub
P2 simulation / lantern
Dominant language
JavaScript
Stars
30.8k
Forks
9.8k
Avg merge
1d 20h
Merged PRs (30d)
19

Description

The general problem we were dealing with was that LCP graphs can be somewhat noisy due to both optimistic and pessimistic graphs casting very wide nets when it comes to network requests.

This can lead to situations where reducing the download time of some unimportant request can "improve" the LCP time because it happened to be the last request to finish in the graph (https://github.com/GoogleChrome/lighthouse/pull/15651#discussion_r1416334758). Conversely, improving the timing of the LCP image record can yield 0 LCP savings if there are many other requests that the LCP graph decides are dependencies for LCP (https://github.com/GoogleChrome/lighthouse/issues/15636#issuecomment-1881972010)

To resolve this, I think we should redefine our optimistic LCP graph to focus on the LCP critical path. Right now the optimistic graph is extremely similar to the pessimistic graph (only excluding low prio image nodes) so it can be just as noisy. It's also worth noting that if the LCP image record is low priority it will not appear in the optimistic graph despite being the most important record for LCP.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.