Images make pages more engaging, easier to understand, and far more shareable. But they also come with a cost: an unoptimized image can weigh several megabytes, drag your load time to a crawl, and quietly push your rankings down. The good news is that image SEO is one of the most straightforward wins in technical SEO. A few deliberate habits — compressing files, picking the right format, sizing images correctly — can shrink your pages dramatically while opening up a whole extra traffic channel through Google Images.
In this guide, you will learn how to optimize images for search step by step, from compression and formats to responsive sizing, lazy loading, and cleaning up hidden metadata.
Images influence SEO in two ways. First, they affect how fast your page loads. Page speed is a confirmed ranking factor, and images are usually the single heaviest resource on a page. A product page with five 3 MB photos forces visitors to download 15 MB before they see anything useful. Most of them will not wait.
Second, images are a search destination of their own. Google Images handles a huge share of visual discovery, and a well-optimized image can rank there and send targeted traffic your way — especially for products, recipes, tutorials, and infographics. Search engines cannot "see" a picture the way humans do, so they rely on the clues you give them: the file name, the surrounding text, structured data, and the alt attribute.
Getting image SEO right means handling both sides: keeping files light and giving search engines clear signals about what each image shows.
Compression is the highest-impact step and the one most sites skip. Cameras and stock photo sites deliver files far larger than any web page needs. Running them through compression before upload typically cuts 60–80% of the file weight with no visible difference.
There are two kinds of compression worth knowing:
Aim for sensible targets rather than chasing the smallest possible number. A full-width hero photo usually looks great between 100 and 250 KB after compression. A blog content image at 800 px wide should land well under 150 KB. Thumbnails can often drop below 30 KB.
Make compression part of your publishing workflow, not an afterthought. Export at the quality setting your editor recommends for web, run the result through a compressor, and only then upload. Doing it once per image takes seconds; doing it never costs you rankings.
Format choice can halve a file's weight before you even touch a compressor. Each format has a job it does best:
If you are unsure, a simple rule works well: photos as JPEG or WebP, graphics with transparency as PNG or WebP, and logos or icons as SVG. Converting your existing library to a modern format is one of the fastest bulk wins available.
Uploading a 4,000 px photo and displaying it at 800 px is one of the most common performance mistakes on the web. The browser still downloads the full 4,000 px file. Always resize images to the maximum dimensions at which they will actually be displayed, and let responsive images handle the rest.
HTML gives you a clean way to serve different sizes to different devices with the srcset attribute:
<img src="trail-running-shoes-800.jpg"
srcset="trail-running-shoes-400.jpg 400w,
trail-running-shoes-800.jpg 800w,
trail-running-shoes-1200.jpg 1200w"
sizes="(max-width: 600px) 400px,
(max-width: 1000px) 800px,
1200px"
alt="Red trail running shoes on a forest path"
loading="lazy">
With this markup, a phone downloads the 400 px version while a desktop gets the larger one. Nobody downloads pixels they cannot see. If you run WordPress or a similar CMS, much of this is generated automatically — but it is worth confirming your theme actually outputs srcset instead of serving one giant file to everyone.
Before Google looks at anything else, it reads the file name. IMG_4829.jpg says nothing; red-trail-running-shoes.jpg says everything. Rename files before uploading, using short lowercase phrases separated by hyphens.
Good file names also help you. When you need to find an image months later, a descriptive name beats scrolling through a media library of camera-generated gibberish. Keep names concise — three to six words is plenty — and skip stop words and keyword repetition. One clear phrase per file is the sweet spot.
Lazy loading defers offscreen images until the visitor scrolls near them. The page above the fold loads fast because the browser is not fetching a dozen images the user may never see. It is a one-word addition to your markup:
<img src="product-gallery-3.jpg"
alt="Close-up of the shoe's tread pattern"
loading="lazy">
Apply loading="lazy" to every image below the fold, but leave it off the hero or largest above-the-fold image — that one should load eagerly, ideally with a fetchpriority="high" hint, since it usually drives the Largest Contentful Paint metric. Most modern browsers handle native lazy loading well, so you rarely need a JavaScript library for this anymore.
Photos carry hidden EXIF metadata: camera model, shooting settings, and sometimes GPS coordinates of where the picture was taken. This data adds weight to every file and can leak location information you never intended to publish.
Stripping EXIF data is a quick privacy and performance win. Run your photos through our free EXIF data remover before uploading — it wipes the embedded metadata in seconds, leaving you with a lighter file and nothing personal attached to it. Make this a habit for any photo taken on a phone, since those are the most likely to contain GPS tags.
Optimization is only useful if you can see it working. After compressing, resizing, and cleaning up your images, run your key pages through a speed test to confirm the improvement. Our page speed checker shows how fast your pages load and flags remaining bottlenecks, while the page size checker tells you exactly how heavy each page is — perfect for spotting image bloat at a glance.
For a deeper look at what a healthy page weight looks like, read our guide on what a good page size for SEO is. As a rule of thumb, most content pages should stay under 2 MB total, and images should be the first thing you attack when a page exceeds that.
Check your most important pages monthly. Image libraries grow silently as new content goes up, and a quick audit keeps the weight from creeping back.
Yes, through page speed. Google uses loading performance as a ranking signal, and images are typically the largest files on a page. Faster pages rank better and convert better. Optimized images can also rank in Google Images, creating an additional traffic source.
There is no single best format — it depends on the image. Use JPEG or WebP for photographs, PNG or WebP for graphics needing transparency, and SVG for logos and icons. WebP and AVIF generally give the smallest files at equivalent quality and are safe to use in modern browsers.
Aim for under 250 KB for large hero images, under 150 KB for standard content images, and under 30 KB for thumbnails. These are guidelines, not hard rules — the goal is the smallest file that still looks sharp at its display size.
It helps for important images. You can include image URLs in your regular sitemap using image extensions, or create a dedicated image sitemap. This is most valuable for sites where images drive business — ecommerce, photography, recipes, and publishers.
No. EXIF data does not help rankings, and stripping it reduces file size slightly while protecting your privacy. The SEO signals that matter — file names, alt text, captions, and surrounding content — are unaffected.
Image SEO does not require expensive tools or a developer — just consistent habits. Compress every upload, pick the right format, size images for their actual display, and strip the metadata. Then verify your progress with our free page speed checker and watch your pages get lighter and faster.