How to move your Squarespace product images to Shopify
When you move a store from Squarespace to Shopify, product details travel in a CSV and Shopify can fetch the photos from their Squarespace links. The catch: those links only work while your Squarespace site is live, and Squarespace’s export leaves some photos out. Here is how to move every photo and keep a copy.
Before you start
- Your Squarespace site is still live, so the photo links work.
- Every photo you want is in its product’s gallery. Featured images and photos set on one variant aren’t exported.
- Your Shopify store can import products (Products → Import).
- You’ll keep the photo ZIP until every product in Shopify has all its photos.
- Squarespace exportProducts & Services → Products → Export all
- Save every photoA ZIP plus
manifest.csvwith each photo’s link - Shopify CSVOne link per row in Product image URL
- Import and checkProducts → Import, then compare image counts
How Shopify brings in product photos
- Shopify’s product CSV has a Product image URL column (called
Image Srcin older templates) and a Variant image URL column. - During the import, Shopify downloads each image from its link and re-uploads it to your store. Links from other websites have to be publicly accessible. Shopify also skips image file names that end in
_thumb,_smallor_medium; rename those files and upload them as described below. Shopify’s product photos can be PNG, JPEG, WebP, HEIC, GIF, TIFF, BMP or SVG; it doesn’t list AVIF, so convert any AVIF photos (their links end in.avif) and upload them as described below. - Squarespace product photos live on
images.squarespace-cdn.comand stay reachable while your site is live, so do the import before you cancel your Squarespace plan.
Step 1: keep a copy of every photo
Export your products in Squarespace (Products & Services → Products → Export all). The Hosted Image URLs column lists each product’s photos, separated by spaces. Download them by hand (see how to download all your Squarespace product images) or upload the CSV to Parcel and get one ZIP with a folder per product. Keep that ZIP as your backup.
Check what the export leaves out. It lists each product’s gallery photos. A separate featured image, or a photo set on a single variant, is left out unless it is also in the gallery, and download (digital) products aren’t exported at all. Save those photos from Squarespace by hand before you close the site.
Step 2: give Shopify the links
- Parcel’s image details spreadsheet (
manifest.csvin the ZIP) lists each saved photo’s link in itsoriginal_urlcolumn, with the product’s title and SKU next to it. Leave Include image details spreadsheet ticked when you export, so the ZIP has it. Without Parcel, split theHosted Image URLscell at the spaces. - In your Shopify product CSV, put one link per row in the Product image URL column, on rows that share the product’s handle, and number them in Image position (1, 2, 3…). Shopify takes up to 250 images per product, so pick the 250 to keep for any product with more. The first link in Squarespace’s list is the main photo.
- Import the CSV in Shopify (Products → Import) while your Squarespace site is still live.
| Handle1 | Title | Variant SKU | Product image URL2 | Image position3 |
|---|---|---|---|---|
| trail-mug | Trail Mug | MUG-01 | https://images.squarespace-cdn.com/…/mug-1.jpg | 1 |
| trail-mug | https://images.squarespace-cdn.com/…/mug-2.jpg | 2 | ||
| tea-towel | Tea Towel | TT-02 | https://images.squarespace-cdn.com/…/towel-1.png | 1 |
Columns without a note are left out here; your file has them too.
- Handle: rows that share it are one product. Each extra photo gets its own row.
- Product image URL: one Squarespace link per row, where Squarespace had them all in one cell separated by spaces.
- Image position keeps Squarespace’s order: the first link in its list is the main photo.
- 250images per product
- 200files per upload in Content → Files
- 20 MBlargest image file in Files
- 25 MPlargest image in Files
From Shopify’s help pages, checked October 13, 2026. Shopify can change them.
If your Squarespace site is already closed
Use the files you saved in step 1. In Shopify, open Content → Files and upload the photos (up to 200 at a time). Shopify takes JPEG, PNG, WebP, HEIC and GIF images up to 20 MB and 25 megapixels, and no more than 100 times wider than tall (or taller than wide), so convert any other format (such as AVIF) and shrink or crop very large or very long images first. Copy each file’s link with its Link button and use those links in the Product image URL column. Naming files by SKU in Parcel makes matching them to products quick.
After the import
Open a few products in Shopify and check their photos. Shopify can finish an import and still skip some images, so then export your products from Shopify and compare each product’s image count with the number of images it has in your old export. Don’t count from the image details spreadsheet alone: it lists only the images Parcel saved, while failed downloads are in failed-downloads.csv and skipped links were counted on screen. Keep the ZIP until every product has all of its photos.
Free method
Downloads/
- products.csv
Links only, all of a product’s in one cell. They stop working when the Squarespace site closes.
Parcel
parcel-1a2b3c4d.zip
- trail-mug/
- MUG-01-1.jpg
- MUG-01-2.jpg
- tea-towel/
- TT-02-1.png
- manifest.csv
Every gallery photo saved (JPEG, PNG and GIF in their own format), named by SKU, with one link per row in the manifest.
The faster way: Parcel
Parcel turns the Squarespace export into one ZIP: a folder per product, files named by SKU or URL slug, the image details spreadsheet with each saved photo’s link, and a report of anything that could not be downloaded. Links Parcel can’t use, such as images hosted on another website, are counted on screen before you export; save those by hand. It never asks for your Squarespace or Shopify login. Up to 25 products is free; larger catalogs are a one-time $9, $19, or $39. No subscription.
If something goes wrong
- A product came across without its featured image
- Squarespace exports gallery photos only. Save the featured image from Squarespace by hand, upload it through Content → Files, and add it to the product.
- The import finished but some photos are missing
- Shopify can skip images and still finish. Compare each product’s image count with your Squarespace export, then add the missing photos from your ZIP through Content → Files.
- Photos ending in _thumb, _small or _medium were skipped
- Shopify ignores those file names. Rename the files from your ZIP and upload them through Content → Files, then use those links.
- The Squarespace site is already closed
- The links may no longer work. Upload the photos you saved to Content → Files and use each file’s Link in the import instead.
Questions
Can Shopify import photos straight from Squarespace?
Yes, while the Squarespace site is live: put each photo link in the Product image URL column of Shopify’s product CSV and Shopify downloads it during the import. Squarespace’s export has all of a product’s links in one cell, so they need one row each.
Which photos does Squarespace’s export leave out?
A separate featured image and photos set on a single variant, unless they are also in the product’s gallery, and every image of a download product. Save those by hand.
How many photos can a Shopify product have?
Up to 250 images per product. For any product with more, pick the 250 to keep.
Do variant photos come across?
Squarespace’s export doesn’t say which photo belongs to which variant, so they come across with the product’s other photos. Assign them to variants in Shopify afterwards.
Does Parcel move my products to Shopify?
No. Parcel saves your photos and lists their links; you build and import the Shopify CSV yourself. It never asks for your Squarespace or Shopify login.
Parcel is an independent tool, not affiliated with Squarespace.