Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

The renderTime read-only property of the PerformanceElementTiming interface returns the render time of the associated element.


A DOMHighResTimeStamp with the render time of the element.

For images this will be the image rendering timestamp. This is defined as the next paint that occurs after the image becomes fully loaded. If the timing allow check fails (as defined by the Timing-allow-origin header) this will return 0.

For text nodes this will be the text rendering timestamp. This is defined as when the element becomes text painted.


In this example calling entry.renderTime returns the render time of the image element.

  alt="a nice image"
  id="myImage" />
const observer = new PerformanceObserver((list) => {
  list.getEntries().forEach((entry) => {
    if (entry.identifier === "big-image") {
observer.observe({ entryTypes: ["element"] });

Note: This example uses the PerformanceObserver interface to create a list of performance measurement events. In our case we observe the PerformanceEntry.entrytype element in order to use the PerformanceElementTiming interface.


Element Timing API
# ref-for-dom-performanceelementtiming-rendertime①

Browser compatibility

BCD tables only load in the browser