demo · v132

Coarsened renderTime in element-timing / LCP

A real LCP image is loaded from a cross-origin host with NO Timing-Allow-Origin header. The PerformanceObserver below shows the renderTime that Chrome reports. Pre-132 it would have been 0; in 132+ it is non-zero, coarsened to a 4 ms multiple.

attaching observer…
fieldvalue (ms)note
startTimefetch began
renderTimecoarsened (4ms multiple) when cross-origin
loadTimeimage bytes downloaded
identifierelementtiming attribute

the observer

new PerformanceObserver(list => {
  for (const e of list.getEntries()) {
    console.log(e.name, e.renderTime, e.startTime); // renderTime non-zero even without TAO
  }
}).observe({ type: "largest-contentful-paint", buffered: true });

see also