Squarespace to WooCommerce product CSV converter

In short: Squarespace exports physical and service products as a CSV with one row per variant, hosted image links on the first row, and up to six variant options. WooCommerce's built-in product importer reads its own column labels, one row per product and one per variation, with every variation pointing at its parent. Drop the Squarespace file below to get one from the other. It is converted on your device and never uploaded.

Convert Squarespace to WooCommerce

Squarespace to WooCommerce

Your Squarespace products CSV.

Your file stays on this device

It is read and converted by this page, inside your browser. Nothing from the file is uploaded, and the tool keeps working offline once the page has loaded.

Loading the converter...

What moves: products, variants, prices, stock, SKUs, images, tags, descriptions and SEO fields where both platforms have them. What does not: customers, orders, reviews, gift card balances, blog posts, pages and URL redirects are not in a product export, so CatalogHop does not convert them.

1. Export your products from Squarespace

  1. In Squarespace, open Commerce (or Products & Services), then Products.
  2. Click Export all (in the menu above the product list) and save the CSV.
  3. Note your store's weight unit. The file does not include it, so this page asks you before you download.

What to know about the Squarespace file

  • Weights have no unit in the file, so the page asks for your Squarespace weight unit before you can download. Every weight, and so every weight-based shipping rate, depends on it.
  • The export has no variant images and no image alt text, so neither can be carried over.
  • Service products are converted as products without shipping. Download products are not in the export.
  • Squarespace allows up to six options per product. Shopify allows three, so products with more are left out of a Shopify file and listed for you to fix.

What the WooCommerce file gets

  • The column labels of WooCommerce's built-in importer (checked against WooCommerce 11.2.2), so columns map automatically.
  • Variable products with their variations, each variation linked to the parent by SKU. A parent SKU is made from the URL handle when the source has none.
  • Weights converted to your WooCommerce weight unit, with the matching column label such as Weight (kg).
  • Repeated SKUs left blank on the later rows, because WooCommerce rejects duplicate SKUs.
  • Products hidden from the online store written with catalog visibility hidden, and products that need no shipping written as virtual.
  • Attributes as product-level (not global) attributes.

2. Before and after

Before: the Squarespace products CSV

"Product ID [Non Editable]","Variant ID [Non Editable]","Product Type [Non Editable]","Product Page","Product URL","Title","Description",...
"aaaaaaaaaaaaaaaaaaaaaaa1","v1","PHYSICAL","shop","tote-bag","Canvas Tote Bag","<p style=""white-space:pre-wrap;"">Heavy canvas, 15"" x 1...
,"v2",,,,,,"TOTE-BLK",,,"Color","Black",,,,,,,,,,,"30.00","0.00","No","Unlimited",,,"1.5","0.0","0.0","0.0",,
,"v3",,,,,,"TOTE-BLK",,,"Color","Olive",,,,,,,,,,,"$32.00","0.00","No","0",,,"1.5","0.0","0.0","0.0",,
"aaaaaaaaaaaaaaaaaaaaaaa2","v4","SERVICE","shop","portrait-session","Portrait Session","One hour session.","SESSION",,,,,,,,,,,,,,,"150.0...
"aaaaaaaaaaaaaaaaaaaaaaa3","v5","PHYSICAL","shop","custom-sneaker","Custom Sneaker","Four options.","SNK-1",,,"Size","9","Color","Red","L...

After: woocommerce-products.csv

After: first rows of woocommerce-products.csv
TypeSKUNamePublishedIs featured?Visibility in catalogDescriptionTax statusIn stock?StockBackorders allowed?Weight (kg)
variabletote-bagCanvas Tote Bag10visible<p style="white-space:pre-wrap;">Heavy canvas, 15" x 16",...taxable
variationTOTE-NATCanvas Tote Bag - Natural1taxable11200.6804
variationTOTE-BLKCanvas Tote Bag - Black1taxable100.6804
variationCanvas Tote Bag - Olive1taxable0000.6804
simple, virtualSESSIONPortrait Session-10visibleOne hour session.taxable10
variablecustom-sneakerCustom Sneaker10visibleFour options.taxable

12 of 37 columns shown (empty columns hidden, 23 more with data).

What the converter reported for this sample

3 products read, 3 written.

  • Check this: "Portrait Session" is a service product; it was converted as a product without shipping.
  • Not carried over: "Canvas Tote Bag": the main product was given the SKU "tote-bag" so WooCommerce can link its options (variations) to it. Nothing to do.
  • Check this: "Canvas Tote Bag": one row had a SKU already used elsewhere in the file (TOTE-BLK), so it was left blank. WooCommerce rejects duplicated SKUs.
  • Not carried over: "Custom Sneaker": the main product was given the SKU "custom-sneaker" so WooCommerce can link its options (variations) to it. Nothing to do.

Sample products made up for this page, laid out exactly like a real Squarespace export. The "after" file and the notes were produced from it by the same converter this page runs.

3. Import into WooCommerce

  1. In WordPress, go to Products, then All Products, and click Import.
  2. Choose woocommerce-products.csv and click Continue.
  3. On the column mapping screen, check that each column is matched. If the weight column is not matched, pick Weight for it.
  4. Click Run the importer. WooCommerce shows a count of imported, skipped and failed products at the end.

Before you import everything

  • Vendor and barcodes are not written: core WooCommerce has no vendor column, and the barcode (GTIN) column does not map automatically in 11.2.
  • Weight column labels other than Weight (lbs) are taken from WooCommerce's source code rather than a sample file. If yours is not matched on the mapping screen, match it by hand.
  • Images are imported by WooCommerce downloading each link, so the links must be public.
  • Import a handful of products first, open them in your store and check variants, prices, stock and images. Then import the rest.

Already have a WooCommerce CSV that fails? Use the WooCommerce CSV checker.

Questions

Do I need to pick a weight unit?
Yes. Squarespace writes weights as bare numbers in your store's unit. Pick it under "Weight unit in your old store" and also set your WooCommerce weight unit so the numbers are converted correctly.
Is my file uploaded anywhere?
No. The page reads the file with your browser and converts it there. The only thing the site records is an anonymous count: which converter was used, a rough row count, and whether it worked. The privacy page lists every field.
Will the import definitely work?
Nobody can promise that from a file alone. The converter follows each importer's documented rules, leaves out products that would be rejected and tells you about them, and does not check the WooCommerce file before download, so run it through the WooCommerce CSV checker on this site. Import a few products first, look at them in your store, then import the rest.
Does it move customers, orders or reviews?
No. Only products move. Customers, orders, reviews, gift card balances, blog posts, pages and URL redirects are not in a product export, so CatalogHop does not convert them.
Is it free?
Yes. There is no account and no limit on how many files you convert.

Related converters