Title: Lazy Embed
Author: beleaf
Published: <strong>February 2, 2023</strong>
Last modified: May 22, 2024

---

Search plugins

![](https://ps.w.org/lazy-embed/assets/banner-772x250.png?rev=2865625)

This plugin **hasn’t been tested with the latest 3 major releases of WordPress**.
It may no longer be maintained or supported and may have compatibility issues when
used with more recent versions of WordPress.

![](https://ps.w.org/lazy-embed/assets/icon-256x256.png?rev=2865625)

# Lazy Embed

 By [beleaf](https://profiles.wordpress.org/beleaf/)

[Download](https://downloads.wordpress.org/plugin/lazy-embed.1.6.3.zip)

 * [Details](https://twd.wordpress.org/plugins/lazy-embed/#description)
 * [Reviews](https://twd.wordpress.org/plugins/lazy-embed/#reviews)
 * [Development](https://twd.wordpress.org/plugins/lazy-embed/#developers)

 [Support](https://wordpress.org/support/plugin/lazy-embed/)

## Description

Videos are one of the largest assets that can be loaded on a webpage, and as such
are one of the largest contributors to slow performance and high carbon emissions.

In fact, adding a Youtube embed to a page using the latest default WordPress theme,
increased the page transfer size from 21 kb to 973 kb, and loaded an additional 
27 resources. That’s an increase in transfer size of 4533%. Adding a Vimeo video
increased the transfer from 21 kb to 276 kb, an increase in transfer size of 1214%,
and loaded an additional 7 resources.

The Lazy Embed plugin defers the loading of any resource required for playing the
video until the video is requested to be played. It does this by adding a srcdoc
attribute to the iframe which shows in place of the normal iframe content.

Currently the following third parties are supported

 * Youtube
 * Vimeo
 * Dailymotion

## FAQ

### Are there any settings

Nope, install the plugin and you are good to go. There are some filters available
for modifying the behaviour though.

### Can I stop the plugin from modifying an iframe

Yes you can, add the “lazy-embed-ignore” class to the iframe itself or using the
gutenberg editor

### Why do I have to click a video twice somtimes for it to play?

Browsers have become more restrictive around autoplaying a video. The first click
on a video never reaches the video host, so they then show the default thumbnail.
After the first time a Lazy Embed is interacted with, subsequent videos from that
provider will not require a second load.

### I have updated the thumbnail for my video in Youtube/Vimeo/Dailymotion. Why am I not seeing the updated thumbnail?

The thumbnails are cached to improve the performance (uncached frontend pages) and
reduce the emissions (less requests to the video platform) of the Lazy Embed plugin.

The cache is known as transients. You can clear the transient cache using a plugin
like [WP-Sweep](https://wordpress.org/plugins/wp-sweep/)

### Why does it not work for my videos?

It could be for one of a few reasons.

 1. A thumbnail for the embed could not be retrieved. If this is the case, send us 
    a message with the video and we will take a look

## Reviews

![](https://secure.gravatar.com/avatar/7cbb536267cc0ae4eeea1eff6579d022825b1e02b716d07b468e6aa40952c1ae?
s=60&d=retro&r=g)

### 󠀁[The best plugin.](https://wordpress.org/support/topic/video-thumbnail-does-not-load/)󠁿

 [dyneezinha](https://profiles.wordpress.org/dyneezinha/) May 22, 2024 1 reply

It works perfectly. The best plugin I found. I recommend! Sorry for any errors in
writing, I’m originally from Brazil and I only write in Portuguese. I’m using google
translator.

![](https://secure.gravatar.com/avatar/cb9358ffd8587c3498800d9c404ab24e3f8cf81596d7038125e10a65c76226de?
s=60&d=retro&r=g)

### 󠀁[Just works! Much leaner YouTube and Vimeo embeds.](https://wordpress.org/support/topic/just-works-much-leaner-youtube-and-vimeo-embeds/)󠁿

 [Bjarne Oldrup](https://profiles.wordpress.org/oldrup/) February 29, 2024 1 reply

Lazy Embed is a no fuss, super simple and robust way to improve on performance, 
privacy and sustainability of video embeds using the block editor. Some highlights
include: Works with existing and new video embeds. Accessibility-friendly; video
can be triggered with keyboard. No settings or custom code needed; activate and 
be done. Leave no trace behind; deactivate if you don’t like it. Valid HTML output;
quality code. Much improved Google Lighthouse scores. If you mostly embed YouTube,
Vimeo or Daily Motion videos, and you don’t need custom overlays with, say, link
to privacy polices (hint: you can link to these in the captions), Lazy Embed is 
definitely worth a try. Tested with WordPress 6.5 beta 3 and PHP 8.3; no issues 
encountered. There are similar plugins out there, which allow for more customizations
and support for more embed types. These might give you more flexibility, but it’s
also more work. Lazy Embed definitely has my recommendation. Bjarne

 [ Read all 1 review ](https://wordpress.org/support/plugin/lazy-embed/reviews/)

## Contributors & Developers

“Lazy Embed” is open source software. The following people have contributed to this
plugin.

Contributors

 *   [ beleaf ](https://profiles.wordpress.org/beleaf/)
 *   [ Josh ](https://profiles.wordpress.org/josh-stopper/)

“Lazy Embed” has been translated into 1 locale. Thank you to [the translators](https://translate.wordpress.org/projects/wp-plugins/lazy-embed/contributors)
for their contributions.

[Translate “Lazy Embed” into your language.](https://translate.wordpress.org/projects/wp-plugins/lazy-embed)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/lazy-embed/), check
out the [SVN repository](https://plugins.svn.wordpress.org/lazy-embed/), or subscribe
to the [development log](https://plugins.trac.wordpress.org/log/lazy-embed/) by 
[RSS](https://plugins.trac.wordpress.org/log/lazy-embed/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.6.3 – 22/05/2024

Fix: Sometimes the maxresdefault thumbnail from youtube doesnt exist. If this is
the case, use a smaller image as a fallback

#### 1.6.2 – 21/05/2024

Fix: iframe lazy loading implementation

#### 1.6.1 – 21/05/2024

Fix: Load high resolution thumbnail from youtube
 Fix: Lazy load iframe and img 
tag placeholder

#### 1.6.0 – 08/04/2024

Feat: Replace regular expressions with WP_HTML_Tag_Processor
 Fix: A missing src
tag on an iframe resulted in a fatal error. This nolonger happens. Thanks Dan

#### 1.5.1 – 18/03/2024

Fix: Update required wordpress version to ensure WP_HTML_Tag_Processor exists

#### 1.5.0 – 18/03/2024

Fix: Fix ignoring of gutenberg embed blocks and video blocks
 Feat: Support image
for facade being provided by data-image Feat: Support more exit points (not modify
iframe) with imageSrc and iframeSrc Feat: Add filter for replacing whole srcdoc 
content QOL: Remove custom polyfill of str_contains as WordPress already polyfills
it for us QOL: Replace DOMDocument with WP_HTML_Tag_Processor QOL: Optimise CSS 
positioning properties

#### 1.4.0 – 07/02/2024

Feat: Pass html of iframe through to filters
 QOL: Simplify css transform

#### 1.3.0 – 03/03/2023

Feat: Add support for native video tags

#### 1.2.1 – 16/02/2023

Fix: Replace DOMDocument save of the whole dom as it breaks the encoding of the 
page resulting in different user agent styles

#### 1.2.0 – 16/02/2023

Fix: Vimeo embeds werent always retrieving their thumbnail due to a malformed url
being passed to the Vimeo API. This is now fixed.
 Feat: Add caching of the response
from the query to the Vimeo API to improve performance and reduce emissions.

#### 1.1.1 – 15/02/2023

Fix: Change muted parameter to mute for youtube embeds. Thanks @procontentxyz

#### 1.1.0 – 02/02/2023

Fix: Use template_redirect hook to avoid iframe replacement on gutenberg save action

Feat: Add support for all embeds on a page, not just the Gutenberg and TinyMCE Feat:
Add support for ignoring iframes by adding the lazy-embed-ignore class Feat: Add
filters for the iframe source, image source, svg, and css. QOL: Add type annotations
for quality control QOL: Remove global constants and use function return value QOL:
House cleaning, formatting, and documentation

#### 1.0.0 – 11/01/2023

Initial release.

## Meta

 *  Version **1.6.3**
 *  Last updated **2 years ago**
 *  Active installations **100+**
 *  WordPress version ** 6.2.0 or higher **
 *  Tested up to **6.5.8**
 *  PHP version ** 7.1 or higher **
 *  Languages
 * [Dutch (Belgium)](https://nl-be.wordpress.org/plugins/lazy-embed/) and [English (US)](https://wordpress.org/plugins/lazy-embed/).
 *  [Translate into your language](https://translate.wordpress.org/projects/wp-plugins/lazy-embed)
 * Tags
 * [embed](https://twd.wordpress.org/plugins/tags/embed/)[performance](https://twd.wordpress.org/plugins/tags/performance/)
   [sustainability](https://twd.wordpress.org/plugins/tags/sustainability/)[vimeo](https://twd.wordpress.org/plugins/tags/vimeo/)
   [youtube](https://twd.wordpress.org/plugins/tags/youtube/)
 *  [Advanced View](https://twd.wordpress.org/plugins/lazy-embed/advanced/)

## Ratings

 5 out of 5 stars.

 *  [  2 5-star reviews     ](https://wordpress.org/support/plugin/lazy-embed/reviews/?filter=5)
 *  [  0 4-star reviews     ](https://wordpress.org/support/plugin/lazy-embed/reviews/?filter=4)
 *  [  0 3-star reviews     ](https://wordpress.org/support/plugin/lazy-embed/reviews/?filter=3)
 *  [  0 2-star reviews     ](https://wordpress.org/support/plugin/lazy-embed/reviews/?filter=2)
 *  [  0 1-star reviews     ](https://wordpress.org/support/plugin/lazy-embed/reviews/?filter=1)

[Add my review](https://wordpress.org/support/plugin/lazy-embed/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/lazy-embed/reviews/)

## Contributors

 *   [ beleaf ](https://profiles.wordpress.org/beleaf/)
 *   [ Josh ](https://profiles.wordpress.org/josh-stopper/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/lazy-embed/)