Driver FixRecommendedSound, Wi-Fi or graphics acting up? Check drivers firstFind missing or outdated drivers fast.Check DriversHalloween DealsAmazon USHalloween week deals: useful picks before month-endAmazon US: current deals, useful picks and tech finds.Check DealsSlow PC?RecommendedPC slow today? Run a repair scan before it gets worseResolve common Windows issues and optimize system performance.Scan Now×
Skip to content
World desk5 min

How to Use LQIP and Lazy Loading to Improve Page Performance

Lazy loading defers below-the-fold image requests; an LQIP smooths the wait. Use both without delaying your likely LCP image, and verify the impact with measurements.
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Use native lazy loading for images below the initial viewport, and keep the likely Largest Contentful Paint (LCP) image eager and discoverable. A low-quality image placeholder (LQIP) can make an image’s wait feel smoother, but it does not make the full-size image load sooner. These techniques solve different problems and should be measured separately.

What lazy loading and LQIP each do

Lazy loading defers the full image request until the browser judges that the image is near the viewport. For below-the-fold content, this can reduce competition for bandwidth and other resources, including for images a visitor never scrolls to. Because the browser needs layout information to estimate an image’s position, lazy loading can delay an image that is visible at first paint. web.dev’s guidance on browser-level image lazy loading explains the behavior.

As an Amazon Associate I earn from qualifying purchases.

An LQIP is a small, low-detail image shown temporarily while the full image loads. It can reduce the visual jolt of an empty image area, but it does not control when the full-size request starts. Keep the two controls conceptually separate: loading policy decides when the real image is requested; a placeholder changes what the reader sees while waiting.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Decide which images should load eagerly

Above-the-fold and likely LCP images

Do not add loading="lazy" to the likely LCP image or another image visible on initial load. Leave it readily discoverable in the initial HTML. If measurements show the request needs higher relative priority, consider fetchpriority="high". web.dev cautions: “The fetchpriority attribute is a hint, not a directive.” A preload can help expose a resource early when it would otherwise be discovered late, such as an image referenced in CSS; fetch priority affects the relative priority of a request once fetched. These controls address different stages and are not guarantees. See web.dev’s LCP guidance and Fetch Priority API guidance.

Which image is likely to be the LCP element can vary with viewport and layout. Check mobile and desktop rather than relying on a single global rule. A component or CMS setting that automatically marks every image lazy can inadvertently delay the hero image.

Images clearly below the fold

For ordinary content images below the initial viewport, native browser lazy loading is usually the simplest starting point:

<img src="article-image.webp" alt="Description of the image" width="800" height="533" loading="lazy">

Set intrinsic width and height so the browser can reserve space before the image arrives. This helps avoid layout shifts and gives the browser useful geometry. Do not apply lazy loading just because it is convenient; first confirm the image is not initially visible at relevant screen sizes.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Add an LQIP in Next.js without bloating the page

Next.js Image supports placeholder="blur". Supported static imports can have a generated blur data URL automatically, except for animated images. For dynamic or remote sources, provide blurDataURL yourself. Remote images also need dimensions because the build cannot inspect the remote file. See the current Next.js Image component documentation.

<Image
  src={photo}
  alt="A descriptive alternative"
  width={1200}
  height={800}
  placeholder="blur"
  blurDataURL={smallBlurDataUrl}
  loading="lazy"
/>

Use loading="lazy" in this example only when the image is below the initial viewport. For a likely hero or LCP image, remove lazy loading and assess eager discovery and priority instead. Next.js recommends a placeholder source image of 10 pixels or less because it is enlarged and blurred; its documentation also warns that a large blur data URL can hurt performance. Treat that size as Next.js guidance, not a universal web standard.

Check the documentation for the installed Next.js version before copying older examples. The current App Router docs say loading defaults to lazy and Next.js 16 deprecates priority in favor of preload. Choose the current API appropriate to the image’s role rather than adding both controls by habit.

Measure whether the changes helped

  1. Record a baseline. Use the same page, viewport or device class, and test conditions before and after. Record LCP and image bytes or request behavior.
  2. Check the hero request. Verify that the likely LCP image is discovered and requested promptly, and is not waiting on lazy-load layout decisions.
  3. Check below-the-fold requests. Confirm that images outside the initial viewport are deferred and that the page still loads them as the reader approaches them.
  4. Review field results by device class. Compare mobile and desktop separately and pay attention to the 75th percentile. web.dev defines good LCP as 2.5 seconds or less at the 75th percentile, separately for mobile and desktop: LCP overview.

Do not treat a smoother-looking placeholder as proof that LCP improved. In one web.dev Fetch Priority experiment, rewriting the Google Flights homepage using Cloudflare Workers changed LCP from 2.6 seconds to 1.9 seconds, a 0.7-second decrease. That is one experiment, not a forecast for other sites. Measure your own page and network conditions.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Common mistakes and fixes

  • The hero image appears late: remove loading="lazy" from the likely LCP image; ensure it is discoverable in initial markup, then test whether fetch priority or preload addresses the measured delay.
  • The blur placeholder adds unexpected page weight: reduce its source dimensions and data URL size. Next.js recommends a source image 10 pixels or less for this use.
  • A remote Next.js image has no blur or dimensions: supply dimensions and, when using placeholder="blur", a blurDataURL for dynamic or remote sources.
  • Images still download immediately: inspect whether they are actually below the fold, whether the lazy attribute reaches the rendered <img>, and whether another script or preload requests them earlier.
  • Performance scores vary between runs: compare under consistent conditions and use field data segmented by device class; network, cache, viewport, and page layout affect observed results.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Or skip the browser setup

If the goal is to capture a page as an image or PDF rather than tune your own site’s image loading, ScreenshotNeo is a website screenshot API and MCP server. Its one-request API can return a screenshot; it is not a substitute for implementing lazy loading or LQIP on a site.

For example, request a screenshot of a page with cURL:

curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp

See the ScreenshotNeo API documentation for request options. Cookie banners, popups, and chat widgets are removed before the shot; bot checks, blank pages, and failed loads are never billed. Its MCP server lets AI agents take screenshots. The free plan includes 1,000 screenshots a month with no card; paid plans start at $5 for 3,000. Sign up for ScreenshotNeo’s free plan.

Frequently Asked Questions

Does an LQIP make the full-size image load faster?

No. It provides a temporary visual while the full image loads; it does not accelerate the full-image request.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Should every image use lazy loading?

No. It is generally appropriate for images below the initial viewport, not the likely LCP or initially visible hero image.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
Crashes, No Sound, or Screen Glitches?Free driver scan
Windows Errors? Fix Them Before They SpreadFree repair scan

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.