Back to Blog

Image SEO Best Practices for 2026

May 11, 2026 8 min read Tutorials

Most "image SEO guides" rehash the same generic advice. Here's what actually moves the needle in 2026 — including some practices that have changed dramatically over the last two years.

Image SEO matters more than most people realize

Image SEO contributes to ranking in three direct ways: Google Images search drives traffic (often more than you'd think — about 20% of all Google searches are on the Images tab), image weight affects Core Web Vitals (the LCP metric especially), and proper image markup gives Google more context about your page's topic.

Sites that take image SEO seriously consistently outrank competitors who don't, all else being equal. It's one of the cheapest SEO wins available — most of the work is one-time setup that compounds for years.

File naming: small detail, real impact

Image file names appear in image search results and contribute to Google's understanding of what each image shows. image1234.jpg tells Google nothing. golden-retriever-puppy-sleeping.jpg tells Google exactly what's in the image and matches likely searches.

Practical rules: use hyphens (not underscores), use descriptive but concise filenames, include relevant keywords without keyword stuffing, keep filenames under 60 characters. "chicago-skyline-sunset.jpg" — good. "chicago-skyline-sunset-city-buildings-cityscape-urban-photo.jpg" — keyword stuffing, looks spammy.

Alt text: write for accessibility first, SEO second

Alt text serves two purposes: it's what screen readers read aloud to visually impaired users, and it's a major SEO signal Google uses to understand image content. Done right, both purposes are served by the same well-written description.

Good alt text describes what's in the image as if you were telling someone on the phone. "Golden retriever puppy sleeping on a red couch" — clear, specific, useful for both screen readers and Google. Bad alt text is generic ("image", "photo") or keyword-stuffed ("dog puppy golden retriever cute sleeping pet animal"). Both forms fail accessibility AND get discounted by Google.

When images are purely decorative (a divider, a flourish), use empty alt text (alt=""). This tells screen readers to skip the image, which is the right behavior. Don't omit the alt attribute entirely — that's interpreted as "alt text wasn't authored" and screen readers may try to use the filename as fallback.

Format choice and compression for both speed and quality

Use modern formats with fallbacks. WebP as primary format, JPG as fallback for older browsers. Use the <picture> element for both. AVIF is even more efficient but encoding takes longer; reserve it for hero images where the savings matter most.

Compress aggressively but smartly. JPG at 80-85% quality is the sweet spot — visually indistinguishable from 100% to most viewers, but 3-4x smaller files. WebP at 75% is comparable. Don't go below 70% for content images; quality artifacts become visible.

Size images to actual display size. A 2000-pixel-wide image displayed at 600 pixels wide is wasted bandwidth. Use the srcset attribute to serve different sizes to different devices.

Compress before uploading. Some platforms (WordPress with plugins, modern static site generators) compress automatically. If yours doesn't, run images through a compressor like ours before upload.

Lazy loading and rendering optimizations

Use native lazy loading. Add loading="lazy" to img tags below the fold. Browsers defer loading until the user scrolls near the image. Cheap performance win, supported in all modern browsers.

Specify width and height attributes. Browser reserves layout space for the image before it loads, preventing layout shift (which hurts Core Web Vitals' CLS metric). Set the intrinsic dimensions in the img tag even when you use CSS to control display size.

Use the <img> loading priority for hero images. The fetchpriority="high" attribute tells browsers to prioritize loading the main hero image, helping LCP scores.

Don't lazy-load above-the-fold images. Lazy loading something the user sees immediately just delays it. Reserve lazy loading for images below the initial viewport.

Structured data — telling Google what your images are

Schema.org markup gives Google explicit information about your images: what they show, who took them, license info, captions. For images that have business value (product photos, articles, recipes), proper schema can dramatically improve rich snippet display in search results.

Common schemas worth using: ImageObject for any prominent image (with name, contentUrl, license fields), Article with image property for blog posts, Product with image property for e-commerce, Recipe with image for cooking content.

Adding schema is mostly a copy-paste exercise — Schema.org provides examples, JSON-LD format goes in a script tag in your <head>. Google's Rich Results Test tool validates that your markup parses correctly.

Auditing your existing images for SEO wins

Most websites have years of accumulated images, many of them missing alt text, oversized, or poorly named. A one-time audit can identify the highest-impact fixes.

Step 1: List all images on your site. Use a tool like Screaming Frog SEO Spider (free for up to 500 URLs) to crawl your site and export every image URL with its alt text, file size, and dimensions.

Step 2: Find missing alt text. Sort the export by alt text column. Any rows with empty alt text need attention. Decorative images should have empty alt="" (semantic empty, not missing). Content images should have descriptive alt text.

Step 3: Find oversized images. Sort by file size. Anything over 200KB is a candidate for compression. Anything over 1MB is almost certainly oversized. Use our image compressor to bring these down to reasonable sizes.

Step 4: Find low-resolution images. Sort by dimensions. Images smaller than the size they're displayed at look soft on modern screens. Identify and replace with higher-resolution versions (or AI-upscale them — see our upscaler).

Step 5: Find generic filenames. Filter for filenames like "image1.jpg" or "DSC_0042.jpg." These contribute nothing to image search. Rename to descriptive keywords (this requires updating references throughout your site, so prioritize the most-visible pages first).

Step 6: Add structured data. For prominent images (article featured images, product photos, recipe images), add ImageObject schema. Most CMSes have plugins that handle this automatically.

A thorough audit on a 200-image site takes about a day of focused work and typically improves Image Search traffic measurably within 2–4 months.

Frequently asked questions

How long until image SEO improvements show in rankings?

Compressed files and Core Web Vitals improvements: 2–6 weeks. Alt text improvements: 4–8 weeks for image search appearance. Schema additions: 4–12 weeks for rich snippet eligibility.

What's more important — file size or quality?

Both — find the balance. Quality below 75% JPG starts looking compressed; quality above 90% wastes bandwidth. The sweet spot is 80–85% for most photos.

Should I use lazy loading on all images?

Yes for below-the-fold images. No for the hero image / first visible image (lazy loading delays it). Use loading="lazy" attribute for below-the-fold and fetchpriority="high" for the hero.

Will Google penalize me for using stock photos?

Not penalize — but stock photos used by hundreds of other sites don't add unique value. Original images consistently rank better in image search than stock alternatives.

What about image SEO for AI-generated images?

Google indexes them like any other image. The challenges: AI images sometimes have visual artifacts that affect quality signals, and authenticity concerns may affect future ranking algorithms. Use AI images thoughtfully.

Compress Images for Web

Browser-based, no upload, perfect for the workflow described in this article.

Open Image Compressor