PerformanceEventTiming: processingEnd property

Baseline 2025
Newly available

Since December 2025, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.

The read-only processingEnd property returns the time the last event handler finished executing.

It's equal to PerformanceEventTiming.processingStart when there are no such event handlers.

Value

A DOMHighResTimeStamp timestamp.

Examples

Using the processingEnd property

The processingEnd property can be used when observing event-timing entries (PerformanceEventTiming). For example, to calculate input delay or event processing times.

js
const observer = new PerformanceObserver((list) => {
  list.getEntries().forEach((entry) => {
    // Full duration
    const duration = entry.duration;
    // Input delay (before processing event)
    const delay = entry.processingStart - entry.startTime;
    // Synchronous event processing time
    // (between start and end dispatch)
    const time = entry.processingEnd - entry.processingStart;
  });
});
// Register the observer for events
observer.observe({ type: "event", buffered: true });

Specifications

Specification
Event Timing API
# dom-performanceeventtiming-processingend

Browser compatibility

See also