Search Intent: How to Identify It and Build the Right Page
Search intent explained in practice: the four types, how to read it from live Google results and which page to build for each one, with examples.
Key takeaways
Image SEO means choosing a modern format (usually WebP), giving images the size the page actually needs, naming and describing them clearly, and loading them so they do not slow the page down. The payoff is twofold: faster pages, which means better Core Web Vitals, and images that Google can understand and index in Google Images.
Images are usually the heaviest part of a page and among the easiest to improve. They do not call for rewriting code, just a simple working discipline. Below you will find formats, compression steps, correct HTML, rules for alt text, and a checklist. It is one of the best effort-to-result items in on-page SEO.
Three reasons, from the most practical to the most strategic:
Plus one reason that has nothing to do with rankings: accessibility. Alt text is how someone using a screen reader learns what an image shows.
The choice depends on the type of image. Google Images indexes BMP, GIF, JPEG, PNG, WebP, SVG, and AVIF, so you are free to use modern formats.
| Format | Best for | Advantage | Drawback |
|---|---|---|---|
| JPEG | Photos | Works everywhere | Larger files than WebP/AVIF |
| PNG | Screenshots, graphics with text, transparency | Lossless, transparency | Heavy for photos |
| WebP | Almost any web image | Smaller than JPEG/PNG at similar quality; supported by modern browsers | Some older software cannot open it |
| AVIF | Photos, when you want very small files | Often the smallest file | Slower encoding; a fallback is recommended |
| SVG | Logos, icons, simple illustrations | Vector, scales without loss | Not for photos |
| GIF | Short animations (prefer video or animated WebP) | Universal | Very heavy, poor quality |
Google's WebP project documentation states that lossy WebP images are 25–34% smaller than comparable JPEGs at an equivalent SSIM quality index, and that lossless WebP images are 26% smaller than PNGs. Results depend on the image, so treat these figures as an order of magnitude, not a promise.
Working rule: WebP by default, SVG for logos and icons, AVIF optional for large images with a WebP or JPEG fallback, and JPEG/PNG only where you need compatibility.
cwebp tool (the second example converts a whole folder):cwebp -q 80 robot-vacuum-x200.jpg -o robot-vacuum-x200.webp
for f in *.jpg; do cwebp -q 80 "$f" -o "${f%.jpg}.webp"; donesrcset.Rough weight benchmarks, offered by us as a starting point and not as a Google rule: hero image under 150–200 KB, article image under 100 KB, thumbnail under 30 KB. If a speed test shows images are still the problem, compress harder.
The file name is a small signal, but a free one. Google recommends descriptive names: black-robot-vacuum-x200.webp says something, IMG_4821.webp says nothing.
-), no spaces, diacritics, or special characters. Google's URL guidance recommends hyphens over underscores.solid-oak-living-room-furniture.webp, not furniture-furniture-living-furniture-cheap.webp.If you have many Romanian names with diacritics to fix, the diacritics and slug fixer quickly turns text into a clean form for URLs and files.
The alt attribute provides a text alternative for an image. A screen reader reads it, it appears if the image fails to load, and Google uses it, along with the surrounding text, to understand what the image shows. The W3C divides images into four types, and each is handled differently:
| Image type | Example | What to put in alt |
|---|---|---|
| Informative | Product photo, chart | Short description of what it shows and what matters |
| Decorative | Ornamental line, background | alt="" (empty but present) |
| Functional | Icon inside a button or link | The action, not the look: “Search,” “My cart” |
| Complex | Chart with lots of data | Short summary in alt + full description in the text |
Writing rules:
Examples:
alt="vacuum", alt="IMG_4821", alt="robot vacuum cheap best price robot vacuum".alt="Black X200 robot vacuum, top view, on a wooden floor".A well-written <img> element brings all the recommendations together. For the main image above the fold:
<picture>
<source type="image/avif" srcset="/img/robot-800.avif 800w, /img/robot-1200.avif 1200w" sizes="(max-width: 900px) 100vw, 800px">
<source type="image/webp" srcset="/img/robot-800.webp 800w, /img/robot-1200.webp 1200w" sizes="(max-width: 900px) 100vw, 800px">
<img src="/img/robot-800.jpg" width="800" height="533"
alt="Black X200 robot vacuum, top view, on a wooden floor"
fetchpriority="high" decoding="async">
</picture>For images below the fold:
<img src="/img/filter-480.webp" width="480" height="320"
alt="HEPA filter removed from the vacuum, held in a hand"
loading="lazy" decoding="async">What each piece does:
width and height reserve space and prevent layout shift (CLS).srcset and sizes let the browser choose the version that fits the screen.<picture> offers alternative formats: the browser picks the first source it understands.loading="lazy" defers loading of images far from the visible area.fetchpriority="high" tells the browser the main image is important; browsers that do not know it ignore it.decoding="async" allows decoding without blocking the rest of the page.loading="lazy" is one of the most effective optimizations, but it has a trap: if you put it on the main image, that image loads later and LCP gets worse. web.dev's recommendation is not to lazy load images in the first visible area.
The simple rule:
loading="lazy", with fetchpriority="high".loading="lazy".From an SEO standpoint, native lazy loading is generally fine, since Google can see images loaded this way when the markup is standard. Avoid solutions that put the real image address only in a custom attribute activated by complicated scripts.
Google's image documentation asks for a few verifiable things:
<img> with src. Google does not index images placed only as CSS backgrounds.Googlebot-Image.If you want product images shown with extra information in results, also complete the product structured data; our guide to Schema.org structured data shows how.
On WordPress, current versions automatically generate several sizes of each image and add srcset; you can upload WebP directly, and many themes use loading="lazy" by default. Watch for two things: the theme may also lazy load the main image, and optimization plugins can compress too aggressively. General settings are in the guide to WordPress SEO before launch.
In online stores, the volume of images is high: product galleries, category thumbnails, banners. The same rules apply, with clear priorities:
fetchpriority="high" on the product page;See also the guide to ecommerce SEO, where images are an important chapter.
| Check | What you are looking for | How to check |
|---|---|---|
| Format | WebP/AVIF/SVG, JPEG only as a fallback | Network tab in DevTools |
| Weight | No disproportionately large images | Speed test, DevTools |
| Dimensions | Images no larger than the displayed space | Compare real size with displayed size |
| width/height | Present on every <img> | Code inspection |
| srcset/sizes | Present on large images | Code inspection |
| Lazy loading | On below-the-fold images, not on the LCP | Inspection + speed test |
| File name | Descriptive, hyphenated | Media library/CMS list |
| Alt text | Present and useful | Crawler or extension |
| Indexing | <img src> in HTML, no robots block | URL Inspection in Search Console |
Well-prepared images are a small investment: once the workflow is set (resize, WebP, name, alt), every new image follows the same recipe. You get pages that are faster, more accessible, and easier for search engines to understand.
What you can do this week:
width, height, and loading attributes on the main image and the others.If your site has thousands of images or a large store, a plan for on-page SEO can define the loading rules and fix the existing batch, so it does not depend on each individual editor.
Frequently asked questions
There is no official limit. As a practical benchmark, content images often come in under 100–150 KB and thumbnails under 30 KB, but pixel dimensions and visual quality matter too. Judge by the effect on page speed, measured with a speed test.
Images that convey information need descriptive alt text. Purely decorative images get an empty alt (alt="") so screen readers skip them. The attribute should exist either way; a missing attribute is an error, while an intentionally empty one is not.
WebP usually produces smaller files at similar visual quality, which helps page speed. Google Images indexes WebP. The format does not bring rankings by itself; the benefit is indirect, through faster loading and a better LCP.
Yes, if they are indexable: included with <img>, surrounded by relevant text, named and described clearly, and not blocked in robots.txt. Traffic varies a lot by industry; it is very useful for products, recipes, travel, and design, and less so for abstract services.
Start with the most visited pages and the heaviest images. Compress and convert them in bulk, then fix the alt text on commercial pages. A plugin or script can do part of the work, but check the results visually.
Related service
Keep reading
Search intent explained in practice: the four types, how to read it from live Google results and which page to build for each one, with examples.
Keyword research in 5 steps: where to find terms, how to score them by value and winnability, how to map them to pages, and the mistakes that waste budget.
Internal linking explained: how to design site architecture, choose anchor text, find orphan pages, and direct authority toward the pages that bring revenue.
Send us your website address and we’ll reply with a free initial analysis and a concrete SEO strategy — no strings attached.