ShrinkFox

Shopify image sizes: a practical guide for 2026

The short answer: upload product images at 2048 × 2048 px, square, in WebP or JPEG, and keep each file between 100 and 300 KB after compression. Everything below explains why, and what to use for the other placements in your store.

Last updated 11 September 2026

The numbers, in one table

PlacementRecommended sizeRatio
Product photo2048 × 2048 px1:1
Collection image1024 × 1024 px1:1
Hero / slideshow (desktop)1920 × 1080 px16:9
Hero (mobile slot)800 × 1200 px2:3
Blog post header1200 × 630 px~1.91:1
Favicon32 × 32 px1:1

Shopify accepts uploads up to 5000 × 5000 px and 20 MB per file, but the maximum allowed and the size you should actually use are very different things. Past a certain resolution you gain nothing visible and pay for it in page weight.

Why 2048 is the number that matters

Two things make 2048 the practical ceiling for product photos.

First, Shopify's zoom. The built-in zoom needs an image larger than 800 × 800 px to activate at all, and zoom is a buying signal — someone looking closer at your product is someone considering it. A blurry zoom at that moment costs you sales. 2048 gives crisp detail when a shopper magnifies.

Second, retina displays. A product image rendered at 1024 CSS pixels on a 2× screen needs 2048 actual pixels to look sharp. Go below that and your photos look soft on most modern phones and laptops.

What you don't gain is anything above 2048. Shopify's CDN generates resized variants — commonly at 100, 200, 400, 600, 800, 1024 and 2048 px — and serves whichever the browser asks for via srcset. Uploading a 5000 px master doesn't give shoppers a better image; it just means the largest variant Shopify serves is still capped by what the layout requests.

Aspect ratio matters more than pixel count

If you take one thing away, make it this: use the same aspect ratio for every product image in your catalogue.

Shopify themes lay out collection grids by fitting images into fixed containers. Mix square photos with portrait ones and your grid develops uneven whitespace, inconsistent card heights, and a generally unfinished look. It's the single most common thing that makes an otherwise good store feel amateur.

Square (1:1) is the safest default because it works in every theme without cropping. Some themes support 4:5 portrait or 3:2 landscape, and those are fine — but pick one and apply it to everything.

Format: WebP first, JPEG as fallback, PNG only when you need transparency

WebP produces files roughly 25–35% smaller than JPEG at equivalent visual quality. Shopify will auto-convert and serve WebP to supporting browsers even if you upload JPEG, but uploading WebP directly gives you control over the compression level rather than accepting Shopify's default.

Reserve PNG for logos, icons and anything needing a transparent background. A transparent PNG product photo is typically two to four times the size of an equivalent JPEG, and on a collection page with 24 products that difference is the whole reason the page feels slow.

File size targets

Aim for 100–300 KB per product image after compression. Under 100 KB you'll usually start seeing compression artefacts on photographs — banding in gradients, mushiness around fine detail. Over 500 KB you're paying a page-speed cost for quality nobody can see.

In practice, a 2048 × 2048 WebP at quality 80 lands almost exactly in that window for most product photography. That's the default ShrinkFox ships with.

Doing this in bulk

The tedious part isn't knowing the numbers — it's applying them to 400 product photos that came off a camera at 6000 × 4000 px.

  1. Open ShrinkFox and drop in your product photos.
  2. Under Resize, choose the Shopify product (2048 × 2048) preset.
  3. Switch the mode to Fill and crop if you want every output to be exactly square. Leave it on Fit inside if your photos are already square and you only want to cap the size.
  4. Set format to WebP and quality to 80.
  5. Tick Don't enlarge images smaller than this so a 900 px photo isn't upscaled into a blurry 2048 px one.
  6. Process, then download the batch as a ZIP.

If your source photos aren't square, use the crop screen first: set the aspect to 1:1, position the box on your product, and tick Apply this crop to all images if the framing is consistent across the set.

Common mistakes

Uploading straight from the camera. A 24-megapixel JPEG is roughly 8 MB. Twenty of them on a collection page is 160 MB of images that Shopify has to process and your shoppers' phones have to download.

Upscaling small images. Enlarging a 600 px photo to 2048 px doesn't add detail, it just adds file size and softness. If your source is small, either reshoot or accept the smaller size.

Compressing twice. Each JPEG save discards information permanently. Always compress from your original file, not from an already-compressed copy.

Ignoring your theme's docs. These numbers work across Dawn, Sense, Refresh and most Shopify 2.0 themes, but premium themes sometimes specify their own dimensions. Check before you resize 400 images.

Resize and compress your images now

Free, no account, and nothing leaves your browser.

Open ShrinkFox