PerformanceFrameTiming

This is an experimental technology
Because this technology's specification has not stabilized, check the compatibility table for usage in various browsers. Also note that the syntax and behavior of an experimental technology is subject to change in future versions of browsers as the specification changes.

The PerformanceFrameTiming interface provides frame timing data about the browser's event loop. A frame represents the amount of work a browser does in one event loop such as processing DOM events, resizing, scrolling, rendering, CSS animations, etc. A frame rate of 60fps (frames per second) for a 60Hz refresh rate is the target for a good responsive user experience. This means the browser should process a frame in about 16.7ms.

An application can register a PerformanceObserver for "frame" performance entry types and the observer can retrieve data about the duration of each frame event. This information can be used to help identify areas that take too long to provide a good user experience.

The PerformanceFrameTiming interface has no properties, no methods nor any constructors. However, it qualifies and constrains the following PerformanceEntry properties for "frame" performance entry types: name, entryType, startTime and duration.

Properties

This interface extends the following PerformanceEntry properties (for "frame" performance entry types) by qualifying and constraining the properties as follows:

PerformanceEntry.entryType
Set to "frame".
PerformanceEntry.name
Set to the document's address.
PerformanceEntry.startTime
Set to the timestamp when the frame was started.
PerformanceEntry.duration
Set to a timestamp indicating the difference between the startTimes of two successive frames.

Methods

This interface has no methods.

Example

See the example in Using the Frame Timing API.

Specifications

Specification Status Comment
Frame Timing
The definition of 'PerformanceFrameTiming' in that specification.
Editor's Draft Initial definition.

Browser compatibility

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
PerformanceFrameTiming No support[1] No support[2] No support No support No support
Feature Android Firefox Mobile (Gecko) Firefox OS IE Phone Opera Mobile Safari Mobile
PerformanceFrameTiming No support No support No support No support No support No support

[1] See Chrome bug 120796.

[2] See bug 1158032.

See also

Document Tags and Contributors

 Contributors to this page: tophf, rolfedh, AFBarstow
 Last updated by: tophf,