WEBPery

Practical image SEO. Alt text, file names, structured data, image sitemaps, and the technical details that determine how Google indexes your images.

Making Your Images Discoverable in Search

Image search drives non-trivial organic traffic to ecommerce, publishing, and visual reference sites — and image signals also influence how the main web search ranks the page hosting them. This guide covers every signal Google uses to understand and rank an image, with the technical details that determine whether you benefit from them.

For the performance side of image optimisation, see WebP Optimisation. For the format conversation, see WebP format overview.

What image SEO actually optimises for

Two distinct outcomes:

  1. Visibility in Google Images — your images appear as direct results in image search, with the source page linked.
  2. Contribution to the parent page's web search ranking — image signals (alt text, captions, surrounding content) feed into Google's understanding of the page topic.

Both matter. Most teams optimise for the second and ignore the first. Image search referrals are smaller than web search referrals in absolute numbers, but the conversion intent on a query like "leather messenger bag brown" with an image click is high.

Alt text

Alt text is the single most important on-page signal Google uses to understand an image. It serves three purposes:

  1. Accessibility — screen readers announce alt text in place of the image.
  2. Fallback — when the image fails to load, the alt text is displayed.
  3. SEO — search engines treat alt text as content.

Good alt text

  • Describes the image specifically. "Brown leather messenger bag on wooden desk" beats "messenger bag".
  • Includes naturally relevant keywords when they describe the image accurately.
  • Reads as a complete short phrase, not a comma-separated keyword list.
  • 60–125 characters is a reasonable target; longer is fine when the image content warrants it.

Bad alt text

  • Missing entirely (<img alt="">) — accessibility regression and SEO miss.
  • Empty string — appropriate only for purely decorative images that screen readers should skip.
  • File name as alt (alt="IMG_0234.jpg") — useless.
  • Keyword stuffing (alt="messenger bag brown leather mens bag bags messenger") — counts against you, both for SEO and accessibility.
  • Identical alt text across many images — Google detects this and discounts it.

Decorative vs informative

If an image is purely visual decoration (a separator graphic, a background pattern), use alt="". Screen readers skip empty alt, and you avoid clutter. Decorative images do not need SEO alt text.

If an image conveys information (a product photo, a chart, an illustration of a concept), it needs descriptive alt text.

File names

Image file names appear in Google Images results and in the URL preview. Two recommendations:

  • Use descriptive, hyphen-separated lower-case names: brown-leather-messenger-bag.webp.
  • Avoid GUIDs and timestamp filenames: IMG_20250524_134522.webp carries no signal.

Some CMS pipelines automatically rename uploads. If yours does, configure the renamer to use the slug of the surrounding content rather than a hash.

Surrounding content

Google uses the text near an image to understand it — captions, paragraphs above and below, headings, and surrounding link anchor text. This is a stronger signal than alt text alone for understanding image context.

Practical implications:

  • Place product images near product names and descriptions, not in a separate section of the page.
  • Caption images with <figcaption> when a caption adds useful context.
  • Avoid putting all images in a separate gallery component with no contextual text.
<figure>
  <img src="/img/messenger.webp" alt="Brown leather messenger bag on wooden desk" width="800" height="600" />
  <figcaption>The Hartford messenger bag, hand-stitched in Italian leather.</figcaption>
</figure>

<figure> and <figcaption> create explicit structural association between an image and its caption, which Google understands.

Structured data

For images that are key to a page's purpose, structured data sharpens Google's understanding.

Product images

{
  "@context": "https://schema.org",
  "@type": "Product",
  "name": "Hartford Messenger Bag",
  "image": [
    "https://example.com/img/messenger-1200.webp",
    "https://example.com/img/messenger-1200-side.webp",
    "https://example.com/img/messenger-1200-open.webp"
  ],
  "description": "Hand-stitched leather messenger bag from Hartford & Sons."
}

Always provide multiple high-resolution images in the image array — Google Shopping and image search both benefit. Use absolute URLs.

Article images

{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "...",
  "image": ["https://example.com/img/hero-1200.webp"]
}

The image property on Article schema is what Google uses for the rich snippet image in news and discover surfaces.

ImageObject

For dedicated image pages (a portfolio entry, a stock photo listing):

{
  "@context": "https://schema.org",
  "@type": "ImageObject",
  "contentUrl": "https://example.com/img/sunset-1200.webp",
  "creator": { "@type": "Person", "name": "Photographer Name" },
  "license": "https://creativecommons.org/licenses/by/4.0/",
  "creditText": "Photographer Name",
  "copyrightNotice": "© Photographer Name, 2026",
  "datePublished": "2026-04-12"
}

Google Images shows licence information directly in the image preview when this is present, which improves click-through for licensable content.

Image sitemaps

For sites with many images that may not be discovered through normal crawling (lazy-loaded, JavaScript-rendered, behind tabs), submit an image sitemap.

<?xml version="1.0" encoding="UTF-8"?>
<urlset
  xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
  xmlns:image="http://www.google.com/schemas/sitemap-image/1.1">
  <url>
    <loc>https://example.com/products/messenger-bag</loc>
    <image:image>
      <image:loc>https://example.com/img/messenger-1200.webp</image:loc>
      <image:caption>Hartford messenger bag, brown leather</image:caption>
    </image:image>
    <image:image>
      <image:loc>https://example.com/img/messenger-1200-side.webp</image:loc>
    </image:image>
  </url>
</urlset>

Image sitemaps complement rather than replace the regular sitemap. They are most valuable for image-heavy sites with thousands of assets.

Format and Google's indexing

Google indexes WebP, AVIF, JPEG, PNG, GIF, SVG, and BMP. There is no format penalty in image search. Use whatever format is appropriate for the content — usually WebP with a JPEG/PNG fallback. See WebP Browser Support.

Google does not index image content that requires JavaScript execution to be revealed. If your images are loaded by client-side JS without server-rendered HTML, they may be missed. Mitigations:

  • Server-render the <img> tag with the correct src (or srcset).
  • If lazy-loading via JavaScript, ensure the final src is discoverable in the rendered HTML — Google's renderer can execute JS but lazy-load libraries with unusual implementations sometimes fail.
  • Native loading="lazy" is always crawl-safe.

Image dimensions and resolution

Google Images prefers high-resolution images for results. Two recommendations:

  • Serve at least one large variant (1200px on the longest edge or larger) so Google has a high-resolution image to display.
  • Use srcset with multiple sizes so users get the right resolution for their device while Google still has access to the full-resolution version.

Avoid serving only thumbnail-sized images. They make for poor Google Images results.

EXIF and metadata

EXIF metadata (camera model, timestamp, GPS coordinates, copyright) is not a major SEO signal but matters in two specific cases:

  • GPS-tagged images can appear in location-based image searches.
  • Copyright metadata is shown in Google Images preview and is good practice for licensed content.

WebP supports EXIF. By default, encoders strip metadata for file size reasons. To preserve it:

cwebp -metadata all input.jpg -o output.webp

For most public-facing images, strip metadata for privacy and file size. For copyrighted images where attribution matters, preserve it.

Image accessibility as SEO

Google evaluates accessibility signals as part of overall page quality. Alt text is the most direct one, but also:

  • Sufficient colour contrast in images that contain text overlays.
  • Avoid text in images for content that should be searchable — use HTML text overlaid on an image instead.
  • Provide transcripts for images that are screenshots of text (charts, infographics).

These are accessibility wins that incidentally help SEO.

What does not matter

A few myths worth retiring:

  • Image format alone is not a ranking signal. WebP does not rank better than JPEG.
  • Image file size affects performance metrics (LCP) which influence ranking, but is not directly evaluated.
  • Image quantity is not directly evaluated — you do not "earn" ranking by having more images.
  • The title attribute on <img> is not used for image search.
  • Image hosting domain is not a ranking signal — first-party and CDN hosting are equivalent.

Common audits

Before launching a content page:

  1. Every meaningful image has descriptive alt text.
  2. Decorative images have alt="".
  3. File names are descriptive, not GUIDs.
  4. width and height are present (prevents CLS — see Core Web Vitals & Images).
  5. The LCP image is preloaded and not lazy-loaded (see WebP Lazy Loading).
  6. Product or article structured data includes high-resolution image URLs.
  7. Image sitemap is submitted (for image-heavy sites).
  8. srcset covers the device range you actually serve.

Local and geo-tagged image SEO

For businesses with a physical location, geo-tagged imagery contributes to local search visibility. Two signals:

  • EXIF GPS coordinates on images of the physical location, shop interior, or product photography taken on-site. Google uses these for location-based image search relevance.
  • Structured data with a contentLocation property on ImageObject schema. More explicit than EXIF and easier to maintain at scale.
{
  "@context": "https://schema.org",
  "@type": "ImageObject",
  "contentUrl": "https://example.com/img/shop-front.webp",
  "contentLocation": {
    "@type": "Place",
    "address": "123 Example Street, Sydney NSW 2000"
  }
}

This is a niche signal but matters for local businesses where photo discoverability drives foot traffic.

Where to go from here

Image SEO compounds: every image you ship correctly contributes to one specific page's ranking and potentially appears in image search. Get the fundamentals right and the long tail accrues.

WebP on WordPress: Plugins & Optimisation Guide

Add WebP to your WordPress site. Native support, plugin choices, automatic conversion, lazy loading, and serving WebP with fallbacks.

WebP on Shopify: Theme Setup & Image Optimisation

Shopify serves WebP automatically — here's how the CDN works, what theme code you control, and how to optimise product imagery for speed.

WebP in React: Next.js Image & Build Pipelines

Ship WebP in React apps. Next.js Image component, Vite/Webpack pipelines, picture-element patterns, and lazy loading for modern React stacks.

WebP Optimisation: Complete Guide to Faster Image Loading

Optimise WebP images for fast page loads. Practical guide to quality settings, responsive delivery, lazy loading, and Core Web Vitals.