Images are responsible for 50–80% of a typical WordPress page's total file size. Uncompressed uploads slow down your site, hurt Core Web Vitals scores, and increase hosting costs. The good news: compressing images before uploading to WordPress is fast, easy, and makes a measurable difference in page speed and SEO rankings.
Why Compress Before Uploading — Not After
WordPress generates 3–5 thumbnail sizes from every uploaded image. If you upload a 5 MB original, WordPress creates multiple large versions on your server. Compressing the original before uploading means:
- All generated thumbnails are derived from a smaller source — smaller file sizes for every size
- Less disk space used on your hosting account — this matters on shared hosting with storage limits
- Faster image uploads in the WordPress Media Library — helpful when uploading large batches
Use image compression before uploading. Then use a WordPress plugin (Smush, ShortPixel, or EWWW Image Optimizer) to handle anything already in your media library.
Best Image Dimensions for WordPress
WordPress doesn't enforce a specific image size, but uploading oversized images wastes resources. Match your upload dimensions to your theme's actual content width:
- Full-width images (hero, banner): 1920×1080 px for full-width sections. Many themes cap content at 1200–1440 px — check your theme documentation
- Blog post featured images: 1200×628 px (1.91:1) is the standard for social sharing previews (Open Graph). Most themes display featured images at 800–1200 px wide
- In-content images: match your content column width. A standard blog column is typically 700–900 px wide — upload at that width, not at 2000+ px
- WooCommerce product images: 1000×1000 px square for product pages, 800×800 px minimum for catalog pages
- Logo: 200–400 px wide. Keep under 50 KB — it loads on every page
- Icons and small graphics: 100–200 px. PNG or WebP for sharp edges
File Size Targets for WordPress
- Hero / full-width images: under 200 KB. A 1920×1080 JPEG at 80% quality should be 150–300 KB; compress to get under 200 KB
- Blog featured images: under 100 KB
- In-content images: under 80 KB each
- Product images: under 150 KB for main image, under 50 KB for thumbnails
- Total page weight: Google's Core Web Vitals guidelines recommend keeping total page image weight under 1 MB for fast LCP (Largest Contentful Paint)
Best Image Formats for WordPress
- WebP: the recommended format for WordPress in 2026. WordPress 5.8+ supports WebP natively. WebP is 25–35% smaller than JPEG at the same quality. Upload WebP directly or convert existing JPEG/PNG to WebP before uploading. Convert to WebP with image converter
- JPEG: the safe universal choice for photos. Use 80–85% quality for a good size-quality balance. All browsers and WordPress versions support JPEG
- PNG: use only for images that need transparency — logos, icons, overlaid graphics. PNG files for photos are 3–5× larger than JPEG; avoid for photographic content
- AVIF: WordPress 6.5+ supports AVIF. Even smaller than WebP (30–50% smaller than JPEG), but some older browsers don't support it. Consider WebP first for broad compatibility
- GIF: avoid for static images — use PNG instead. Only use GIF for animations, and consider converting GIF animations to WebM or MP4 video for 90%+ smaller file sizes
WordPress Upload Limit
WordPress limits file uploads based on your PHP settings. The default is typically 2 MB, but most hosting providers set it to 32 MB or higher. If you're hitting an upload limit:
- Compress first: a 10 MB RAW-converted JPEG can be reduced to under 500 KB with image compression before hitting WordPress upload limits
- Increase PHP limits via
php.ini(upload_max_filesize,post_max_size) or ask your host to raise the limit - Use FTP or the hosting file manager for very large batches — bypasses PHP limits entirely
Step-by-Step: Compress WordPress Images
- Start with the original image at full resolution (from camera or design tool). Don't resize or compress in Photoshop/Lightroom yet — do that in the next step
- Resize to the correct dimensions for the placement: 1200×628 px for featured images, content column width for in-content images
- Compress to the target file size: under 100 KB for most images. Choose WebP format if your theme supports it (most modern themes do); otherwise JPEG at 80–85% quality
- Upload the compressed image to WordPress Media Library. Use descriptive file names (e.g.,
blue-running-shoes-side-view.jpgnotIMG_4532.jpg) — file names are used in image URLs and matter for image SEO - Fill in the Alt text field in the WordPress media uploader. Alt text describes the image for screen readers and search engines — "Blue running shoes, side view" not "image1"
WordPress Image Compression Quick Reference
- Hero image: 1920×1080 px, WebP or JPEG, under 200 KB
- Featured image: 1200×628 px, WebP or JPEG, under 100 KB
- In-content image: content column width (700–900 px), under 80 KB
- Product image: 1000×1000 px square, under 150 KB
- Logo: 200–400 px wide, PNG or WebP, under 50 KB
- Best format: WebP (WordPress 5.8+); JPEG fallback
- Compress before uploading: always — reduces all generated thumbnails too