Short answer: yes, but none of the three moves with your products, and each needs its own route. Squarespace can’t export reviews, so they have to be copied off your product pages into a Shopify reviews app; contacts come out as CSV files that need reshaping and merging; and past orders go in only through a migration app or Shopify’s API. Before you start, count all three on Squarespace, so you can count them again on Shopify.
What owners usually ask
A few weeks into a move from Squarespace to Shopify, one owner asked us whether past orders and invoices could come across too. At the first meeting, the store’s reviews and contacts had been on the short list of things the move must not lose.
It’s the right worry. Products, pages and the look are the visible part of a move. The history around them doesn’t come along by itself, and it comes in three parts:
- Reviews, which new shoppers read before they buy.
- Customers and mailing lists, often spread over more than one list.
- Order history, so past orders are still there when a customer asks about one.
For the rest of the move, step by step, see our guide to migrating to Shopify.
What’s usually happening
- Squarespace has no review export. Its help center says reviews can’t be exported in any format, or moved to another site. Shopify’s own Squarespace guide says the same, and points to review apps such as Judge.me, Loox and Yotpo for bringing them in by hand.
- Contacts live in more than one place. Squarespace keeps a Contacts panel and separate mailing lists, and each one exports to its own file. The same person is often on several. Shopify takes customers only in its own CSV layout, with no column matching, and when an email appears twice it keeps only the last row.
- Many signups have no name. A newsletter signup may be just an email address. We’ve seen Shopify’s customer import reject those rows with “First name can’t be blank, Last name can’t be blank”, although its help page lists only the Email column as required.
- Shopify can’t import past orders by itself. Its migration guide offers CSV files for products and customers, but for past orders only migration apps or its API. It also warns that everyone set to get new-order notifications receives an email for each imported order, unless you turn those off first.
- Order numbers start over. Shopify’s first order is #1001, and you can’t change that starting number, only add a prefix or suffix. If old orders come in, decide how they’re numbered, so no new order repeats a number a customer already has.
- Passwords don’t move. Shopify says a CSV file can’t carry customer passwords over from another store.
How to check, in about ten minutes
- Count what you have. On Squarespace, note how many reviews you have and on which products, how many contacts are in each mailing list, and how many orders you’ve taken. These are the numbers to check after the move.
- Export your contacts. In Squarespace’s Contacts panel, open the “…” menu and choose Export all contacts. Export each mailing list as well. Open the files and look for rows with no first or last name, and for the same email in more than one file.
- Find the marketing column. Squarespace’s export has an “Accepts Marketing” column, which becomes “Accepts Email Marketing” (yes or no) in Shopify’s file. Carry each person’s answer across as it is: Shopify’s help says to email only customers who opted in.
- Try the order export. In Squarespace, go to Products & Services, then Orders, Export data and Download CSV. Check it has line items, totals, addresses and fulfillment status.
- Decide what “order history” means for you. If you only need a record to look things up, the saved CSV file may be enough. If you want past orders attached to each customer in Shopify, plan an import, after the products and customers are in.
- Save every review now, with the reviewer’s name, date, rating, text and product. Judge.me’s import, for one, gives a review with no date the import date, and doesn’t mark imported reviews as verified.
What we found on one store
A small product brand moving from Squarespace to Shopify had all three kinds of history to keep, and each was stuck in a different way:
- Reviews: there was no export, so the only copy was on the old product pages.
- Contacts: they were spread over several lists. Merging them turned 1,156 rows into 538 unique email addresses, and most of those had no name.
- Orders: the contact exports carried some order details, but not enough, or clean enough, to import. We needed the store’s own order export.
The products themselves went across within a day of our getting access. The history took about a month, alongside the rest of the setup.
What fixed it
- Reviews first. We copied the store’s 26 reviews off the old product pages with a script, imported them into a Shopify reviews app, and showed them on the products they belonged to.
- One merged contact file. We merged the lists by email address, and kept each source list’s name as a tag on the customer.
- A first import that failed, usefully. Shopify imported 131 contacts and failed 407 for missing names, with errors like “First name can’t be blank, Last name can’t be blank”. The owner added the missing names in Squarespace and exported again.
- A clean second import. 551 contacts went in with 0 failures. We then built a customer segment for each original list.
- Orders, tested before the real run. The owner exported the orders from Squarespace. We wrote a repeatable import and ran two test imports. Then we asked one question: should past orders come in as fulfilled? It didn’t matter to the owner, as long as no order number repeated.
- Notifications off, then on. We turned off the store’s new-order notifications and imported 263 past orders, numbered from #1001, so the next new order would be #1264. Then we turned the notifications back on. That was the day before the domain moved to Shopify.
What the evidence shows
- Reviews: 26 imported, the same count as our review summary file.
- Contacts: Shopify’s own import emails show 131 imported and 407 failed on the first try, then 551 imported and 0 failed.
- Orders: 263 imported, by our own report to the owner that day.
These are counts at import time. We haven’t re-counted them in the store’s admin since, and none of this measures sales.
When to bring someone in
Call someone if:
- your reviews are in Squarespace’s built-in reviews, which have no export;
- your contacts are split over several lists, or many have no name;
- you want past orders inside Shopify, not just in a spreadsheet;
- your store will keep taking orders right up to the switch;
- you’d like the counts checked before and after.
