How to Compress JPEG Product Photos for Shopify

Your Shopify store looks great in the theme editor, but your PageSpeed score tells a different story. You dig into the report and find the culprit almost every time: product photos straight from a DSLR or a photographer's export, sitting at 3–8 MB each, multiplied across dozens or hundreds of listings. Shoppers on mobile data bounce before the page even finishes loading.

The fix isn't shrinking the image so much that stitching detail or fabric texture disappears — that just trades one problem for another. The fix is compressing JPEG product photos correctly: enough to cut file size dramatically, without a customer ever noticing the difference. Here's exactly how to do that for a Shopify catalog, one photo or an entire product line at a time.

Quick Answer

Resize product photos to around 2048px on the longest side, then export as JPEG at 75–85% quality. This typically brings a 5 MB camera file down to 100–250 KB with no visible loss in detail. Compress before uploading to Shopify — the platform's CDN optimizes delivery format, but it won't meaningfully shrink an oversized source file for you.

What does compressing a JPEG product photo actually mean?

Compressing a JPEG means reducing its file size by selectively discarding image data the human eye is least likely to notice — without changing the photo's dimensions or content. For a Shopify product photo, this comes down to two separate levers that people often confuse:

Most oversized Shopify product photos need both. A photographer's raw export is usually far larger in dimensions than any theme will display, and it's often saved at or near 100% quality, which is rarely necessary. Resizing first, then compressing the result at 75–85% quality, is what turns a 6 MB source file into something in the 100–250 KB range — a 95%+ reduction — with no visible difference to a shopper.

Why this matters for your Shopify store

Product photo weight isn't a cosmetic detail on Shopify — it has a direct, measurable effect on how your store performs and sells:

📊 Quick stat A typical uncompressed DSLR product photo runs 4–8 MB. Resized to 2048px and compressed at 80% JPEG quality, the same photo usually lands between 100–250 KB — a reduction of over 95% with no visible loss in the detail that actually matters to a shopper.

Step-by-step: compressing product photos for Shopify

  1. Start from the original, unedited file. If you've already exported and re-saved a JPEG once, compress from that original source rather than a previously compressed copy, to avoid stacking generation loss on top of your final export.
  2. Resize to around 2048px on the longest side. This is large enough for Shopify's built-in zoom feature to work well, while avoiding the dead weight of a 6000px camera export that no theme will ever display at full resolution.
  3. Compress at 75–85% JPEG quality. This is the reliable sweet spot for product photography — detail like stitching, texture, and material finish stays visible, while file size typically drops 50–70% compared to a 100% export.
  4. Check high-detail and high-contrast areas closely. Zoom in on edges, logos, and fine texture at 100–200%. If you notice blockiness or color bleeding around these areas, bump the quality setting up 5–10 points and re-export.
  5. Batch process by product line, not one file at a time. If you're updating an entire catalog, compress in batches so every photo for a given product line gets a consistent quality setting — inconsistent compression across a collection page looks unprofessional.
  6. Strip unnecessary metadata before upload. Camera EXIF data, color profiles, and thumbnails embedded in the file add extra weight that serves no purpose once the photo is live on your store.
  7. Upload the compressed files to Shopify. Replace existing product images directly in the Shopify admin, or through your theme's media settings — Shopify's CDN will handle further format delivery (like WebP or AVIF) on top of your compressed JPEG source automatically.
Try the Rebrixe JPEG Compressor — free No uploads to a server, no signup. Preview quality live before downloading.
Compress JPEG Now →

Common mistakes that hurt speed or quality

1. Uploading camera exports straight to Shopify

A photographer's or DSLR's default export is built for editing flexibility, not web delivery — often 5000px+ wide and saved near 100% quality. Uploading these directly means every product page pays the storage and bandwidth cost of a file far heavier than any theme will actually display.

2. Compressing so aggressively that texture disappears

Dropping quality too far below 70% to chase a smaller file size backfires for product photography specifically, since customers often zoom in to check material, stitching, or finish. Going too aggressive erases exactly the detail that helps convert a browser into a buyer.

3. Using one blanket setting for every photo type

A flat-lay thumbnail on a collection grid and a zoomed hero shot on a product detail page don't need the same treatment. Applying identical compression across every image role either wastes bandwidth on thumbnails nobody examines closely, or under-compresses images that would look fine leaner.

4. Forgetting to resize before compressing

Compressing quality alone on an oversized image still leaves a much larger file than necessary. Resizing dimensions first, then compressing quality, is what actually gets you to the smallest reasonable file size — skipping the resize step leaves significant savings on the table.

💡 Pro tip Keep one high-quality master image (90–100%, full resolution) per product, saved outside Shopify. Generate your compressed, resized upload versions from that master — that way you can always re-export a fresh, uncompromised copy if you ever redesign your theme or need a larger version later.

Real-world compression examples

These are representative results from compressing typical Shopify product photos — resized to 2048px, then exported at different JPEG quality settings:

Apparel flat lay
6 MB → 140 KB
−98%
Resized + 80% quality. Fabric texture and stitching stay sharp.
Jewelry close-up
4.2 MB → 190 KB
−95%
85% quality preserves fine detail for zoom-heavy listings.
Collection grid thumbnail
3 MB → 60 KB
−98%
70% quality is invisible at small grid display sizes.
Lifestyle hero banner
7.5 MB → 320 KB
−96%
88% quality keeps large hero images crisp at full width.

Across a full catalog, results like these compound quickly — a 300-product store with 4 images per listing can drop total media weight from several gigabytes to a few hundred megabytes, with zero visible change for shoppers.

Compression settings by product photo type

Different placements on a Shopify store tolerate different levels of compression — here's a practical breakdown to work from.

Photo type Recommended quality Typical target size Artifact risk Notes
Collection grid thumbnails 65–75% 30–70 KB Low Small display size hides most compression artifacts
Standard product listing photos 75–85% 80–200 KB Low The reliable default for most catalog images
Zoomable / high-detail products 85–90% 150–300 KB Low-medium Jewelry, textiles, and print detail benefit from extra headroom
Hero / lifestyle banners 85–90% 200–400 KB Low-medium Large display size makes artifacts more noticeable
Variant swatches / icons 60–70% Under 30 KB Low Tiny display size — compress aggressively without concern
Print-ready or wholesale assets 90–100% Not size-constrained N/A Keep a high-fidelity master separate from your web uploads

Compress your product photos right now — free

The Rebrixe JPEG Compressor runs entirely in your browser. Your product photos are never uploaded to a server — compression happens locally, and you can preview the exact visual result and file size before downloading. For full catalogs, the Bulk Image Resizer handles resizing and compressing many photos at once in a single pass.

Free JPEG Compressor — no uploads required Client-side only. Your files never leave your device.
Open JPEG Compressor →

Frequently asked questions

Aim for 70–200 KB per product photo at typical listing dimensions (around 2048px on the longest side). Hero or zoomed gallery images can go up to 300–400 KB. Anything consistently above 500 KB per image is worth re-compressing, since it adds up fast across a catalog.
Shopify serves images through its CDN with some automatic format and sizing adjustments, but it does not meaningfully re-compress an oversized JPEG for you. If you upload an 8 MB photo straight from a DSLR, Shopify will largely keep serving a heavy file, so compressing before upload is still your responsibility.
75–85% quality is the sweet spot for most Shopify product photos. It keeps fine detail like fabric texture or stitching visible while cutting file size by 50–70% compared to a 100% export straight from your camera or editing software.
No — the opposite is true. Smaller, well-compressed images speed up page load, which directly improves Core Web Vitals like Largest Contentful Paint (LCP), a factor Google uses in search ranking. As long as you stay above visible artifact thresholds, compression helps SEO rather than hurting it.
Shopify recommends product images around 2048 x 2048px for zoom functionality to work well. Uploading anything larger (like a raw 6000px camera export) just adds dead weight, since Shopify's CDN will resize it down for most placements anyway. Resize first, then compress.
Shopify's CDN automatically serves WebP or AVIF to supporting browsers even when you upload JPEG, so you don't need to manually convert files yourself. Upload a well-compressed JPEG as your source — Shopify handles next-gen format delivery on top of that.
It depends on the tool, but browser-based bulk compressors typically handle dozens to a few hundred images per batch without issue, since processing happens locally rather than through a server queue. For very large catalogs, batch in groups of 50–100 to keep things manageable.

Get your Shopify product photos load-ready

The Rebrixe JPEG Compressor and Bulk Image Resizer run entirely in your browser — no uploads, no account, no file size limits. Preview the result before you download.

Launch the JPEG Compressor →
← Back to blogs