Why Product Images Look Worse After You Upload Them

Amazon, Shopify, Meta and Google all re-encode the file you upload — here is what they do to it, and how to hand them an image that still looks sharp on the other side.

|image optimization ecommerce product photography technical seo

The file you upload is almost never the file your customer sees. Amazon, Shopify, Meta, Google Shopping and every major CDN re-encode uploaded product images into their own derivatives — usually WebP or AVIF, usually at a quality setting you do not control. A 4MB studio-grade JPEG can be served to a shopper as a 90KB WebP, and the difference shows up exactly where it hurts: banding in gradient backdrops, mushy fabric texture, halos around crisp product edges.

This is not a bug, and you cannot turn it off. Page speed is a ranking and conversion factor, so platforms will always trade some fidelity for bytes. What you can control is the input. Image compression is lossy and it is cumulative — every re-encode compounds the artifacts already baked into the file you handed over. Upload a file that is already been squeezed once, and the platform squeezes the squeeze.

This guide covers what each major platform actually does to your uploads, which product categories break first, and the upload specs that give you the best-looking result after the platform has had its way with the file.

What actually happens to your file after upload

When you upload a product image, the platform runs it through an image pipeline: decode, resize into a set of standard widths, strip metadata, re-encode into one or more modern formats, and cache the results on a CDN. Your original is stored, but it is rarely what gets served.

The critical step is the re-encode. Lossy formats like JPEG, WebP and AVIF work by discarding detail the encoder predicts you will not notice. That prediction is made on the file it receives — including any artifacts already in it. If your source JPEG was saved at quality 70, the encoder treats the blocky edges of those artifacts as real image detail and spends bits preserving them, then introduces its own.

Generation loss

Each lossy save is a "generation." Two generations at quality 85 look noticeably worse than one generation at quality 75, even though the second file is larger. Always re-export derivatives from your master file, never from an already-compressed copy.

Resizing compounds the problem. A platform that downsamples your 3000px image to a 600px grid thumbnail is throwing away 96% of the pixels, and a poor downsampling filter turns fine texture — knit fabric, brushed metal, printed labels — into a shimmering mess before compression ever starts.

What each major platform does to product images

Exact parameters change without announcement, but the observable behavior across the big destinations is consistent enough to plan around.

PlatformTypical served formatWhat it does to your upload
AmazonJPEG / WebPGenerates many fixed-size derivatives; heavy compression on grid and mobile sizes, gentler on the zoom view
ShopifyWebP (auto)Serves WebP to supporting browsers automatically; resizes to the width the theme requests
Meta (Shops/ads)JPEG / WebPAggressive re-encode tuned for feed scroll; small text and thin lines suffer most
Google ShoppingWebPRe-hosts and re-encodes; rejects images below minimum pixel dimensions outright
Etsy / eBayJPEG / WebPMultiple derivatives per listing; upload caps force downsampling of very large files

The pattern: you get one shot at supplying a clean, high-resolution master, and every downstream size is derived from it automatically. Optimizing your upload for file size is optimizing the wrong variable — the platform is going to shrink it regardless.

The product types that break first

Compression artifacts are not evenly distributed. Encoders allocate bits to high-contrast edges and starve smooth areas, which means the failure modes are predictable by category.

Relative visible quality loss after typical platform re-encode
Gradient backdrops
Severe banding
Fine fabric texture
Detail smearing
Small printed text
Edge ringing
Jewelry / metallics
Sparkle flattening
Flat white background
Minimal

Smooth tonal gradients are the worst case. A softly lit grey studio sweep contains hundreds of nearly identical tones; a lossy encoder collapses them into a handful of steps, producing visible bands across the backdrop. Fabric is the second worst — the encoder reads a knit weave as noise and smooths it away, so a merino sweater and an acrylic one start to look identical on the listing page.

Watch your packaging shots

Ingredient panels, nutrition labels and warning text sit right at the resolution where re-encoding turns letterforms into gray mush. If a shopper needs to read it, shoot it large enough that it survives a 4x downsample.

Upload specs that survive re-encoding

The goal is to hand the platform a file with headroom: more pixels than it needs, no pre-existing artifacts, and a color profile it will interpret correctly.

Common mistakes

  • Uploading a JPEG already exported at quality 60–70 "to save bandwidth"
  • Exporting derivatives from a previously compressed web file
  • Sharpening heavily before upload, which the encoder then exaggerates into halos
  • Shipping images in Adobe RGB or ProPhoto with no embedded profile
  • Uploading at exactly the display size, leaving zero resampling headroom

What to do instead

  • Export from the master at JPEG quality 90+, or supply PNG where the platform accepts it
  • Regenerate every size from the original master file
  • Apply only light output sharpening, sized for the final display width
  • Convert to sRGB with the profile embedded
  • Upload the longest edge at 2000–3000px, well above the largest served size

Two more habits pay off immediately. First, keep the background genuinely flat where you can — a pure, even white or a solid tone compresses almost losslessly, while a subtle vignette invites banding. Second, avoid stacking noise reduction and sharpening; both rewrite exactly the high-frequency detail the encoder is already fighting over.

Pro Tip

If you use AI tools to generate or retouch product imagery, export the result at maximum quality and keep it as your master. Tools like Retouchable produce a clean, high-resolution file precisely so the platform's compression pass has something with headroom to work from.

How to test what your customers actually see

Do not judge quality in your editing app. Judge it on the live listing, at the size a shopper sees, on the device they use.

  1. Pull the served file, not the original. Open the live product page, right-click the image, and copy its actual URL — note the format and dimensions in the filename or query string.
  2. Compare at 100%. Put the served derivative next to your master at the same display size. Look at backdrop gradients, fabric weave and any text first.
  3. Check the grid thumbnail separately. It is compressed hardest and it is the image that earns the click.
  4. Check mobile. Most platforms serve a different, smaller derivative to phones, and most of your traffic is there.
  5. Re-test after any pipeline change. Theme updates, CDN changes and marketplace policy updates all shift the parameters silently.
2–3xUpload resolution vs largest served size
90+Minimum JPEG export quality
1Lossy generations before upload

If a category consistently looks bad after re-encode — glassware, dark tonal shots, anything with a gradient sweep — change the shot, not the export settings. A flat, evenly lit background survives compression that a moody gradient will not.

Frequently Asked Questions

Does uploading a larger file guarantee a better-looking product image?

Up to a point. Supplying 2–3x the largest served size gives the platform clean data to downsample from, which improves the result. Beyond roughly 3000px on the longest edge you get diminishing returns, and some marketplaces cap upload size and downsample aggressively, which can actually hurt.

Should I upload PNG or JPEG for product photos?

PNG is lossless, so it avoids adding a generation of artifacts before the platform re-encodes — useful for images with flat backgrounds, hard edges or text. For photographic subjects, a JPEG exported at quality 90 or higher is visually equivalent and far smaller. Check the platform limits: some cap upload file size in a way that makes large PNGs impractical.

Why does my product image look banded only on mobile?

Mobile shoppers usually get a smaller, more heavily compressed derivative. Downsampling reduces the number of distinct tones available, so gradients that hold together at full size collapse into visible steps at thumbnail size. Flattening the backdrop in the original shot is the reliable fix.

Can I stop a platform from recompressing my images?

On marketplaces, no — the pipeline is not configurable. On your own storefront you have more control: many CDNs and Shopify-adjacent image services let you set quality parameters or serve the original for zoom views while using compressed derivatives for grids.

Does image compression affect SEO?

Indirectly and significantly. Smaller files improve Core Web Vitals, which feeds ranking, and that is exactly why platforms compress hard. The practical goal is not to fight compression but to supply a source clean enough that the compressed output still looks good.

Start with a master file worth compressing

Retouchable generates clean, high-resolution product imagery so your listings still look sharp after every platform has re-encoded them.

Try Retouchable Free No credit card required