- Resize images to the width your theme shows before compressing.
- Squoosh says images never leave your device.
- TinyPNG takes up to 20 images, each up to 5 MB.
- WordPress supports WebP since 5.8 and AVIF since 6.5.
- Use one image plugin, never two, to avoid double compression.
To compress images for a blog, resize each one to the width your theme shows, then shrink it with a free compressor such as Squoosh, which works entirely in your browser, or TinyPNG, which takes up to 20 images at a time; or let a WordPress plugin compress images automatically as you upload them. Use WebP or AVIF where your host supports them, and check that text in screenshots stays sharp. This page used to cover Optimizilla, whose website no longer loads, so this guide covers free tools that work today, checked on 12 October 2026.
Testing how your site looks on phones? See our guide to responsive testing tools. This page is about making images smaller.
Why compress images at all?
Images are usually the largest files on a blog post, and large images slow pages down, especially on phones. web.dev’s Core Web Vitals give a “good” target of Largest Contentful Paint within 2.5 seconds, and on many posts the largest element is an image. Smaller images help pages reach that target, use less of readers’ mobile data, and take up less space on your hosting.
Lossy or lossless compression?
Image compressors work in one of two ways. Lossy compression throws away detail the eye is unlikely to miss, which makes photos much smaller; the quality setting decides how much is removed. Lossless compression keeps every pixel and saves space by storing the data more efficiently, so files shrink less but nothing changes. For a blog, lossy suits photos and featured images, while screenshots, logos and diagrams often compress well by reducing the number of colours instead, which keeps text crisp.
Most of the tools below let you compare the original and compressed versions before you save, so you can see the trade-off rather than guess. Start with the default setting, then lower the quality step by step until you notice a change, and go back one step.
How to compress images for a blog with free tools
Squoosh
Squoosh says images “never leave your device”, because it does all the work locally in your browser. Open an image, compare the original and compressed versions side by side, and adjust settings for smaller files. It handles one image at a time, which suits featured images and screenshots you want to fine-tune.

TinyPNG
TinyPNG compresses and converts AVIF, WebP, PNG and JPG images, and its free web tool takes up to 20 images at a time, each up to 5 MB, according to its site. Its makers also offer automatic compression on upload and a paid developer API.
Image Compressor (imagecompressor.com)
This browser-based tool says it compresses JPEG, PNG, WebP, GIF and SVG images entirely in your browser using WebAssembly, with no uploads, no registration and no daily limits. It sets a default JPEG quality of 80 and converts PNGs to 256-colour PNG8, which suits logos and screenshots but not photos.
Compress automatically in WordPress
If you publish often, a plugin saves the manual step by compressing images as you upload them. Popular options on WordPress.org include:
- Smush (1,000,000+ active installs, rated 4.8), which also lists lazy loading and WebP.
- EWWW Image Optimizer (1,000,000+ active installs, rated 4.8).
- ShortPixel Image Optimizer (300,000+ active installs, rated 4.5), which also converts formats.
Use one image plugin, not several, and check its free limits before you rely on it. If your host or CDN already optimises images, you may not need a plugin at all.
Use modern formats: WebP and AVIF
WordPress has supported WebP uploads since version 5.8, “as long as your hosting service supports WebP”, and added AVIF support in version 6.5. WordPress’s announcement says AVIF images “can be up to 50% smaller than JPEGs while maintaining the same image quality”. For a blog, that means you can upload WebP or AVIF files directly, or let an image plugin convert your JPEGs and PNGs, provided your host’s image library supports the format; WordPress’s Site Health screen helps show what your server can process.
The right settings for blog images
- Resize first: don’t upload a 6,000-pixel photo for a 1,200-pixel-wide content area. Resize to roughly the largest size it will be shown, then compress.
- Photos: JPEG, WebP or AVIF with lossy compression. Image Compressor’s default JPEG quality of 80 is a sensible starting point; check the preview for blotches around edges.
- Screenshots, logos and diagrams: PNG or WebP. Fewer colours compress very well; text should stay crisp.
- Remove metadata such as camera and location details from photos, which several tools do automatically.
- Name files clearly (“wordpress-backup-settings.webp”) and write alt text when you upload.
Alt text and file names matter too
Compression makes images fast; descriptions make them useful. Google’s image guidance calls alt text “the most important attribute” for providing metadata about an image, says it improves accessibility for people using screen readers or slow connections, and that Google uses it with computer vision and the page’s content to understand the image. Write alt text that describes what the image shows in context, such as “WordPress backup plugin settings with daily schedule selected”, not “image” or a list of keywords.
File names help a little too: Google says a file name can give “very light clues” about an image’s subject, and recommends short, descriptive names rather than generic ones like “image1”. Rename files before uploading, using hyphens between words and keeping the extension that matches the file type.
Lazy loading: already on in WordPress
Lazy loading means images further down a page load only as the reader scrolls towards them. Since version 5.5, WordPress adds loading="lazy" to images that have width and height attributes, which images inserted with the block editor normally do. You don’t need a plugin for basic lazy loading; just make sure images keep their dimensions, which also stops the page jumping as they load.
Featured images and social previews
Your featured image is often the image shown when a post is shared on social media, so compress it like the rest, but keep it sharp: it’s the first thing many readers see. Use a size your theme and your SEO plugin recommend, and check how it looks with Facebook’s Sharing Debugger, as explained in our guide to Facebook tools for bloggers.
A simple workflow for each post
- Take screenshots or choose photos and resize them to the width your theme shows.
- Compress them in Squoosh or TinyPNG, or let your plugin do it on upload.
- Upload to WordPress, add descriptive alt text and insert with the image block.
- Check the published page on a phone and run PageSpeed Insights on new templates.
Tips for screenshots
Tutorial blogs live on screenshots, and they compress differently from photos. Capture only the part of the screen that matters, rather than a whole desktop, so the important detail is large enough to read on a phone. Save as PNG or WebP, which keep text crisp; JPEG can leave blotches around letters. Annotate with a simple arrow or box if readers need to find a specific button. Finally, check the screenshot at the size it appears in the post: if you can’t read the text on a phone, crop tighter rather than compressing less.
Optimising images already on your site
Most image plugins include a bulk tool that works through your existing media library. Back up your site first, run it on a small batch, check a few posts, then run the rest. If old posts use huge images, it can be worth replacing the worst ones by hand with properly resized versions, starting with your most-visited posts.
How much smaller should images be?
There’s no fixed rule, because it depends on the image. As a habit, compare file sizes before and after each change, and note which settings gave the biggest saving without visible loss; those become your defaults. Then look closely at the compressed version at full size. If text looks fuzzy or you see blocky areas in smooth gradients, raise the quality a little. Readers notice a blurry screenshot far more than a slightly larger file.
Common mistakes
- Compressing twice with two plugins, or a tool and a plugin, which can degrade quality.
- Uploading full-size camera photos and relying on compression alone.
- Using PNG for photos, which creates very large files for no visible gain.
- Over-compressing screenshots until text becomes hard to read.
- Forgetting old posts: a plugin’s bulk tool can optimise images already in your media library.
- Skipping alt text because the image is “only decorative” when it actually shows a step readers need.
Which image compressor should you use?
For an occasional batch of photos, TinyPNG is quick and takes up to 20 images at once. For screenshots and featured images you want to fine-tune, or when you’d rather not upload files anywhere, Squoosh works entirely in your browser. For a blog you update every week, one image plugin that works on upload saves the manual step. Whatever you use, resize first, compress sensibly and check the result. For more tools that help a blog run smoothly, see our list of the best WordPress plugins.
Questions people ask
How do I compress images for my blog for free?
Resize each image to the width your theme shows, then compress it in Squoosh (in your browser) or TinyPNG (up to 20 images at once), or install one WordPress image plugin that compresses on upload.
Is it safe to upload images to an online compressor?
For ordinary blog images it's usually fine, but if you'd rather not upload files at all, Squoosh and Image Compressor say they work entirely in your browser.
What happened to Optimizilla?
Its website no longer loaded when we checked on 12 October 2026. Squoosh, TinyPNG or a WordPress image plugin do the same job.
Does WordPress support WebP and AVIF?
Yes. WordPress added WebP support in 5.8 (if your host supports it) and AVIF support in 6.5.
What quality should I use for blog photos?
Start around 80 for JPEG or WebP, then check the preview for blotches around edges and adjust.
Should I compress images before uploading or use a plugin?
Either works. Resize and compress before uploading for full control, or use one plugin to do it automatically. Don't do both with lossy settings.
Sources
- Squoosh squoosh.app · checked October 12, 2026
- TinyPNG tinypng.com · checked October 12, 2026
- Image Compressor imagecompressor.com · checked October 12, 2026
- WordPress 5.8 adds WebP support (Make WordPress Core) make.wordpress.org · checked October 12, 2026
- WordPress 6.5 adds AVIF support (Make WordPress Core) make.wordpress.org · checked October 12, 2026
- Web Vitals (web.dev) web.dev · checked October 12, 2026
- Google image SEO best practices developers.google.com · checked October 12, 2026
- Lazy-loading images in 5.5 (Make WordPress Core) make.wordpress.org · checked October 12, 2026

Building websites since 2006: 500+ web projects of every size and $300K+ in website deals sold or brokered. Founder of A Digital Motive and DigiFlippers. I share the whole process here, plainly.
Founder of A Digital Motive and DigiFlippers



