Testing

WebM: Browser Support, Codecs, Known Issues

WebM works in Chrome 6+, Firefox 4+, Opera 10.60+, Edge 79+, Samsung Internet 4+, Safari 14.1+ on macOS, and iOS 15+. Learn WebM browser support and quirks.

Author

Prince Dewani

May 1, 2026

WebM is an open, royalty-free media file format that the WebM Project released in 2010 for use in HTML5 video and audio. It supports Chrome 6+, Firefox 4+, Opera 10.60+, Edge 79+, Samsung Internet 4+, and Safari 14.1+ on macOS, while Safari 15+ on iOS adds WebM playback to iPhone and iPad. Internet Explorer never added native WebM support.

This guide covers what WebM is, the browsers that play it and on which systems, the trade-offs against MP4, how to check WebM support at runtime, and the known issues to plan around before you ship WebM video.

What is WebM?

WebM is an open, royalty-free audio and video file format that Google introduced in May 2010 at Google I/O. It is based on a profile of the Matroska container, holds VP8, VP9, or AV1 video, and pairs that with Vorbis or Opus audio. The WebM Project, an open-source group, develops and maintains the format, and the Alliance for Open Media now stewards AV1 inside it. WebM is the default open video format on Chrome, Firefox, Opera, and Edge.

Which browsers does WebM support?

WebM works in every modern desktop browser and most mobile browsers, with Chrome, Firefox, and Opera supporting it since 2010 and 2011, and Safari adding native WebM support on macOS in April 2021 and on iOS in September 2021.

WebM compatibility in Chrome

Chrome supports WebM from Chrome 6, released in September 2010, on Windows, macOS, Linux, and ChromeOS. VP8 video and Vorbis audio worked from the start, Chrome added VP9 in Chrome 29 in August 2013, and AV1 in WebM arrived in Chrome 70 in October 2018. Chrome 1 to 5 did not support WebM.

WebM compatibility in Edge

Microsoft Edge supports WebM in two ways. The legacy EdgeHTML browser supports VP9 in WebM from Edge 14 in August 2016, but only when the user installs the Web Media Extensions package from the Microsoft Store. Chromium Edge supports WebM by default from Edge 79 in January 2020 and follows the same codec rules as Chrome.

WebM compatibility in Firefox

Firefox supports WebM from Firefox 4, released in March 2011, on Windows, macOS, Linux, and Android. VP8 and Vorbis worked from version 4, Firefox added VP9 in Firefox 28 in March 2014, and AV1 in WebM arrived in Firefox 67 on Windows in May 2019. Firefox 1 to 3.6 did not support WebM.

WebM compatibility in Safari

Safari supports WebM from Safari 14.1 on macOS Big Sur 11.3 and later, released April 29, 2021. Apple added VP8 and VP9 video with Vorbis audio in this version. Safari on iOS and iPadOS supports WebM from iOS 15 and iPadOS 15, released September 20, 2021. Safari 3 to 14.0 on macOS and iOS 3 to 14 did not support WebM playback.

WebM compatibility in Opera

Opera supports WebM from Opera 10.60, released July 1, 2010, the first browser to add native WebM. Modern Opera is built on Chromium and supports VP8, VP9, and AV1 inside WebM out of the box from Opera 16 in November 2013. Opera Mobile supports WebM from Opera Mobile 12 in March 2012 on Android.

WebM compatibility in Samsung Internet

Samsung Internet supports WebM from version 4, released in March 2016, on Galaxy phones and tablets. It is built on Chromium, so it supports VP8, VP9, and AV1 inside WebM by default and follows the same codec rules as Chrome for Android.

WebM compatibility in Android Browser

Chrome for Android supports WebM from Chrome 25, released in February 2013, on Android 4.0 and later. The legacy stock Android Browser added partial VP8 support in Android 2.3.3 (Gingerbread) in 2011 but never added VP9. On modern Android phones, use Chrome for Android, Firefox for Android, or Samsung Internet for full WebM support.

WebM compatibility in Internet Explorer

Internet Explorer does not support WebM in any version. Google released a WebM Components for IE9 plugin in January 2011, but Microsoft never added native WebM support in IE 9, 10, or 11. The plugin no longer installs on Windows 10 or 11. IE is end-of-life, so use a modern browser for any new WebM work.

What is the difference between WebM and MP4?

WebM and MP4 are both modern video containers but differ in licensing, codec mix, and browser reach. MP4 is the older, more compatible default, while WebM is the open, royalty-free option built for the web.

DimensionWebMMP4
Container originProfile of Matroska, trimmed for the webISO Base Media File Format (ISO/IEC 14496-12)
Video codecsVP8, VP9, AV1H.264, HEVC, AV1
Audio codecsVorbis, OpusAAC, AC-3, MP3 (Opus also legal, support uneven)
LicensingFully royalty-freeContainer free; H.264 and HEVC inside carry patent fees from MPEG LA, Via LA, Access Advance
Browser reachChrome, Firefox, Edge, Opera, Safari 14.1+ on macOS, iOS 15+ on iPhone. Not in older Safari or any IE version.Every modern desktop and mobile browser, including Internet Explorer 9+
File size at same qualityVP9 about 25 to 50% smaller than H.264; AV1 the smallestHEVC about 25 to 50% smaller than H.264; AV1 the smallest
Best fitOpen-web video, YouTube, Wikimedia, MediaRecorder outputPremium streaming, broadcast, anywhere H.264 or HEVC compatibility matters
...

How do you check if a browser supports WebM?

You can confirm WebM support inside any browser using the HTMLMediaElement.canPlayType() API or the MediaSource.isTypeSupported() API. Both return a string that tells you whether the browser will play WebM with a given video and audio codec combination.

The canPlayType() call returns one of three values: probably (the browser is sure it can play the file), maybe (likely yes), or "" (an empty string, which means no). Test each codec combination you plan to ship: VP8 with Vorbis for the widest reach, VP9 with Opus for better quality, or AV1 with Opus for the smallest files.

Paste this snippet into the browser DevTools console to confirm WebM support for the three common codec combinations:

// Run in the DevTools console of any browser to test WebM playback.
const v = document.createElement("video");
const canVp8 = v.canPlayType('video/webm; codecs="vp8, vorbis"');
const canVp9 = v.canPlayType('video/webm; codecs="vp9, opus"');
const canAv1 = v.canPlayType('video/webm; codecs="av01.0.04M.08, opus"');

console.log("WebM with VP8 + Vorbis:", canVp8 || "no");
console.log("WebM with VP9 + Opus:", canVp9 || "no");
console.log("WebM with AV1 + Opus:", canAv1 || "no");

if (window.MediaSource) {
  console.log(
    "MSE WebM (VP9 + Opus):",
    MediaSource.isTypeSupported('video/webm; codecs="vp9, opus"')
  );
}

If every result is empty, the browser cannot play WebM and your page should fall back to MP4 with H.264. The webmproject.org/detect page also offers a one-click visual test using a small VP8 file.

Note

Note: WebM playback breaks across older Safari, iOS, and Android Browser builds. Test it on real browsers and OS with TestMu AI. Try TestMu AI free!

What are the known issues with WebM?

WebM has the broadest open-source support of any web video format, but a few real edge cases still break in production. The biggest hits are older Safari versions, iOS playback quirks, and missing transparency in some browsers.

  • Older Safari and iOS lacked support: Safari did not play WebM at all on macOS until Safari 14.1 in April 2021, and on iPhone until iOS 15 in September 2021. Sites that target visitors on macOS Big Sur 11.2, iOS 14, or older still need an MP4 fallback.
  • VP9 hardware gap on older iPhones: iPhones from before iPhone XS lack a hardware VP9 decoder. iOS 15 plays WebM in software on these devices, which drains the battery faster on long videos.
  • Alpha transparency is uneven: WebM supports an alpha channel for transparent overlays, but only in VP8 and VP9. Older Safari falls back to a black background instead of transparency, so design alpha effects with that fallback in mind.
  • No HDR profile yet: WebM does not have a stable HDR profile shipped across browsers. Use AV1 in MP4 or HEVC in MP4 for HDR streams.
  • Internet Explorer never supported it: IE never added native WebM support. The 2011 Google IE plugin no longer installs on Windows 10 or 11. Anyone on IE needs an MP4 H.264 fallback.
  • WebRTC uses VP8 and VP9 separately: WebRTC video calls use VP8 or VP9 over RTP, not the WebM container. The .webm file extension does not appear in WebRTC; only the codecs do.
  • Some streaming services drop WebM: YouTube serves VP9 and AV1 inside WebM, but Netflix, Disney+, and Apple TV+ ship MP4 with H.264, HEVC, or AV1, not WebM.

In my experience, the most surprising failure happens on iOS 14 and earlier. Safari silently shows the poster image and never fires the canplay event, so a JavaScript player that waits for canplay hangs forever. Always pair the <video> element with a <source type="video/mp4"> fallback when you target iPhone visitors.

...

Citations

All WebM version numbers and platform notes in this guide come from these primary sources:

Author

Prince Dewani is a Community Contributor at TestMu AI, where he manages content strategies around software testing, QA, and test automation. He is certified in Selenium, Cypress, Playwright, Appium, Automation Testing, and KaneAI. Prince has also presented academic research at the international conference PBCON-01. He further specializes in on-page SEO, bridging marketing with core testing technologies. On LinkedIn, he is followed by 4,300+ QA engineers, developers, DevOps experts, tech leaders, and AI-focused practitioners in the global testing community.

Open in ChatGPT Icon

Open in ChatGPT

Open in Claude Icon

Open in Claude

Open in Perplexity Icon

Open in Perplexity

Open in Grok Icon

Open in Grok

Open in Gemini AI Icon

Open in Gemini AI

Copied to Clipboard!
...

3000+ Browsers. One Platform.

See exactly how your site performs everywhere.

Try it free
...

Write Tests in Plain English with KaneAI

Create, debug, and evolve tests using natural language.

Try for free

Frequently asked questions

Did you find this page helpful?

More Related Hubs

TestMu AI forEnterprise

Get access to solutions built on Enterprise
grade security, privacy, & compliance

  • Advanced access controls
  • Advanced data retention rules
  • Advanced Local Testing
  • Premium Support options
  • Early access to beta features
  • Private Slack Channel
  • Unlimited Manual Accessibility DevTools Tests