Skip to content
GuidesBulk upload

Bulk Upload Product Images to Shopify with AI: A Practical Guide

How to bulk upload product images to Shopify with AI: put photos in Google Drive or Dropbox, let AI match messy file names to products, review, then upload.

By Craftshift Team · · 5 min read

To bulk upload product images to Shopify with AI, put your photos in a Google Drive or Dropbox folder, let an app read the file names and match each photo to a product or variant, check the preview, and upload. In Smart Bulk Image Upload the AI step reads file names, not the pictures, so you skip the renaming but still approve every match.

What does “bulk upload product images with AI” actually mean?

It helps to be precise, because “AI” is used for several different things in e-commerce tooling:

Type of AIWhat it doesIs it what this post covers?
AI file-name matchingWorks out which product a file name like cct_navy_01.jpg refers toYes
Image recognitionLooks at the photo and guesses what product it showsNo
AI image generation or editingCreates or retouches photos, removes backgroundsNo

The slow part of a big image upload is rarely the upload itself. It is working out which of 5,000 files belongs to which product. That is the step AI matching removes, and it is the one this guide focuses on.

Why is bulk uploading product images so slow without it?

The Shopify admin takes images one product at a time. A CSV import needs a public URL for every image and a correctly built row for every variant. Both methods are covered in our comparison of three bulk upload methods.

The usual shortcut is to name every file after its SKU (AB-1234.jpg) and let software match them. That works well, but only if the names are clean. Photos that come from several suppliers, photographers or years of history rarely are, and renaming thousands of files by hand can take longer than the upload.

How does the AI-assisted workflow work?

  1. Collect the photos in one folder. Use Google Drive or Dropbox. The app only reads from your cloud storage; it never renames, moves or deletes your files.
  2. Choose what to match on. Pick the field that holds the identifier: SKU, barcode, product title or a metafield.
  3. Turn on AI matching (beta). Clear-cut names are matched instantly. For the others, the app builds a shortlist of likely products from your own catalog and the AI picks one candidate or none.
  4. Review the preview. Every pairing is shown with its thumbnail, file name, variant and position. Matching is read-only, so you can run it as often as you like.
  5. Press Start upload. Only now does anything change in your store. A background job downloads each image and attaches it to the right product and variant.

The AI can only choose products that exist in your store. Picks it is not confident about stay unmatched instead of being guessed, and each AI match shows a confidence level.

Which messy file names can AI handle?

Typical cases where exact and “contains” rules fail:

  • Different separators and image numbers: cct_navy_01.jpg for SKU CCT-NAVY-S.
  • Typos: Wilcats-pink.jpg for a product called “Wildcats”.
  • No separators: maxidresssummer.jpg for “Maxi Dress Summer”.
  • Stray punctuation: 43443-86-1,.jpg for SKU 43443-86-1-S.

It also treats _2, -02, (2), front or back as the order of the photos rather than part of the identifier, so the main image lands first. For a deeper look, see how AI image matching works.

Should I use AI matching or a naming convention?

Your situationBest approach
You control the file namesRename to a clear convention and use exact SKU matching. Same result every run, nothing to review twice.
Names come from many sources and are inconsistentAI matching. It saves the clean-up.
The code already lives in a product fieldStore it in a metafield and match on that. See matching options.

AI matching is a tool for the messy folders, not a replacement for good naming.

What should I check before uploading?

AI matching is in beta, so treat the preview as the safety net:

  • Spot-check a sample, especially products with similar names or several colours.
  • Open the unmatched list and fix those manually, or export it as CSV.
  • Unmatch anything wrong with one click.
  • Decide between adding and replacing images. Replace mode removes existing images, so read the replace vs add guide first.
  • Keep the folder clean. In Dropbox, every file in the folder is listed, so a stray .csv or .pdf shows up as an unmatched entry.

What are the limits and costs?

ItemValue
Image file size20 MB (Shopify limit; larger files are resized automatically)
Resolution20 megapixels (Shopify limit)
Images per product250 (Shopify limit)
Free plan25 uploaded images in total, enough for a test run

Shopify limits how fast files can change in a store, so a large job runs steadily rather than fast. Plan on hours, not minutes, for tens of thousands of images. Progress is saved per image, so a restart resumes where it stopped. More detail is in limits and troubleshooting.

How do I try it safely?

  1. Create a folder with 10–20 of your messiest photos.
  2. Run matching with AI turned on. Nothing is written to Shopify.
  3. Read the preview and note how many matched correctly.
  4. Upload with Don’t replace existing images selected.

Our getting started guide walks through the setup in about ten minutes.

Summary

Bulk uploading product images with AI means letting software do the slowest part of the job: working out which photo belongs to which product when the file names are inconsistent. The AI reads file names, not pictures, only chooses from products in your store, leaves uncertain files unmatched, and shows everything for review before a single image is uploaded. If your names are clean, exact SKU matching is simpler. If they are not, AI matching saves hours.

Try it on a small folder: install Smart Bulk Image Upload from the Shopify App Store. The free plan covers 25 images, and matching is read-only, so you can see the results before you commit.

Keep reading

Try it on your own catalog

Matching is free and read-only. See exactly where every image would go before you upload anything.