Chrome Native Video and Audio Lazy Loading: What It Does
A low-profile change moving through Chrome's release pipeline could meaningfully speed up some of the web's most sluggish pages. Not through a redesign or a new engine, but by finally extending a capability images have had for years to video and audio elements. Chrome native video and audio lazy loading has been a glaring gap in the browser's feature set for a long time. That gap is now closing.
Chrome has supported native lazy loading for images and iframes for years, but video and audio elements have always loaded immediately on page open, regardless of whether a user ever scrolls to them. The implementation, authored by independent Chromium contributor Helmut Januschka, was merged into Chromium on February 20, 2026, and entered the shipping process at the end of March. A separate changelist enabling the feature by default for stable builds points toward broad availability around Chrome 148, according to Peer Networks UK and Januschka's project page.
One calibration up front: this is not a confirmed ship announcement. The code is merged and rollout signals are strong, but Chrome 148 is an inference from current changelist activity, not an official release note.
The WHATWG HTML pull request formalizing loading="lazy" support for <video> and <audio> elements has received positive signals from browser vendors, though implementations remain in progress. A reviewer on the standards thread called it ready for final standardization, which makes this more than a Chrome-specific experiment.
What the feature does and what it doesn't
Per the WHATWG specification, when loading="lazy" is applied to a <video> or <audio> element, loading of any video or poster image data, as well as autoplay playback, defers until layout is known and the element is in the viewport. That poster image detail matters more than it might seem. Think of a recipe site with six embedded cooking videos below the fold: under current browser behavior, Chrome fetches all six poster thumbnails and begins initializing each video on page load, whether the user scrolls that far or not. Those fetches pile up early, before a single recipe step has been read. Lazy loading cuts them entirely until they're needed.
There is also a subtler effect that most users never see but always feel. According to Januschka's proposal, as cited by Peer Networks UK, native lazy loading avoids blocking window.onload for offscreen media. Right now, Chrome cannot mark a page as fully loaded until it has fetched video content a user may never scroll to. Remove that block and the page feels done sooner, and performance metrics start telling a more honest story.
What this does not solve is worth stating plainly:
The feature only helps pages where developers explicitly add the attribute. Chrome will not retroactively apply lazy loading to existing video and audio across the web.
Users browsing sites that haven't adopted it will notice no difference.
Media appearing above the fold, or media developers need to load immediately for autoplay or UX reasons, is unaffected. The explicit alternative,
loading="eager", remains available, per the WHATWG specification.
The scope is real but bounded. This is a tool developers have to pick up; it doesn't work passively.
Why Chrome lazy loading for video and audio beats JavaScript workarounds
The established workaround has been custom JavaScript using IntersectionObserver: code that watches for media elements entering the viewport and then manually triggers a source fetch. Januschka characterizes this approach as error-prone, complexity-adding, and structurally unable to integrate with the browser's own preload scanner, according to Peer Networks UK.
The practical consequence: JavaScript lazy loading and Chrome's internal resource prioritization run alongside each other without coordination. Scripts fire when the viewport logic triggers, not when the browser has determined it's the right moment to fetch given current network conditions. Network bandwidth isn't managed the way the browser would manage it natively.
The native implementation plugs into Chromium's existing lazy-load infrastructure, reusing the same intersection logic and network-aware distance thresholds already used for images, per Januschka's project page. On a slower connection, the browser begins loading earlier to prevent a visible gap when the user scrolls into range. That kind of adaptive margin requires visibility into the network stack that a JavaScript script simply cannot replicate reliably.
For developers, the practical upside collapses to a single HTML attribute. Adding loading="lazy" to a <video> or <audio> element works exactly as it does on <img> and <iframe>, per the WHATWG specification. No JavaScript dependency, no viewport-watcher edge cases, no gap between when the script fires and what the browser's resource scheduler is actually doing.
Dropping an IntersectionObserver implementation and replacing it with one HTML attribute is not a minor convenience. It eliminates an entire category of bugs.
Rollout status and the cross-browser picture
The Chromium implementation is merged and moving toward stable. Chrome 148 is the most likely initial release based on current changelist signals, and all Chromium-based browsers, including Edge, Opera, Vivaldi, and Brave, would inherit the feature at the same time, according to Profesional Review and Peer Networks UK.
The cross-browser picture is where the longer story gets interesting.
The WHATWG standards thread has received positive signals from Gecko, WebKit, and Chromium, with at least one reviewer describing the spec as ready for final standardization, per the pull request thread. That said, standardization consensus and browser shipping are different milestones. As of this week, Firefox's implementation is in active review and WebKit's is prepared but not formally submitted, per Januschka's status tracker. The direction is clear; the timeline is not.
If all three engines complete their implementations and the WHATWG standard finalizes, loading="lazy" on <video> and <audio> becomes a baseline web platform capability: something developers can write once, trust across every major browser, and deploy without fallback scripts. That outcome isn't guaranteed, but this feature has more cross-engine momentum than most Chromium-first additions. The difference between a useful Chrome feature and a reliable web standard is usually whether Firefox and Safari come along. Both are moving toward yes.
What comes next
Chrome is converting a fragile developer convention into a reliable browser primitive. The immediate beneficiaries are developers who can retire their IntersectionObserver scripts, and users on media-heavy sites that adopt the attribute: faster initial loads, lower data consumption, no manual configuration required.
The larger story is what this represents for the platform. Chromium media lazy loading is on a credible path to becoming a cross-browser standard, per both the WHATWG thread and Januschka's tracker. If it gets there, developers gain a dependency-free, consistently behaved tool that works identically across every major browser. That's exactly the condition under which a one-line HTML attribute actually changes how the web is built, not when it's a clever trick one browser supports, but when it's simply what you do.
For most users, nothing changes today. But the infrastructure for a meaningfully lighter web on media-heavy pages is nearly in place.

Comments
Be the first, drop a comment!