Why can't anyone agree on what size I should upload my product images at?

Everyone online says something different about product photo sizing. Here's what Shopify's CDN actually does with the file you upload, and why your source image size and what customers download are two different questions.

imagesperformancecdnproduct-photospage-speed

What's going on

You've read three different rules for Shopify product image sizing and they contradict each other: one guide says upload at a fixed large size, another says go as big as Shopify allows for future-proofing, and a third insists you must manually compress and resize everything before upload or your site speed will suffer. Meanwhile your page speed score is mediocre and you can't tell if it's actually the images or something else.

The confusion is real, and it comes from a genuine gap in how this gets explained: there are two separate things people call image size, and almost every piece of advice online only addresses one of them. The first is the source file sitting in your product media library, the original you uploaded. The second is the CDN-delivered version that actually gets downloaded by a shopper's browser, which Shopify generates on the fly, resized and reformatted, whenever a theme template asks for one. Advice aimed at the first problem, storage and zoom quality, gets applied to the second problem, page speed, and vice versa, and that's where the advice stops agreeing with itself.

Why it happens

Shopify accepts a fairly wide range of upload sizes without much in-admin guidance on what you should upload versus what you're merely allowed to upload, so third-party blogs fill that gap with their own, often outdated, recommendations, some optimizing for zoom quality, others for storage, others for raw page speed, without ever naming which problem they're solving.

The bigger structural cause is that Shopify's CDN resizing layer is invisible to most merchants. It happens automatically whenever a theme is built correctly, so merchants never see it and assume the file they uploaded is the file being downloaded by customers. When page speed is actually slow, the cause is almost always a theme or app failing to request properly sized image variants, but that reads to a merchant as my images must be too big, which sends them down the wrong fix.

5 ways to fix it

1

Upload near the largest size your theme actually displays, not the platform maximum

Shopify allows fairly large source files, but that ceiling isn't a target. Figure out the largest size any of your theme's templates actually renders an image at (usually the zoomed product-image view) and upload originals modestly above that. Shopify can't upscale beyond the pixel dimensions of the file you gave it, so going too small caps your zoom quality. But uploading a huge, unprocessed camera file just means slower transcoding, more storage in Files, and a heavier admin, with no visible benefit to shoppers.

2

Let the CDN handle responsive resizing, don't pre-shrink for performance

This is where most of the conflicting advice comes from: people treat 'the file I uploaded' and 'the file the browser downloads' as the same thing. They aren't. Shopify's CDN resizes images on the fly to whatever dimensions a theme template requests, and well-built themes request a range of sizes so phones get smaller files and desktops get larger ones. So slow-loading pages are rarely caused by your original file size sitting in Files. They're usually caused by theme code that isn't requesting appropriately sized image variants, or by an app injecting oversized images outside that system. Aggressively downscaling your sources to help performance mainly removes your safety margin for zoom and future redesigns without fixing the actual cause.

3

Check what's actually being served on your live pages before changing anything

Before touching your upload workflow, open your storefront, inspect a product image using your browser's developer tools, and look at the delivered file size and URL. A correctly configured theme will show a resized image URL with dimensions proportional to the display area, not your multi-megabyte original. If a mobile page is downloading the full-resolution source, the bug is in the theme's image markup, not in how large your uploads are.

4

Compress and pick a sensible format before upload, but don't over-engineer it

Shopify's CDN automatically serves modern, more efficient image formats to browsers that support them, so you don't need to manually convert every file before uploading. It will still accept common formats like JPG and PNG and handle the conversion. Where pre-upload effort still pays off: strip unnecessary metadata, avoid uploading obviously oversized raw exports when a well-compressed file at the same pixel dimensions looks identical, and use a real image editor's web-export settings rather than relying on the CDN to rescue a badly compressed source.

5

For large catalogs, standardize dimensions once instead of fixing files one at a time

Inconsistent grid layouts or unpredictable crops across hundreds of products are usually an aspect-ratio problem, mixed portrait, landscape, and square originals, not a pixel-count problem. Cropping and padding are better handled at render time through your theme's image display options than by manually re-exporting every source file. If you're dealing with messy assets from multiple vendors, a one-time bulk image processing pass outside Shopify, batch resizing, cropping to one aspect ratio, standardizing format, is usually more effective than trying to enforce upload discipline photo by photo.

Bottom line

There's no real conflict once you separate the two systems: your uploaded file is the source asset, aim for big enough for your largest zoom view, not as big as the platform allows, and the CDN transform is what actually reaches shoppers, resized and reformatted automatically based on what your theme requests. Most of the advice floating around forums states one half of this as if it were the whole picture. If your real problem is slow pages, check what's actually being downloaded first. The fix is almost always theme code, not your upload habits. A bulk photo-processing tool only earns its keep if you're wrangling a large, inconsistent catalog, not as a general speed fix.

Still Stuck?

Browse the rest of the problem library, run a free storefront scan to catch issues like this automatically, or email us and we'll work out a custom solution for it.