SM
Devs.
Home/Blogs/How to Optimise Images for SEO: Complete Guide (2026)

How to Optimise Images for SEO: Complete Guide (2026)

Posted by:SM Developers Team
Date:July 11, 2026
Read time:6 min read
How to Optimise Images for SEO: Complete Guide (2026)

Key Takeaways

  • Image optimisation is a critical but often overlooked aspect of SEO. Slow, poorly labelled images hurt rankings and user experience. This guide covers compression, WebP format, alt text, descriptive filenames, lazy loading, and image schema markup.

Why Image SEO Matters

Images are one of the most common causes of slow page load times — and page speed is a Google ranking factor. Unoptimised images can increase page load time by 3–5 seconds. Additionally, properly tagged images rank in Google Images, bringing additional organic traffic.

1. Compress Images Before Uploading

The single biggest win. A 4MB image can usually be compressed to 200KB with no visible quality loss:

  • TinyPNG / TinyJPG: Free web tool, excellent quality
  • Squoosh: Google's free tool with fine control
  • ShortPixel: WordPress plugin for automatic compression

Target file sizes: Blog hero images under 200KB. Thumbnails under 50KB. Icons under 10KB.

2. Use Modern Image Formats

WebP format offers 25–34% smaller file sizes vs JPEG/PNG at equal quality. Next.js automatically serves WebP via its <Image> component. For regular HTML sites, use:

<picture>
  <source srcset="image.webp" type="image/webp">
  <img src="image.jpg" alt="description">
</picture>

AVIF is even newer and smaller than WebP — browser support is growing (now at ~90%).

3. Write Descriptive Alt Text

Alt text serves two purposes: accessibility (screen readers) and SEO (helps Google understand the image).

Bad alt text: alt="image1.jpg" or alt="" (empty)

Good alt text: alt="MACD indicator showing bullish crossover signal on Nifty 50 daily chart"

Rules for alt text:

  • Describe what's in the image accurately
  • Include your target keyword naturally where relevant
  • Keep it under 125 characters
  • Don't start with "Image of..." or "Picture of..."

4. Use Descriptive, Keyword-Rich Filenames

Bad filename: IMG_20240315_123456.jpg

Good filename: macd-indicator-bullish-crossover-nifty50.jpg

Use hyphens (not underscores) to separate words. Google reads hyphens as word separators.

5. Implement Lazy Loading

Images below the fold should load only when the user scrolls to them:

<img src="image.jpg" alt="description" loading="lazy">

In Next.js, all images below the fold are automatically lazy-loaded when using the <Image> component.

6. Set Explicit Width and Height

Always specify width and height to prevent Cumulative Layout Shift (CLS) — a Core Web Vital. Without dimensions, the page "jumps" as images load, hurting user experience and rankings.

<img src="image.jpg" alt="..." width="800" height="450">

7. Use a CDN for Image Delivery

A Content Delivery Network (CDN) serves images from the closest server to the user. Cloudinary and Imgix specialise in image CDNs with automatic optimisation. Vercel's image optimisation works automatically for Next.js projects.

8. Add Image Structured Data

For important images (product images, recipe photos, infographics), add schema markup to help Google understand them for rich results.

Share This Story
"Fascinating read. Great insights on SEO!"