Blog
WordPress Lazy Loading: Setup and Best Practices
A beautiful WordPress site can still feel painfully slow if every image loads at once.
Lazy loading fixes that problem by delaying images, videos, iframes, and other heavy elements until the visitor actually needs them. Instead of forcing the browser to download everything on the page immediately, lazy loading lets the visible part of the page load first.
For Canadian small businesses, that matters a lot. Many visitors are browsing from phones, shared Wi-Fi, rural connections, or mobile data. If your homepage, service page, menu, gallery, or listing page is packed with media, lazy loading can make the site feel much faster without changing the design.
What Is Lazy Loading in WordPress?
Lazy loading is a performance technique that tells the browser, “Don’t load this item until it is close to being visible.”
On a WordPress page, this usually applies to:
- Images inside blog posts and pages
- Gallery images
- WooCommerce product images further down the page
- Embedded videos
- Maps
- Social media embeds
- Review widgets
- Third-party iframes
Without lazy loading, a long page with 30 images may try to load all 30 when the page opens. With lazy loading, the browser loads the first few visible items, then loads the rest as the visitor scrolls.
The result is usually a faster first impression, lower bandwidth use, and better performance on mobile.
WordPress Already Has Native Lazy Loading
Modern WordPress includes native lazy loading for many images by default. That means WordPress can automatically add lazy loading behaviour to images without requiring a separate plugin.
In many cases, that is enough.
If you run a simple small business website with a few service pages, some blog posts, and a modest number of images, you may not need a dedicated lazy loading plugin. WordPress, your theme, and your browser may already be handling the basics.
Where extra setup becomes useful is when your site has heavier content, such as:
- Large real estate photo galleries
- Restaurant menu images and embedded ordering systems
- Project portfolios for trades businesses
- WooCommerce product grids
- Embedded YouTube or Vimeo videos
- Google Maps embeds
- Instagram feeds or review widgets
- Page builder sections with background images
Native lazy loading is a good starting point, but it does not automatically solve every performance issue.
Why Lazy Loading Helps WordPress Speed
Lazy loading helps because it reduces the amount of work required during the initial page load.
When someone lands on your page, the browser has to download HTML, CSS, JavaScript, fonts, images, and other assets. If your site immediately requests every image and embed on the page, the browser gets busy fast.
Lazy loading reduces that pressure.
Instead of loading the entire page payload upfront, the browser prioritizes what the visitor can actually see. That can improve perceived speed, especially on mobile.
Lazy loading may help with:
- Faster initial page rendering
- Lower mobile data usage
- Reduced bandwidth consumption
- Better user experience on long pages
- Improved performance scores when configured properly
If you are working on overall speed, lazy loading should be part of a bigger plan. Image compression, caching, hosting quality, database cleanup, and script management all matter too. For a broader speed checklist, see Mobile Speed Optimization for WordPress Sites.
The Biggest Lazy Loading Mistake: Lazy Loading the Wrong Image
Here is the trap: lazy loading can hurt performance if you apply it too aggressively.
The image at the top of the page, especially your hero image, should usually load right away. If that image is delayed, visitors may see a blank area or a late-loading banner. Google may also treat that image as part of your Largest Contentful Paint, often called LCP.
LCP is one of the Core Web Vitals metrics. It measures how quickly the main visible content appears to the visitor.
Tip: Do not lazy load your main above-the-fold image. The hero image, first product image, first featured image, or first large banner should usually be excluded from lazy loading.
If your LCP image is lazy loaded, your site may feel slower even if your total page weight is lower. This is why “turn it on everywhere” is not the best approach.
For more background on performance metrics, read Core Web Vitals for WordPress: What to Know.
How to Check Whether Lazy Loading Is Already Working
You do not need to be a developer to do a basic check.
Open a page on your WordPress site that has several images. Right-click and inspect one of the images lower down the page. In the image HTML, look for something like:
loading="lazy"
If you see that attribute, lazy loading is being applied to that image.
You can also test the page in tools like PageSpeed Insights, GTmetrix, WebPageTest, or your browser’s developer tools. These tools may show whether offscreen images are being deferred.
Do not obsess over one score, though. Test the actual experience:
- Does the page appear quickly on mobile?
- Does the top image load immediately?
- Do images lower down appear smoothly as you scroll?
- Do galleries still work properly?
- Do embedded maps and videos load only when needed?
Performance tools are helpful, but your visitors care about how the site feels.
Ways to Set Up Lazy Loading in WordPress
Option 1: Use WordPress Native Lazy Loading
For many sites, the best setup is the simplest one: let WordPress handle native lazy loading.
This is usually a good fit if:
- Your site is not image-heavy
- Your theme is well-coded
- You do not use many third-party embeds
- Your pages are fairly short
- You already have caching and image optimization in place
The upside is that there is less to maintain. No extra plugin means fewer settings, fewer conflicts, and one less thing to update.
The downside is that native lazy loading may not cover every type of media. Background images, complex page builder sections, embedded videos, and third-party widgets may need extra handling.
Option 2: Use a Performance Plugin
Many WordPress performance plugins include lazy loading features. Common examples include LiteSpeed Cache, WP Rocket, Perfmatters, and other optimization tools.
Pricing, features, and setup screens change, so check each plugin’s official documentation before configuring it. Do not follow old screenshots from random tutorials unless they match the current plugin interface.
A plugin may help you lazy load:
- Images
- Iframes
- Videos
- Background images, depending on the plugin and theme
- Embedded media placeholders
If your hosting uses LiteSpeed, LiteSpeed Cache is often worth considering because it works closely with the server. Ambrite’s cloud web hosting uses LiteSpeed, NVMe SSD storage, and Imunify360, which gives WordPress sites a strong performance and security foundation.
That said, a performance plugin is not magic. Poorly configured optimization plugins can break sliders, galleries, menus, maps, checkout pages, and booking forms.
Make one change at a time. Test after each change.
Option 3: Ask Your Developer or Maintenance Provider to Configure It
If your site uses a custom theme, page builder, WooCommerce, booking system, or heavy gallery layout, lazy loading should be configured carefully.
A developer or maintenance provider can check which images should load immediately, which can be delayed, and whether any JavaScript conflicts appear after optimization.
This is especially useful for business-critical pages like:
- Homepages
- Contact pages
- Quote request pages
- Booking pages
- WooCommerce product and checkout pages
- Real estate listing pages
- Restaurant online ordering pages
At Ambrite, our WordPress maintenance plans start from $49/month CAD and can include performance checks, updates, backups, security monitoring, and troubleshooting. That kind of ongoing care matters because speed settings can break after theme, plugin, or content changes.
Best Practices for WordPress Lazy Loading
1. Exclude Above-the-Fold Images
Your first visible image should usually not be lazy loaded.
This may include:
- The homepage hero image
- The first image in a blog post
- The main product image on a WooCommerce product page
- The top banner image on a landing page
- A large featured image that appears immediately on mobile
Some performance plugins let you exclude images by class, filename, CSS selector, or position. The exact method depends on the tool, so check the plugin’s current documentation.
If you are not sure which image is your LCP image, test the page with a performance tool. Look for the element reported as Largest Contentful Paint.
2. Lazy Load Videos and Iframes
Videos and iframes are often heavier than images.
A YouTube embed, map, social feed, or booking widget may load several external scripts. Even if the visitor never scrolls to that section, those scripts can still slow the initial page load.
Lazy loading iframes can make a noticeable difference on pages with:
- Embedded YouTube videos
- Google Maps
- Facebook or Instagram embeds
- Third-party scheduling tools
- Review widgets
For videos, consider using a lightweight preview image that loads the actual video only when clicked. Many performance plugins call this a “video placeholder” or “lazy load video embed” feature.
3. Optimize Images Before Lazy Loading Them
Lazy loading is not a substitute for image optimization.
If your page has 20 massive images straight from a phone or DSLR camera, lazy loading only delays the problem. Visitors may still experience slow loading as they scroll.
Before relying on lazy loading, make sure your images are:
- Resized to reasonable dimensions
- Compressed before or during upload
- Served in efficient formats where appropriate
- Not duplicated across multiple plugins or page builder sections
- Using descriptive alt text for accessibility and SEO
This is especially important for portfolios, renovation galleries, legal team pages, healthcare practice pages, and restaurant menus.
If your site relies on lots of project or portfolio photos, this related guide may help: How to Optimize Project Photo Galleries.
4. Watch Out for Background Images
WordPress native lazy loading usually applies to standard image tags. Background images are different because they are often loaded through CSS.
Many page builders use background images for hero sections, banners, cards, and decorative layouts. These images may not lazy load automatically.
That can be fine for a hero image, because it should usually load right away. But if you have background images far down the page, they may be slowing things down unnecessarily.
Check your page builder or performance plugin documentation to see whether background image lazy loading is supported. If not, consider replacing decorative background images with standard image blocks where appropriate.
5. Test Mobile, Not Just Desktop
Lazy loading problems often show up more clearly on mobile.
A page may feel smooth on your office desktop but slow on a phone using cellular data. Since many Canadian small business searches happen on mobile, this is where testing matters most.
Check:
- Homepage loading on a phone
- Service pages with images
- Menu pages for restaurants
- Listing pages for real estate
- Gallery pages for contractors
- Booking and contact pages
Scroll slowly and quickly. Images should appear before the visitor reaches them, not several seconds after.
6. Do Not Lazy Load Critical UI Elements
Some items should not be delayed because they affect navigation or trust.
Be careful with lazy loading:
- Logos in the header
- Navigation icons
- Call-to-action buttons
- Trust badges near the top of the page
- Payment icons near checkout
- Important accessibility elements
Small decorative icons are not usually the main performance problem. Delaying them can create visual glitches for very little benefit.
7. Be Careful on WooCommerce Pages
WooCommerce stores need extra caution.
Lazy loading product grid images is usually helpful. Lazy loading the main product image may not be. Lazy loading checkout-related elements can also cause unexpected behaviour if a plugin handles scripts poorly.
Test these pages after changing lazy loading settings:
- Shop page
- Category pages
- Product pages
- Cart
- Checkout
- Account area
If your store takes payments, bookings, delivery orders, or quote requests, do not push speed settings live without testing a real transaction flow. Use a staging site where possible.
When You Should Not Use Extra Lazy Loading
Lazy loading is useful, but more optimization is not always better.
You may not need an extra lazy loading plugin if:
- Your site already performs well
- You only have a few images per page
- Your theme already handles lazy loading correctly
- Your current caching plugin includes it
- You are not using heavy embeds or long pages
You should also avoid aggressive lazy loading if it causes:
- Blank image spaces while scrolling
- Hero images loading late
- Sliders breaking
- Gallery lightboxes failing
- Checkout or booking issues
- Layout shifting as images appear
If the cure makes the site feel broken, roll back the setting.
Lazy Loading and Layout Shift
One common lazy loading issue is layout shift. This happens when content jumps around as images load.
For example, a visitor starts reading a page, then an image loads above the text and pushes everything down. That feels messy and can cause accidental clicks.
To reduce layout shift, make sure images have defined dimensions or that your theme reserves enough space before the image loads. Most modern WordPress themes handle this reasonably well, but older themes and custom layouts can still cause problems.
If you notice jumping content, lazy loading may not be the only issue. The image dimensions, CSS, ads, fonts, embeds, or page builder layout may also need attention.
Lazy Loading and SEO
Lazy loading is generally safe for SEO when configured properly.
Search engines can usually process lazy-loaded images, especially when standard HTML image markup is used correctly. Problems are more likely when images are injected in unusual ways, hidden behind scripts, or missing helpful alt text.
For SEO-friendly lazy loading:
- Use normal WordPress image blocks where possible
- Add descriptive alt text
- Avoid hiding important content behind unnecessary scripts
- Do not lazy load the main content image if it hurts LCP
- Test important landing pages after changes
If you depend on image search, local SEO, or gallery-heavy service pages, check that your important images are still visible in the rendered page source and testing tools.
Lazy Loading on LiteSpeed Hosting
If your WordPress site is hosted on a LiteSpeed server, you may have access to server-friendly optimization through LiteSpeed Cache.
LiteSpeed Cache can typically handle caching and several front-end optimization features, including lazy loading options. The exact features and settings can change, so use the current official documentation when configuring it.
The main benefit is that caching, image optimization, and lazy loading can work together instead of being scattered across several overlapping plugins.
Be careful not to enable the same feature in multiple places. If WordPress, your theme, your CDN, and two optimization plugins are all trying to lazy load images, you may create conflicts.
A clean setup is usually better than a crowded one.
A Practical Lazy Loading Setup Checklist
Use this checklist when setting up or reviewing lazy loading on a WordPress site:
- Back up the site before making performance changes.
- Test current page speed and user experience before changing settings.
- Check whether WordPress native lazy loading is already active.
- Identify the main above-the-fold image on key pages.
- Make sure the hero or LCP image is not lazy loaded.
- Enable lazy loading for below-the-fold images if needed.
- Enable lazy loading for videos and iframes where appropriate.
- Optimize and resize images before relying on lazy loading.
- Check mobile behaviour on real devices.
- Test forms, bookings, galleries, sliders, carts, and checkout pages.
- Review Core Web Vitals after changes.
- Document what was changed so future updates are easier to troubleshoot.
Common Lazy Loading Problems and Fixes
Images Load Too Late
If images appear only after the visitor reaches them, the lazy loading threshold may be too strict.
Some plugins let you adjust how early images begin loading before they enter the viewport. Check the plugin documentation for current settings. If there is no adjustment available, consider using a different optimization approach.
Hero Image Appears Blank at First
This usually means the hero image is being lazy loaded when it should not be.
Exclude that image from lazy loading. If your plugin supports exclusions by class or selector, use the safest method recommended in its documentation.
Slider or Carousel Breaks
Some sliders rely on JavaScript that expects images to be available immediately.
Try excluding slider images from lazy loading. If that fixes the issue, keep the exclusion. A working slider is better than a slightly higher performance score.
Gallery Lightbox Stops Working
Gallery plugins can conflict with lazy loading scripts.
Update the gallery plugin, clear caches, and test again. If the issue remains, disable lazy loading for that gallery or ask the plugin developer for recommended compatibility settings.
PageSpeed Score Improves but Site Feels Worse
This happens more often than people admit.
If images pop in awkwardly, content jumps, or the top of the page feels slower, adjust the configuration. Do not chase a perfect score at the expense of the visitor experience.
How Often Should You Review Lazy Loading Settings?
Review lazy loading whenever you make major site changes.
Good times to check include:
- After changing themes
- After adding a page builder
- After redesigning the homepage
- After adding a new gallery or portfolio
- After adding WooCommerce
- After installing a caching or optimization plugin
- After adding third-party embeds
Also review performance as part of regular WordPress maintenance. Plugin updates, theme changes, and new content can change how lazy loading behaves.
What Ambrite Recommends
For most WordPress sites, start simple.
Use WordPress native lazy loading unless you have a clear reason to add more. Optimize your images. Use good hosting. Configure caching properly. Then test the actual pages that bring in leads, bookings, calls, or sales.
If your site is image-heavy, uses WooCommerce, or relies on many embeds, a performance plugin can help. Just configure it carefully and avoid overlapping tools that all try to do the same job.
If you would rather not troubleshoot this yourself, Ambrite can help with WordPress speed, hosting, and maintenance for Canadian small businesses. Our hosting starts at $7.99/month CAD, and our maintenance plans start from $49/month CAD.
Need someone to review your site’s lazy loading setup? You can contact Ambrite and we’ll take a look.
This article was written with the help of AI and reviewed by the Ambrite team. Pricing, features, and technical details may change — always verify with official sources before making decisions.
Was this article useful?
Related Articles
Your WordPress site loads in 8 seconds on mobile. Meanwhile, your competitor's site loads in 2...
Running a restaurant in 2026 means juggling a thousand things at once. Your WordPress site...
Your WordPress site has 47 active plugins and takes 8 seconds to load. Sound familiar? Plugin...
Your real estate website is more than just a digital business card—it's a 24/7 sales machine...
Your staff page hasn't been updated since Jessica left in 2022, and your services page still...
