How to bulk upload product images to Shopify by matching images by SKU

We’ve found that Bulk uploading product images to Shopify by matching the images to products by SKU is the way to go large. Naming the files of the images the same as the product SKU and then uploading through an upload utility makes it very efficient – no navigating to individual product pages and manually dragging images into galleries. The SHOP page is up in no time.
Manually uploading product images one by one is painful for any store with more than a few dozen products. Dragging and dropping 8 images at a time into individual product pages can take days for a catalog with 1,000+ images. SKU-based matching solves this: name your files with the SKU prefix, upload them in bulk, and the app assigns each image to the right product automatically. Same accuracy, a fraction of the time.
This guide covers SKU based filename convention, the CS Smart Bulk Image Upload workflow for the Shopify image upload process, common problems that can cause files to mismatch during upload and how to prepare your files before upload to prevent these problems.
In this post
- Why SKU-based matching works best
- The filename convention
- CS Smart Bulk Image Upload workflow
- Uploading from Google Drive
- Prep work before uploading
- Common issues and fixes
- What to do after upload
- FAQ
Why SKU-based matching works best
SKUs can be assigned to every product in Shopify. Every SKU is unique, and SKUs do not change unlike product titles which can repeat or change. Therefore the best field to match images to would be the SKU field.
Alternative methods suck. Title matching for products that have similar names will just go wrong, handle matching requires knowledge of the slug of the product page, tag matching just adds complexity for no reward. SKU matching is easy – does the filename have the SKU in it? Yes. Attach the image. Done.
There are two main scenarios for SKU matching:
- Product-level matching. Your SKU identifies the product. All images with that SKU in the filename go to that product’s gallery. This works for stores where products have one SKU and multiple images.
- Variant-level matching. Each variant has its own SKU. Images with the variant SKU go to that specific variant. This is for stores where each color/size combination has unique photos.
Make sure every product in your store has a SKU before you start with importing. It’s surprising how many SKUs some stores have that are empty. You can check if a product has a SKU in the Variant SKU column in a Products > Export > CSV export. You can also use our SKU generator if you need to generate some SKUs.
The filename convention
The filename must begin with or contain the SKU, followed by optionally assigned sequence numbers/descriptors
SKU-1234_01.jpg
SKU-1234_02.jpg
SKU-1234_03.jpg
SKU-1234_front.jpg
SKU-1234_back.jpg
SKU-1234_detail.jpg
Rules:
- The SKU portion must match your Shopify product SKU exactly. Case-sensitive in most tools.
- Use an underscore or hyphen to separate the SKU from the sequence number or descriptor.
- The sequence number determines image order in the gallery (01 first, 02 second, etc.).
- Accepted formats: JPG, PNG, WEBP, GIF. Shopify re-encodes everything to its CDN format.
- No spaces in filenames. Spaces cause URL encoding issues and break some matching tools.
You can also choose to add descriptive keywords to the file names to aid SEO. If you choose to do this you should add these after the SKU e.g. SKU-1234-navy-wool-sweater-front.jpg. The matching tool will read the SKU part but the file name will also now contain keywords that the search engines, such as Google, will be able to read. Our bulk image renamer makes it easy to rename all of your product images at the same time.
CS Smart Bulk Image Upload workflow
CS Smart Bulk Image Upload is a shopify app that allows you to upload a bunch of images at once and have them go into the appropriate product galleries. All you need to do is upload the images, the app will automatically extract the filenames and use the SKUs in the filenames to match up the images with the appropriate products, then upload the images.
- Install the app from the Shopify App Store.
- Open the upload screen in the app.
- Select SKU matching mode. The app has a matching toggle that tells it to read the SKU portion of the filename.
- Drag and drop your image files into the upload area. Or use the Google Drive import (see next section).
- Review the matching preview. The app shows you which images matched which products. Unmatched files are flagged so you can fix the filename or check the SKU.
- Confirm and upload. The app processes all files, uploads them to Shopify, and attaches them to the matched products in the correct order.
- Check the results. The app shows a completion summary with success/failure counts.
Processing 500 images took about 10 to 15 minutes, mostly waiting for uploads to complete. Dragging and dropping 500 images manually would take all year!
Uploading from Google Drive
CS Smart Bulk Image Upload also supports uploading images from a Google Drive folder. This is useful in scenarios where images are uploaded to a shared Google Drive folder by a photographer or supplier, or where large files cannot be easily dragged and dropped in the browser.
The workflow is pretty straight forward. First you link your Google account to the application. Once linked you can browse for the folder on your drive where the SKU-named images reside. Select that folder and the application will then pull all images from drive matching SKU names. Same logic but with a different starting point.
It has been noticed that Google Drive file names do not always get set correctly when uploading files from a phone or tablet application. Be certain to check Drive file names against your SKU pattern before triggering an import.
Prep work before uploading
15 minutes of code now to save an hour later Do these before any bulk upload 15 minutes of prep to save an hour of debugging 4
- Audit your SKUs. Export your product CSV and check for empty, duplicate, or inconsistent SKUs. Our SKU generator helps fix gaps.
- Standardize your filenames. Batch-rename with a consistent pattern. Use the bulk image renamer for this.
- Compress your images. Shopify accepts up to 20MB per file, but anything over 2MB slows upload and hurts page speed. Run through our image compressor first.
- Check for duplicates. If the same SKU appears on two products, the matching tool can not know which one to target. Fix duplicate SKUs first.
- Test with 5 products. Upload a small batch, verify the images landed correctly, then process the rest.
Use an image audit tool to check how a site is covering all the images required to give an overall image of the products on offer. This tool shows you which products are under represented with too few images and which products have no images at all. Once you know this you can decide whether you are going to go ahead and take the images yourself, source the images from elsewhere or use image recognition software.
Common issues and fixes
Most SKU matching problems come down to one of these:
- Case mismatch. Your SKU in Shopify is “TSH-RED-S” but the filename says “tsh-red-s”. Most matching tools are case-sensitive. Match the case exactly.
- Leading zeros. Excel drops leading zeros from numbers. SKU “001234” becomes “1234” when saved from Excel. Open your CSV in a text editor to verify, or format the column as text in Excel before saving.
- Special characters in SKUs. Slashes, ampersands, and hash symbols in SKUs cause problems in filenames. Avoid these in your SKU system. If you already have them, rename the files to use the exact character.
- Spaces in filenames. Spaces break URL encoding and confuse some matching tools. Replace with hyphens or underscores.
- Duplicate SKUs. Two products with the same SKU means the tool can not determine the target. Shopify allows duplicate SKUs (it shouldn’t, but it does). Deduplicate before uploading.
- Empty SKUs. Products without a SKU can not be matched. Add SKUs first.
- Wrong file format. Shopify supports JPG, PNG, GIF, and WEBP for product images. TIFF, BMP, and RAW files are not accepted. Convert before uploading.
Why doesn’t Shopify allow SKU-based upload of products? I don’t know why they don’t do this. The Files section allows you to upload lots of files at once and then you can individually upload each file into the product section. There is a bridge missing between the two, ie. it would be really convenient if you could just upload a file with a list of product names and prices and shopify’s filing system could read the file names and automatically match them up in the product section. Several apps do this, but it’s one of the areas in the admin that has a big gap and apps plug the gap.
What to do after upload
Images are uploaded and matched. Now what?
- Check image order. The sequence numbers in your filenames should have determined the gallery order. Spot-check a few products to make sure the hero image is first.
- Set alt text. Bulk-uploaded images usually have empty alt text. Fill it in for SEO. Our product image SEO guide covers alt text best practices.
- Assign images to variants. SKU matching puts images on the right product but not on the right variant within that product. If you sell a shirt in 5 colors and each color has unique photos, you need variant-level image assignment. That is what Rubik Variant Images handles. It filters the product gallery so shoppers only see images for the selected variant.
- Run an image audit. Use the image audit tool to verify coverage across your catalog. Flag any products that still have zero or too few images.
If you also want to group similar products (e.g. different colors as separate products with swatches on collection pages), Rubik Combined Listings handles that too. Upload images, assign images to product variants, and then group the products together. This extension handles the most complex of product listings.
FAQ
How does SKU-based image matching work?
Product images should be named with the 8 character product SKU followed by an underscore and the image number e.g. SKU-1234_01.jpg. The upload tool will then read the filename to identify the product in Shopify and automatically attach the image to that product.
Does Shopify have a native SKU-based image upload feature?
Shopify doesn’t allow you to match uploaded images to products with corresponding SKUs within their administration panel. A third-party app, such as CS Smart Bulk Image Upload is required for such a task.
Is the SKU matching case-sensitive?
Is this typical for most tools? In the instructions it states the filename MUST be the exact filename of the product on Shopify with the matching SKU. It wouldn’t occur to me to have every SKU exactly match the filename with exact case matching (e.g. Yellow Twinklin Bright Confetti vs YELLOW TWINKLIN BRIGHT CONFETTI). Isn’t it safest to add instruction language similar to “Make sure the SKU matches exactly in both filename and Shopify product details.” as some of us may not realize our default file name may have an extra space or capital letter that is distinct from the Shopify product details?
What happens if two products have the same SKU?
The matching tool wasn’t able to identify a product to match to. While Shopify does allow for duplicate SKUs to exist, this can prevent SKU-based matching from functioning. Prior to uploading product images, make sure to correct for any duplicate SKUs.
Can I upload images from Google Drive by SKU?
Yes. This functionality is also available with Google Drive folder imports. CS Smart Bulk Image Upload enables you to connect to a Google account, choose a folder, and it will match files based on filename. Same SKU rules apply.
How many images can I upload at once?
CS Smart Bulk Image Upload processes hundreds of images at a time. Due to Shopify’s limit of 250 images per product, it is typical for the upload to complete in 10 to 15 minutes when uploading 500 images.
Do uploaded images automatically assign to the right variants?
If you are doing SKU matching, these images will attach to the right product, but not to the specific variant. For variant level image filtering and matching after you upload your products, check out Rubik Variant Images.
Related reading
- Shopify product image SEO guide
- Shopify variant images complete guide
- How to bulk rename image filenames
- Variant images FAQ on rubikvariantimages.com
- Combined Listings explained on rubikify.com
Export your product CSV, organize in SKU order and count the empty entries. If over 10% of your items are missing SKUs, address the issue prior to uploading batch images. The SKU generator creates well structured codes in seconds. Rename your images, upload via the appropriate tool, and the program will subsequently match up the SKU to the correct item.