Initial assessment without passwords Quote before intervention One accountable specialist from start to finish

Images Responsive Media

Image Lazy Loading Makes the Main Content Appear Later

Diagnose WordPress lazy loading that delays the hero or main image, and exclude only the critical media without disabling lazy loading site-wide.

Lazy loading should save work below the fold. When it is applied to the first meaningful image, however, the browser may wait too long to discover or request that file. The page can show an empty hero while less important resources load.

The repair is not to disable lazy loading everywhere. Identify the actual main image, confirm how it is being delayed and exclude only media that should load immediately.

Reproduce the delayed image on a cold visit

Open the affected page in a private window with the browser cache disabled. Apply mobile network throttling and reload from the top. Record which visual region remains blank.

In the Elements panel, determine whether it is an <img>, <picture>, CSS background or a JavaScript-created slider. Then inspect the network request. Note when it starts, its priority and what initiated it.

This separates a lazy-loading delay from a slow server, oversized file or late JavaScript rendering. An image that starts early but downloads slowly needs a different fix.

Look for overlapping lazy-loading systems

Modern WordPress can add native loading="lazy" to eligible images. Themes, page builders, CDN features and optimisation plugins may add their own data attributes or placeholder scripts.

Typical signs of a second system include:

<img
  src="placeholder.svg"
  data-src="/wp-content/uploads/hero.webp"
  class="lazyload"
  loading="lazy"
  alt="Emergency WordPress repair"
>

The real URL is hidden in data-src until JavaScript moves it into src. Adding native lazy loading as well does not make this faster. Establish which component owns the behaviour before changing exclusions.

Identify the likely LCP image

Run a browser performance trace or inspect the Largest Contentful Paint result in a lab test. Confirm the element rather than assuming every large hero is LCP.

If the first content image is LCP, it normally should not be lazy loaded. It should have an immediately discoverable src or <source> and correctly sized responsive candidates. For an important image, the markup may use:

<img
  src="/wp-content/uploads/repair-team-1280.webp"
  srcset="/wp-content/uploads/repair-team-640.webp 640w,
          /wp-content/uploads/repair-team-1280.webp 1280w"
  sizes="100vw"
  width="1280"
  height="720"
  fetchpriority="high"
  alt="WordPress repair specialist at work"
>

Use fetchpriority="high" sparingly. Marking several images high priority makes the signal less useful and can compete with CSS, fonts or the true LCP resource.

Exclude the smallest possible target

Most optimisation tools can exclude an image by class, URL fragment, attachment ID or position. Prefer a stable, narrow selector assigned specifically to the hero. Avoid exclusions such as every image in the header if only one file is critical.

After configuring the owning system, inspect the final HTML received by a logged-out visitor. The main image should expose its real URL without waiting for a scroll event. Below-the-fold images should retain lazy loading.

If a page builder regenerates markup, document the exclusion. A future template edit may change the class or recreate the widget.

Check sliders and JavaScript-rendered heroes

A slider can delay the first slide even after loading="lazy" is removed. Some libraries initialise all slides after the document is ready, inject image URLs from JSON or wait for fonts before calculating dimensions.

Temporarily test a static first slide in a staging copy. If the static image becomes visible much earlier, the slider’s initialisation is the bottleneck. Do not preload every slide as a workaround; that transfers media visitors may never see.

Often the safest design is a real HTML image for the initial slide, with later slides enhanced after the primary content is usable.

Preserve dimensions and the visible crop

Removing a placeholder system can reveal missing width and height attributes. Add intrinsic dimensions or a stable aspect ratio so the layout reserves space before the file arrives.

Compare desktop and mobile crops. A theme may have used JavaScript to select a different file or apply object-fit. The performance fix must not stretch portraits, hide product details or introduce a layout shift.

Verify more than the PageSpeed score

Repeat a cold mobile test after clearing page, CDN and generated asset caches. Confirm:

  • the critical image request begins earlier;
  • its URL is visible in initial markup;
  • only the true primary image receives high priority;
  • below-the-fold images still wait;
  • LCP improves without increasing layout shift;
  • forms, menus and sliders still work.

Also inspect a few different templates. A global “first image” exclusion can accidentally preload a logo, tracking pixel or thumbnail instead of the content image.

When specialist repair is appropriate

Ask for a performance assessment when multiple plugins rewrite image markup, the first slide is generated by JavaScript or exclusions change across templates. Send the affected URLs, device conditions and any optimisation changes already attempted; do not send credentials through an enquiry form.

The repair should identify one owner for lazy loading, protect the actual LCP element, retain savings below the fold and verify the result on logged-out mobile visits.

BEFORE YOU SEND THE REQUEST

Frequently asked questions.

Do you ask for passwords in the form?+

No. The public form never requests access. Secure credentials are requested only after the scope and quote are approved.

Who reviews the incident?+

The request goes to Jordi Ensenyat, founder of Code Barcelona and a WordPress specialist with more than 15 years of experience.

Is anything changed before the quote?+

No. Visible symptoms and scope are reviewed first. Intervention begins after approval and with a rollback path prepared.

Do you work internationally?+

Yes. WP Repair handles WordPress and WooCommerce incidents in English and Spanish through a remote service.

Assess my incident