Image SEO for blogs comes down to three things: writing descriptive alt text for accessibility and search context, using keyword-relevant file names instead of generic strings like IMG_4821.jpg, and compressing images so they don't slow down your page. Get these right and you unlock image search traffic, better Core Web Vitals scores, and higher rankings for the post itself. Skip them and you're leaving traffic on the table while quietly hurting your page speed.
Most bloggers treat images as an afterthought. They drag a screenshot into the editor, hit publish, and move on. But Google indexes over 100 billion images, and image search still drives real traffic for blogs that bother to optimize for it. Beyond that, unoptimized images are one of the most common causes of slow page load times, which directly affects both rankings and conversions.
Why Image SEO Actually Matters
Images affect three separate ranking factors: accessibility signals (alt text), topical relevance signals (file names and surrounding context), and technical performance (file size and load speed). Google has said directly that page experience, including loading speed, is part of how it evaluates content quality in search results.
There's also a discovery angle most people ignore. Image search and Google Discover both pull from properly labeled images. If you're publishing product photos, infographics, or original diagrams and skipping alt text and descriptive naming, you're invisible in a channel that costs you nothing extra to rank in.
Writing Alt Text That Actually Works
Alt text (alternative text) describes an image for screen readers and search engine crawlers that can't "see" the image itself. Good alt text does two jobs at once: it makes your content accessible to visually impaired readers, and it gives search engines context about what the image shows and how it relates to the page.
Rules for Writing Alt Text
- Be specific and descriptive. "Bar chart showing SEO traffic growth from 3,000 to 18,000 monthly visitors over six months" beats "traffic chart."
- Keep it under 125 characters since that's roughly where most screen readers cut off.
- Skip "image of" or "picture of." Screen readers already announce it's an image, so this is redundant.
- Include your target keyword only if it fits naturally. Never force it in. Google's own documentation on image best practices explicitly warns against keyword stuffing in alt attributes.
- Leave decorative images blank. If an image is purely stylistic (a divider line, a background pattern), use an empty alt attribute (alt="") so screen readers skip it instead of announcing meaningless text.
A quick example. For a blog post about email marketing, a bad alt tag reads: "email-marketing-image-best-email-marketing-tips-2026." A good one reads: "Email open rate comparison between subject lines with and without personalization."
File Names: The Step Everyone Skips
Before an image ever gets alt text, it has a file name, and that name is a ranking signal too. Google's crawlers read file names to understand image content before they even render the page. A file called DSC00234.jpg tells a crawler nothing. A file called content-calendar-template-example.jpg tells it exactly what's in the frame.
File Naming Best Practices
- Use lowercase letters only.
- Separate words with hyphens, not underscores (Google treats hyphens as word separators, underscores as joiners).
- Keep names short but descriptive: 3-6 words is plenty.
- Rename files before uploading, not after. Renaming after upload often breaks the URL and creates a 404 if the image is already indexed or linked elsewhere.
- Avoid dates, random numbers, or platform-generated strings unless they add real meaning.
This matters most for blogs publishing original visuals like charts, screenshots, and infographics, since those pieces are exactly the type of content that can rank independently in image search and even get pulled into featured snippets and rich results.
Page Speed: Where Most Blogs Lose Points
Images are usually the single biggest contributor to page weight. A blog post with five or six uncompressed PNG screenshots can easily push page size past 5MB, which tanks load time on mobile connections. Google's Core Web Vitals report treats Largest Contentful Paint (LCP) as a core ranking signal, and on most blog posts, the LCP element is an image.
How to Fix Image-Related Speed Issues
- Compress before uploading. Tools like TinyPNG, Squoosh, or built-in WordPress plugins (ShortPixel, Imagify) can cut file size by 60-80% with no visible quality loss.
- Use modern formats. WebP and AVIF files are typically 25-50% smaller than JPEG or PNG at equivalent quality, and both are now supported by every major browser.
- Set explicit width and height attributes. This prevents layout shift while the image loads, which improves Cumulative Layout Shift (CLS) scores.
- Enable lazy loading for images below the fold so the browser doesn't load them until the reader scrolls near them. Most CMS platforms and page builders support this natively now.
- Use a CDN if your blog gets meaningful traffic. A content delivery network serves images from a server geographically closer to the visitor, cutting load time significantly for international audiences.
- Resize images to their actual display dimensions. Don't upload a 3000px-wide photo into a blog column that displays it at 800px. Resize first.
Ahrefs has found that page speed correlates with better rankings across the board, particularly for competitive queries where content quality between top results is otherwise similar. If you're already following an on-page SEO checklist for every post, image optimization deserves its own line item, not an afterthought.
A Simple Pre-Publish Image Checklist
- File name is descriptive, lowercase, hyphenated
- Alt text describes the image content, not the keyword
- File is compressed and under 200KB where possible
- Format is WebP or AVIF, not raw PNG
- Width/height attributes are set
- Below-the-fold images are lazy-loaded
- Image is actually relevant to the surrounding text
This checklist takes about two minutes per image once it's a habit. If you're producing content at volume and struggling to keep technical details consistent across writers, this is exactly the kind of th