W3cubDocs

/Web APIs

HTMLMediaElement: ratechange event

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨July 2015⁩.

The ratechange event is fired when the playback rate has changed.

This event is not cancelable and does not bubble.

Syntax

Use the event name in methods like addEventListener(), or set an event handler property.

addEventListener("ratechange", (event) => { })

onratechange = (event) => { }

Event type

A generic Event.

Examples

These examples add an event listener for the HTMLMediaElement's ratechange event, then post a message when that event handler has reacted to the event firing.

Using addEventListener():

const video = document.querySelector("video");

video.addEventListener("ratechange", (event) => {
  console.log("The playback rate changed.");
});

Using the onratechange event handler property:

const video = document.querySelector("video");

video.onratechange = (event) => {
  console.log("The playback rate changed.");
};

Specifications

Browser compatibility

Desktop Mobile
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari on IOS Samsung Internet WebView Android WebView on iOS
ratechange_event 3 12 3.5 10.5 3.1 18 4 11 3 1.0 4.4 3

See also

© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement/ratechange_event