The naturalHeight read-only property of the PerformanceElementTiming interface returns the intrinsic height of the image element.


An unsigned 32-bit integer (unsigned long) which is the intrinsic height of the image if this is applied to an image, 0 for text.


In this example the image file has a width of 1000px and a height of 750px. Calling entry.naturalHeight returns 750, that being the intrinsic height in pixels.

<img src="image.jpg" alt="a nice image" elementtiming="big-image" id="myImage">
const observer = new PerformanceObserver((list) => {
  let entries = list.getEntries().forEach(function (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-naturalheight

Browser compatibility

BCD tables only load in the browser