Refreshing a Shopify Catalog Image Set in Bulk

How to take a catalog of mismatched product photos and bring the whole set up to one standard — without breaking your featured images or your weekend.

|Shopify catalog management workflow automation

Most Shopify catalogs were never photographed. They accumulated. A Shopify bulk product image refresh is what happens when a merchant finally looks at a collection grid and sees six years of different photographers, phone cameras, supplier hand-me-downs and marketplace crops sitting side by side — and decides the whole set has to move to one standard at once.

That is a different job from bulk updating images. Updating is the mechanical problem of getting new files onto products, and Shopify's own tooling handles it badly enough that we wrote about it separately in Bulk Updating Product Images in Shopify. Refreshing is the project wrapped around that mechanic: deciding which products need new imagery, defining what "consistent" means for your store, producing hundreds or thousands of images to that definition, and rolling them out in an order that doesn't wreck your best-selling collection pages halfway through.

This guide is the project plan. It assumes you have at least a couple of hundred products, that some of them sell, and that you cannot afford to take the store offline while you fix it.

How to tell a catalog image set needs a bulk refresh

Drift is the tell. Individual product photos are usually fine on their own; the problem only shows up when they sit next to each other. Open your three highest-traffic collections at desktop width and look at the grid, not the products. You are checking for four things:

  • Background inconsistency. Pure white next to off-white next to a grey sweep next to a lifestyle shot. Grids read as untidy long before shoppers can say why.
  • Scale inconsistency. A candle that fills 90% of its frame next to a candle that fills 50%. On a collection page, the bigger one looks like a bigger product, which it isn't.
  • Framing inconsistency. Mixed top-down, three-quarter and straight-on angles for the same product category.
  • Metadata rot. Filenames like IMG_4471-final-v2.jpg, blank alt text, and featured images that are whichever file happened to upload first.

Then check the numbers. Shopify Analytics can give you sessions and conversion rate by landing page; segment by collection. A collection with healthy traffic and a conversion rate well below your store average, where the products themselves aren't obviously the problem, is the classic candidate. Merchants also tend to see the symptom in product-page behaviour: shoppers land, don't open the gallery, and leave.

A quick self-test

Screenshot a collection grid, shrink it to thumbnail size, and squint. If you can still pick out which products came from which era of photography, the set needs refreshing. Shoppers do this test unconsciously every time they scroll.

A refresh is worth running when the inconsistency is systemic. If only a dozen products are off, fix those dozen and move on. If a quarter of the catalog is, you have a refresh project.

Scoping the refresh: not every product gets the same treatment

The single biggest mistake in a bulk image refresh is treating the catalog as one undifferentiated list and starting at the letter A. Your products don't contribute equally to revenue, and they don't fail equally either. Triage first.

Pull a product export with sales for the last 90 days and score each product on two axes: how much it matters commercially, and how badly its current imagery misses your target standard. That gives you tiers:

TierDefinitionTreatmentTypical share of catalog
Tier 1Top sellers with off-standard imageryFull refresh, all gallery positions, first in the queue5–10%
Tier 2Mid-sellers and full-price core rangeFeatured image plus primary angle; secondary angles if source allows20–30%
Tier 3Long tail with some trafficFeatured image only, metadata cleanup40–50%
Tier 4Dormant, discontinued, or being delistedSkip. Archive or delete instead of refreshing15–25%

Two things fall out of this. First, the project is smaller than the catalog. A 1,200-SKU store rarely needs more than 700–900 products touched, and a meaningful chunk of those need only a single new featured image. Second, the order is now obvious: Tier 1 ships first because it moves the most money and because it gives you the fastest read on whether the new standard actually performs.

Write the tier onto each product as a tag or a metafield. You will want to filter by it in the Shopify admin for the rest of the project, and it makes the rollout step later much simpler.

Define the standard before you generate a single image

"Consistent" is not a standard. A standard is a short written spec that a person or a pipeline can check an image against and say yes or no. For a Shopify catalog it usually needs five lines:

  1. Background. The exact plate colour, as a hex value, not "white". Off-white and pure white look identical in isolation and wildly different in a grid.
  2. Framing and scale. How much of the frame the product occupies, per category. A rule like "product fills 78% of the shorter dimension, centred, with fixed headroom" is checkable. "Nicely framed" is not.
  3. Aspect ratio and resolution. Square is the safe default for Shopify collection grids; most themes crop to it anyway. Pick one and produce everything at it.
  4. Angle per category. Straight-on for bottles and jars, three-quarter for footwear, flat lay for folded apparel, and so on. One primary angle per category, always in position 1.
  5. Metadata. A filename pattern (brand-product-handle-01.jpg), an alt text pattern (product name, colour, key attribute — no keyword stuffing), and a rule that position 1 is always the primary angle.

The scale rule matters more than most merchants expect. Real products differ in size, and shoppers use relative scale as a cue. Two approaches work. A visual rule normalises everything to fill the same proportion of the frame, which produces the tidiest grid. A physical rule scales products relative to their real dimensions within a category, so a 30cl candle jar reads as smaller than a 60cl one. Pick per category; don't mix within one.

Don't ask the camera — or the AI — for the background colour

Whether you're shooting or generating, exact plate colour and framing should be applied deterministically afterwards, not requested up front. Lighting shifts, models drift, and a "white" background comes back at eight different values. Produce the product, then composite it onto the exact plate at the exact scale in a fixed step. That is how tools like Retouchable's product pipeline keep a thousand images on the same standard: the product is generated, then measured, scaled by a per-category rule and placed on the specified colour by a separate framing step.

Write the spec down, apply it to ten products across three categories, put them in a grid, and look. Adjust once. Then freeze it. Changing the standard mid-refresh is how you end up with a catalog that has two inconsistent sets instead of one.

Producing the new set at volume

For a catalog refresh you almost never have the products in hand. What you have is the existing imagery — and that is enough more often than merchants assume. The bulk of a refresh is not new photography; it is bringing existing photography onto the new standard.

Sort your in-scope products by what the source image allows:

Reshoot required

  • Source image under ~800px on the long edge
  • Product partly cropped or obscured
  • Heavy motion blur or compression artefacts
  • Wrong product variant in the photo

Regenerate from source

  • Product is sharp and fully in frame, background is wrong
  • Cluttered lifestyle or supplier shot with a clean product
  • Colour cast or dim lighting but good detail
  • Correct angle, wrong scale or aspect ratio

For the second column, an AI product studio pass — isolate the product, relight, place it on the standard plate, frame to the scale rule — handles the whole catalog in hours rather than the weeks a reshoot would take, at a fraction of studio cost. The candle jar photographed on a cluttered shelf under warm dim light becomes a clean, correctly-scaled, neutrally-lit hero on your exact background without anyone touching the physical product. For the first column, book the reshoot for those SKUs only. On a typical mature catalog, reshoots are a minority: the source problem is usually context and consistency, not resolution.

Run production in batches that match your rollout tiers, not in one enormous job. A batch of 100–200 products is small enough to QA properly and large enough to be efficient. For each batch:

  • Generate to the frozen spec.
  • Sample-check 10% by eye against the spec, in a grid, not one at a time. You are looking for scale outliers, plate colour mismatches, and any product where the AI has invented or dropped a detail (labels and logos are where to look hardest).
  • Reject and rerun the failures. Don't hand-fix them; if a class of product keeps failing, fix the spec or the source list.
  • Name files to the pattern and write alt text as you go. Doing metadata later means doing it twice.
100–200Products per production batch
10%Visual QA sample per batch
1Spec change allowed, before batch one

Rolling out to Shopify by collection, featured image first

Now the mechanical part, and the part where a refresh most often goes wrong in public. Three rules keep it safe.

Roll out by collection, not by product list. A collection grid that is half old-standard and half new-standard looks worse than either. Finish every product in a collection before moving to the next. Start with your Tier 1 collection because it carries the most revenue and because you want a clean before-and-after read on it.

Featured image first, gallery second. Position 1 is the image that appears on collection pages, in search results inside the store, in Shopify's own channels, and as the default social share. It carries most of the conversion effect. Replace featured images across a collection first, verify the grid, then work through positions 2 onward. We covered why position behaves the way it does in Controlling Shopify Image Position and Gallery Order — the short version is that a plain upload appends to the end of the gallery, so if you don't set position explicitly, your new hero lands at position 12 and nobody sees it.

Set filename, alt text and position at push time. If your workflow can push a finished image directly to a Shopify product and set those three fields in the same request, use it. Retouchable's Shopify connection works this way: pick the product from your store inside the tool, push the image, and it lands with the filename, alt text and position you specified — position 1 replacing the featured image, or appended to the gallery. Every push is one image to one product, which is what you want for a controlled rollout; you are not trusting a CSV to line up 900 rows. The mechanics are in Pushing Images Back to Shopify Products.

If you are pushing via the Admin API yourself, be aware of the rate limit. Shopify throttles bursts and returns a 429 with a Retry-After header when you exceed it; a well-behaved client waits the stated interval and retries rather than hammering. Budget time accordingly — a few hundred images per hour is realistic without tripping it, not a few thousand.

On permissions: an image refresh needs read and write access to products, nothing else. If a tool asks for orders, customers or payment scopes to change images, that is a reason to look elsewhere.

Keeping the old set recoverable, and measuring the result

You will want to roll something back. Not the whole refresh — but a product where the new image hides a detail shoppers relied on, or a collection where the standard turns out not to suit the category. Plan for it.

Before touching a collection, export it with image URLs. Shopify's product CSV includes Image Src and Image Position; keep that export somewhere you will find it in six months. The original image files stay on Shopify's CDN only as long as they remain attached to a product, so if you delete old images rather than reordering them below the new set, download them first. A cheap middle path: for Tier 1 products, keep the old featured image in the gallery at the last position for the first month, then remove it.

Then measure, per collection, before and after:

MetricWhereWhat a good result looks like
Collection page → product page click-throughShopify Analytics / GA4Up. The grid is doing its job.
Product page conversion rateShopify AnalyticsUp or flat. Down means the new image hides something.
Gallery interaction rateHeatmap or GA4 eventWatch it. A drop can be good (featured image answers the question) or bad (gallery is now boring).
Return rate, "not as pictured"Returns toolFlat or down. Up is the loudest possible warning.
Image search impressionsGoogle Search ConsoleUp over 6–10 weeks as new filenames and alt text are indexed.

Give each collection at least two full weeks, preferably a month, and compare against the same period the previous year where you can — seasonality will otherwise drown the signal. The first Tier 1 collection is your proof. If it moves the right way, the case for finishing Tiers 2 and 3 makes itself.

Making the refresh the last one you need

The reason catalogs drift is that images enter the store through too many doors: the photographer, the supplier, the marketplace listing tool, the person who "just quickly" shot a new colourway on their phone. A refresh fixes the backlog; it does not close the doors.

Three changes do:

  • Every new image passes through the standard. New products, new colourways, and supplier images all go through the same framing step and land on the same plate at the same scale before they touch Shopify. If your pipeline makes this the default rather than an option, drift stops.
  • Metadata is set at upload, always. Filename pattern, alt text, position. If the tool that pushes to Shopify sets them, nobody has to remember.
  • A quarterly grid review. Fifteen minutes, three collections, thumbnail size, squint. Catch the two or three products that slipped through before they become forty.

Done this way, the next "refresh" is a handful of products a quarter, not a project with a spreadsheet and a Gantt chart. The set you have just built stays the set you have.

Frequently Asked Questions

How long does a Shopify bulk product image refresh take?

For a catalog of 500–1,500 products where most products can be regenerated from existing source imagery, plan on two to four weeks end to end: a few days to audit and scope, a few days to define and test the standard, then production and rollout in collection-sized batches. Reshoots for products with unusable source images run in parallel and are usually the long pole.

Can I bulk update product images with Shopify's bulk editor?

No. Shopify's bulk editor changes text, prices, inventory and status but cannot add, replace or reorder images. Bulk image changes go through the product CSV import, an app connected via the Admin API, or manual uploads on each product.

Should I replace old product images or keep them in the gallery?

For your best sellers, keep the old featured image in the gallery at the last position for the first month so you can restore it quickly if conversion drops. For the long tail, replace outright. Either way, export the collection with image URLs before you start so you have a record of what was there.

Will refreshing product images affect my SEO?

Replacing image files changes their URLs, so existing image rankings reset. This is normally worth it: consistent, correctly-named images with real alt text tend to gain more in image search over the following weeks than the old files were earning. Keep product URLs unchanged and set filenames and alt text at upload so the new files are indexed properly from day one.

Do I need the products in hand to refresh the imagery?

Usually not. If the existing photo shows the product sharply and fully in frame, an AI product studio pass can isolate it, relight it, and place it on your standard background at the correct scale. Only products with small, blurry, cropped or wrong-variant source images need a physical reshoot.

Bring your whole Shopify catalog onto one standard

Regenerate your existing product photos to a single background, scale and framing, then push them straight to your Shopify products with filename, alt text and position set.

Try Retouchable Free No credit card required