Skip to main content
web60

SEO & PageSpeed

WordPress Image SEO: Why Your Photos Look Fine but Google Disagrees

Graeme Conkie··11 min read
Abstract flat illustration of digital image files being processed and optimised, teal shapes on warm stone grey background

As long as your images look good, your image SEO is sorted. That is one of the more persistent myths in the WordPress world. It comes from the right instinct — visual quality matters — but it misses the other half of the picture. An image that looks sharp to a visitor can be invisible to Google, a dead weight on your page load time, and a drain on your search rankings, all at once, without your site looking any different to a visitor.

I am going to cover four aspects of WordPress image SEO that most business owners overlook. Each one is fixable without a developer. Start with whichever applies most to your site.

The File Name Problem Google Cannot Ignore

When Google crawls your website, it reads everything it can find about each image before applying its own computer vision analysis. That starts with the file name.

If your photograph arrives from your camera or phone as IMG_0847.jpg and you upload it exactly like that, you have handed Google almost nothing to work with. As Google's Search Central documentation states directly, a descriptive filename like handmade-leather-belt-natural-tan.jpg tells both the search engine and any screen reader what the image contains before anyone looks at it. Generic filenames contribute nothing.

The same principle applies to alt text. Reviewing site audit data this month, roughly three in four websites either omit alt text entirely or fill the field with repetitive keyword strings. Neither approach works. Google uses alt text alongside its computer vision to understand the subject matter of an image — and its documentation is explicit that alt text should describe what the image shows, using relevant terms naturally and in context. "Leather belt hanging on a wooden peg in a workshop" is useful. "Leather belt buy leather belt leather accessories Ireland" is flagged as spam.

This fix requires no plugin and no technical knowledge. Before uploading to WordPress, rename the file to something descriptive — your operating system lets you do this in two seconds. Then fill in the Alt Text field inside WordPress's media uploader when it appears. That is the complete process.

Your Hero Image Is Probably Failing the Page Load Test

According to the HTTP Archive's 2025 Web Almanac, which analyses billions of real page loads, images are the Largest Contentful Paint element on around 76% of mobile pages. LCP measures how quickly the biggest visible element on a page loads. The threshold for a "good" score is 2.5 seconds. Currently, only around 62% of mobile pages worldwide reach that threshold.

The most common reason sites fail: an oversized hero image that takes too long to download on a mobile connection.

Consider a scenario that plays out constantly across Irish business websites. A wedding photographer in Wicklow builds a portfolio site on WordPress. Every gallery image goes straight from the camera — typically 6 to 8 megabytes per file — into the media library. On a fast desktop connection the site feels fine. On a phone with a patchy signal, a potential client is waiting three to five seconds for the page to draw. Google's crawler records a poor LCP score. Neither the visitor nor the ranking signal stays long enough to matter.

Abstract flat illustration showing digital image files flowing through optimisation layers, teal shapes on warm stone grey background
Images are the LCP element on around 76% of mobile pages — the single highest-impact target for most site speed improvements.

The target for a hero image is under 100 kilobytes where possible, and no more than 200 kilobytes for above-the-fold content. Reaching that requires deliberate resizing to the actual display dimensions — not just compression — before or at the point of upload. WordPress does resize uploaded images into several intermediate sizes automatically. It does not touch the original file, which remains in the media library at full size.

One important thing to verify: lazy loading. Lazy loading defers an image's download until the user scrolls to it, which makes sense for images below the fold. Applied to your hero image — the element that is already visible when the page opens — it forces both Google and your visitor to wait for something that should load first. The HTTP Archive found that around 17% of mobile pages lazy-load their LCP image, producing the exact opposite of the intended result. If your WordPress theme has a blanket lazy-load setting, exempt your hero or featured image from it explicitly.

For a broader view of how page speed connects to performance signals across the full stack, The Complete WordPress Performance Guide covers the layers beneath your site's load time in detail.

Still Uploading JPEGs in 2026?

WebP has had near-universal browser support for several years. WordPress added native WebP upload support in 2021. And yet, according to the same HTTP Archive 2025 data, only around 11% of LCP images across the web are served in WebP format. The majority are still JPEG.

Google's own benchmarks — independently validated through 2026 — put WebP at somewhere between 25% and 34% smaller than an equivalent-quality JPEG. AVIF produces smaller files still, though slower decode times can cause issues on older phones, making WebP the practical default for most business sites.

An image optimisation plugin handles the conversion automatically. You upload a JPEG; the plugin converts it to WebP and serves the converted version to browsers that support it, which is the overwhelming majority of devices in use today. Plugins like ShortPixel and Imagify both work this way. The process is invisible. The result is smaller files, faster page loads, and better LCP scores without any visible change to how your images look.

One honest note on this: these plugins involve trade-offs. Free tiers come with monthly limits on the number of images converted. For a site with a modest and growing library, the free tier of most plugins handles new uploads indefinitely. For a site with thousands of existing images requiring bulk conversion, there will be a cost. That is a genuine consideration. The ongoing overhead after initial setup is minimal — new uploads convert automatically from that point forward, and you stop thinking about it.

What Structured Data Does for Your Images

Most people associate schema markup with rich results on Google search listings — star ratings, event dates, FAQ dropdowns. Fewer realise it directly affects how images appear in Google Image Search.

For visual businesses — photographers, restaurants, furniture designers, florists, jewellers — Google Images is a meaningful discovery channel. When your page includes valid structured data with an image property, Google can attach a badge to your image in image search results. A product photo appears with a "Product" badge. A recipe image carries the recipe name alongside it. These badges make your images identifiable and clickable in a way that unstructured images are not.

As I covered in Your Core Web Vitals Score Is Not a Google Ranking, search visibility is not a single metric — it is a cluster of overlapping signals. Google Image Search is one of those channels, and optimising for it costs nothing beyond configuring structured data correctly. The schemas that support image badges include:

  • Article — for blog posts and news items (set a featured image)
  • Product — WooCommerce generates this by default with image properties included
  • Recipe and Event — useful for hospitality and venue pages
  • LocalBusiness — general business pages with a primary image

Both Yoast SEO and Rank Math generate Article schema automatically when you set a featured image on a post or page. For custom page types, verify your SEO plugin is configured to include the image field.

The One Scenario Where Standard Optimisation Falls Short

For most business sites — professional services, hospitality, portfolios, local retail, service businesses of any kind — a WordPress image optimisation plugin combined with sensible file naming and alt text handles image SEO comprehensively. The plugin converts to WebP. The hosting stack serves the result efficiently. The search signals are in place.

There is one genuine exception worth naming. If you are running a large eCommerce catalogue with hundreds or thousands of SKUs, each photographed from multiple angles at high resolution and served at varying dimensions across desktop, mobile, and product listing pages simultaneously, a dedicated image delivery CDN built specifically for that volume handles it better than a WordPress plugin alone. That class of tooling was designed for high-volume image delivery at scale. Standard managed WordPress hosting was not.

For the vast majority of Irish businesses, that threshold is comfortably out of reach. The plugin approach works well.

How Web60's Stack Handles This

Web60 runs on a Nginx, PHP-FPM, Redis, and FastCGI caching stack — the infrastructure layer that determines how efficiently correctly-optimised images are delivered once they are in your media library. When your images are sized and formatted correctly, the server is not the bottleneck. When a 6MB JPEG needs to be processed and served without any prior optimisation or caching in place, it is.

The stack was built for Irish traffic patterns specifically. TTFB and LCP figures that matter to Google reflect actual performance for your actual visitors — not benchmarks measured from a Virginia data centre and applied globally. Once your images are prepared correctly, the delivery layer handles the rest without additional configuration on your part.

If you are starting fresh or migrating an existing site, Web60's €60/year all-inclusive managed WordPress hosting includes the full stack — Nginx, Redis, FastCGI caching, automatic nightly backups — configured to make the most of assets you have taken the time to prepare correctly.

Conclusion

Compressing images once and forgetting about them is better than doing nothing. It is not the same as image SEO.

Four things that change your situation permanently: rename image files before uploading. Write descriptive alt text at upload time. Install an image optimisation plugin that converts new uploads to WebP automatically. Verify that your hero or featured image is not subject to blanket lazy loading.

None of these require a developer. Most require five minutes of changed habits. The compound effect — every image uploaded correctly from this point forward — is a cleaner media library, faster LCP scores, and content that Google can actually read and present.

Your photographs have already done the hard work. Give Google a reason to show them.

Frequently Asked Questions

Does image file size affect my Google ranking?

Indirectly, yes. Google uses LCP (Largest Contentful Paint) as a Core Web Vitals signal, and images are the LCP element on around three quarters of mobile pages. A large, unoptimised hero image produces a poor LCP score, which feeds into Google's page experience signals. It is not a direct ranking factor in isolation, but it is part of the cluster of signals that affect how Google evaluates your page.

What should I write in the alt text for my WordPress images?

Describe what the image actually shows, concisely and naturally. "A slate grey kitchen with underlit oak cabinets and a Belfast sink" is good alt text for a kitchen photo. Do not use the page title, your business name, or a string of keywords — Google explicitly flags keyword-stuffed alt text as a negative signal. Good alt text also improves accessibility for visitors using screen readers.

Should I use WebP images on my WordPress site?

Yes. WebP produces files somewhere between 25% and 34% smaller than equivalent-quality JPEGs, with near-universal browser support across devices currently in use. An image optimisation plugin like ShortPixel or Imagify converts uploads to WebP automatically. WordPress has supported WebP uploads natively since version 5.8.

What is LCP and why does it matter for my site?

LCP stands for Largest Contentful Paint. It measures how quickly the most visible element on a page loads from the user's perspective. Google's threshold for a good score is 2.5 seconds. On most websites that element is the hero or featured image. A poor LCP score feeds into Google's page experience signals, which contribute to how your page ranks. You can verify your LCP score in Google Search Console under the Core Web Vitals report.

How do I verify whether my images are slowing down my site?

Use Google Search Console's Core Web Vitals report, which shows real-world LCP data gathered from actual visitors to your pages. For a faster initial check, paste your URL into Google PageSpeed Insights at pagespeed.web.dev — it identifies oversized images, unoptimised formats, and incorrectly lazy-loaded LCP elements directly in the diagnostic output.

Sources

HTTP Archive Web Almanac 2025, Performance chapter

Google Search Central, Image SEO Best Practices

SE Ranking, SEO Statistics 2026 — industry compilation; used for alt text adoption estimate only

Graeme Conkie
Graeme ConkieFounder & Managing Director, Web60

Graeme Conkie founded SmartHost in 2020 and has spent years building hosting infrastructure for Irish businesses. He created Web60 after seeing the same problem repeatedly — Irish SMEs paying too much for hosting that underdelivers. He writes about WordPress infrastructure, server security, developer workflows, managed hosting strategy, and the real cost of hosting decisions for Irish business owners.

More by Graeme Conkie

Ready to get your business online?

Describe your business. AI builds your website in 60 seconds.

Build My Website Free →
Buy NowTry Free
WordPress Image SEO: Speed, Alt Text & Rankings | Web60