Lazy Loading Checker
Check that lazy loading is used in the right places: below the fold, never on the main image, with the right attributes.
Privacy and cost
This tool runs in your browser. What you type or paste is not sent to our servers and it costs nothing to use.
How it works
- Paste the page HTML; <img> and <iframe> elements are read in your browser, ignoring <noscript>.
- The tool guesses the LCP image (the first non-tiny image) and flags loading="lazy" on it, as well as lazy images at the very top of the page.
- It also checks loading and fetchpriority values, lazy images without width/height, JavaScript lazy-loading patterns and iframes without loading="lazy".
- You get an image-by-image table you can export as CSV.
Example
Six images and a YouTube iframe: the first image (hero.jpg, 1200×600) has loading="lazy" and is flagged as an LCP risk; 3 images are lazy and 3 have no attribute; two far-down images with no attribute could be lazy; the last one is lazy without width/height; the YouTube iframe is not lazy. Result: 6 images, 3 lazy, 3 without loading, 0 of 1 iframes lazy.
What the result means
Native lazy loading saves bandwidth for offscreen content, but on the main image visible at load it delays the Largest Contentful Paint. The tool guesses that image from the HTML alone; it is an estimate, because it knows neither your CSS nor the screen size. Confirm with PageSpeed Insights or Chrome DevTools.
Common problems this tool helps with
- loading="lazy" on the top-of-page image, which delays the largest element from painting.
- Dozens of below-the-fold images loaded eagerly.
- Lazy images without width/height that shift the layout when they arrive.
- YouTube or map iframes loaded immediately, heavy for what they contribute.
Frequently asked questions
Should every image be lazy?
No. Keep it for images below the fold. The main image visible on load should load immediately, ideally with fetchpriority="high".
What does fetchpriority="high" do?
It tells the browser an image is a priority so it fetches it earlier. It works best when rare: one or two images.
Does native lazy loading work on iframes?
Yes, loading="lazy" also applies to iframes in current browsers. It helps with embedded videos and maps placed further down.
What if my site already uses a lazy-loading script?
The tool flags it (data-src, lazyload class). Native loading="lazy" removes the dependency on JavaScript and keeps working if the script fails.
Related tools
- Image Dimension AnalyzerCheck that every image declares its dimensions and responsive versions, and optionally compare the real file size with the size shown on the page.Free · runs in your browser
- Image SEO ChecklistReview your images with an interactive checklist: format, weight, file names, markup, loading and indexing.Free · runs in your browser
- Image Alt CheckerAudit every image on a page: alt missing, empty, too long, copied from the file name or repeated. Paste the HTML or fetch a public URL.Free · no account needed
- PageSpeed and Lighthouse AuditEnter a URL and choose mobile or desktop: the tool queries Google's PageSpeed Insights API and clearly separates the lab test from real-user data.Free account · 3 live checks/day
- Core Web Vitals LookupEnter a URL: the tool shows only real Chrome user data (28 days), with no lab test, and explains clearly when none exists.Free account · 3 live checks/day
- Image Filename SEO CheckerCheck that your images have readable names: descriptive, lowercase, hyphen-separated and free of camera-style names.Free · runs in your browser