libvpx is Google's reference encoder and decoder for VP8 and VP9. Originally developed by On2 Technologies (acquired by Google in 2010), it's been the canonical implementation of those two royalty-free codecs since their release. YouTube used libvpx as its primary encoder for most of the 2010s; WebRTC for years defaulted to libvpx-based VP8 encoding for video calls. Anywhere VP8 or VP9 video lives in the world today, there's a high chance libvpx put it there.

Compared to its competitors of the time. libvpx vs x264 for H.264-equivalent encoding: libvpx-VP9 produces files roughly comparable to x265-HEVC at the same quality, dramatically smaller than x264-H.264 but at much higher encoding cost. libvpx vs SVT-AV1 for next-generation encoding: libvpx is now older and slower; SVT-AV1 produces better AV1 files than libvpx produces VP9 files, and AV1 is the natural successor. Google itself has shifted its focus from libvpx to SVT-AV1 contributions for new encoding development.

For a product team in 2026, libvpx is legacy you might still encounter. WebRTC stacks default to it for VP8 video calls (and increasingly VP9). Some older Chromium-based pipelines still default to libvpx-VP9 for VOD. YouTube still serves a lot of VP9 encoded with libvpx. If you're building a new system today, default to AV1 via SVT-AV1 for VOD and to AV1 or VP9 (whichever your endpoints support) for real-time. libvpx hasn't gone away, but new development happens elsewhere; treat it as a stable, mature tool rather than a strategic platform.