Here’s how to get image seo wordpress right. Your WordPress site might load dozens of images per page, but if none of them are optimized for search, you’re leaving traffic on the table. Images appear in Google Image Search, contribute to page relevance signals, and directly affect page speed scores that influence rankings.
This guide covers the full image SEO workflow for WordPress: file naming, alt text, compression, lazy loading, and modern formats like WebP. Each step takes minutes to implement but compounds across every page on your site.
Image Seo WordPress: File Naming Conventions That Help Google Understand Your Images
Google’s image documentation explicitly states that filenames provide context about the subject matter of an image. A file named IMG_20260112.jpg tells search engines nothing. A file named wordpress-seo-plugin-settings.jpg immediately signals what the image contains.
Before uploading any image to WordPress, rename the file using these rules. Use lowercase letters only. Separate words with hyphens, not underscores. Keep names between 3 and 7 words. Include one relevant keyword naturally, without stuffing.
Here’s a practical example. Say you’re writing a post about setting up Google Search Console. You take a screenshot of the performance report. Instead of uploading screenshot-2026.png, rename it to google-search-console-performance-report.png. WordPress uses the filename to auto-generate the image URL slug, so this naming convention creates clean, descriptive URLs automatically.
Batch renaming tools like Advanced Renamer (free, Windows) or Automator on Mac can speed this up if you’re processing multiple images. For stock photos, always rename before uploading since the default filenames from stock sites are random strings that carry zero SEO value.
Writing Alt Text That Serves Both Accessibility and SEO
Alt text has two jobs: it describes images for screen readers used by visually impaired visitors, and it helps search engines understand image content. Google confirmed in their Search Central documentation that alt text remains one of the strongest signals for image search ranking.
Good alt text is specific and concise. Aim for 8 to 15 words that describe exactly what the image shows. Don’t start with “image of” or “picture of” since screen readers already announce the element as an image. Don’t stuff keywords into every alt attribute. Use your target keyword in the alt text of one image per post, and write natural descriptions for the rest.
Compare these examples for a screenshot of Yoast SEO’s readability analysis:
- Bad: “SEO plugin WordPress SEO best SEO tool”
- Acceptable: “Yoast SEO plugin screenshot”
- Good: “Yoast SEO readability analysis showing green indicators for paragraph length and sentence structure”
In WordPress, you can set alt text in two places: the media library when uploading, or the image block settings in the editor sidebar. The block editor approach is better because you can tailor the alt text to the specific context of that post. An image of a Google Analytics dashboard might need different alt text depending on whether the article covers traffic analysis or goal tracking.
For decorative images like dividers, backgrounds, or purely aesthetic photos, set the alt attribute to an empty string (alt=””). This tells screen readers to skip the image entirely, which improves the browsing experience for accessibility users.
Image Compression Without Visible Quality Loss
According to HTTP Archive data from early 2026, images account for roughly 42% of the average web page’s total weight. Uncompressed images are one of the most common reasons WordPress sites fail Core Web Vitals assessments, particularly the Largest Contentful Paint (LCP) metric.
WordPress 5.8 and later automatically compress uploaded JPEG images to 82% quality, but this default setting often isn’t aggressive enough. For most blog images and screenshots, you can compress to 70-75% quality without any visible difference on screen.
The most reliable approach uses a WordPress plugin that compresses images on upload. ShortPixel and Imagify both offer free tiers that handle 100+ images per month. These plugins compress images server-side, so your original upload remains untouched while the optimized version gets served to visitors.
For manual compression before uploading, TinyPNG (which also handles JPEGs despite the name) reduces file sizes by 50-80% on average. A 2MB hero image typically drops to 300-500KB with no perceptible quality change. Run every image through compression before uploading, even if you use a plugin, since the two methods stack for maximum reduction.
Set maximum image dimensions in WordPress under Settings > Media. For most themes, 1200 pixels wide is sufficient for full-width content images. There’s no reason to upload a 4000-pixel-wide photo when your content area is 800 pixels wide. WordPress generates multiple sizes on upload, but starting with a reasonably sized original reduces storage use and processing time.
Implementing Lazy Loading and WebP Format
Lazy loading defers off-screen images until the visitor scrolls near them. Since WordPress 5.5, native lazy loading is enabled by default through the loading=”lazy” attribute on img tags. This means images below the fold don’t load until needed, which directly improves initial page load time.
One important exception: don’t lazy load your above-the-fold hero image or LCP image. WordPress 6.3+ automatically skips lazy loading for the first content image, but if your theme places a large image in the header area, verify it isn’t getting the lazy attribute. Lazy loading your LCP element actually hurts your Core Web Vitals score because the browser waits for a scroll event that never happens for content already visible.
WebP format delivers 25-34% smaller file sizes compared to JPEG at equivalent visual quality, based on Google’s own comparative testing. WordPress 5.8 added native WebP support, so you can upload WebP files directly. However, the better approach is converting on the fly using a plugin like WebP Express or ShortPixel, which serves WebP to browsers that support it (over 97% as of 2026) while keeping the original JPEG as a fallback.
To enable WebP conversion site-wide, install ShortPixel or a similar plugin, enable WebP delivery in the settings, and choose the <picture> tag method or .htaccess rewrite method depending on your hosting setup. The picture tag method works on any host, while the .htaccess method is cleaner but requires Apache. If you’re on Nginx, you’ll need a server-level configuration change that most managed WordPress hosts handle through their control panel.
Building an Image SEO Checklist for Every Post
Consistency matters more than perfection with image SEO. Create a pre-publish checklist and follow it for every post. Here’s the workflow that covers all the fundamentals:
- Rename all image files with descriptive, hyphenated, lowercase names before uploading
- Compress each image through TinyPNG or your compression tool of choice
- Upload to WordPress and fill in the alt text field with a specific, contextual description
- Set a title attribute that matches or closely relates to the alt text
- Verify the featured image is set and optimized (this appears in social shares and search results)
- Check that no above-the-fold image has the lazy loading attribute
- Run a PageSpeed Insights test to confirm no image-related warnings appear
For existing content, use Screaming Frog’s free version (up to 500 URLs) to crawl your site and export a list of all images missing alt text. Sort by page traffic in Google Analytics and fix the highest-traffic pages first. A site with 200 posts might have 600+ images, so prioritizing by traffic ensures you fix the most impactful ones within the first hour of work.
Track your progress by checking the image issues report in Google Search Console under the Experience section. Google flags images that are too large, improperly sized, or served in outdated formats. Clearing these warnings page by page steadily improves your site’s overall image SEO performance and contributes to better rankings across both web and image search results.

