How to Migrate from Squarespace to WordPress (Step by Step)

To move from Squarespace to WordPress, export your site as a WordPress .xml file from Squarespace’s Import & export panel, import it in WordPress under Tools > Import > WordPress, and pull your images onto your own server with an image-import plugin. Then set up redirects and point your domain at your new host. Squarespace only exports some of your content, so plan to rebuild store pages, a few other page types and your design.

Squarespace is easy to start with (RightBlogger has a good breakdown of Squarespace for blogging if you’re still weighing it), but a self-hosted WordPress site gives you full control over plugins, design and hosting. This guide follows Squarespace’s current export documentation, and we ran the WordPress side, including the image import, on WordPress 7.1.4.

Key Takeaways
  • Squarespace exports layout pages, one blog page with its posts, text and image blocks and gallery pages. Store pages, products, video and audio blocks, drafts, styles and custom CSS don’t export.
  • Your site must be published and set to Public. Trial sites can’t export.
  • Squarespace warns that images may not migrate with the WordPress Importer and stay linked to Squarespace. An image-import plugin fixes that when posts are saved.
  • Products export separately as a CSV, which WooCommerce can import with its built-in product importer.
  • If your Squarespace blog posts lived at /blog/post-title, set WordPress permalinks to /blog/%postname%/ to keep the same URLs.

What Squarespace exports, and what it doesn’t

ExportsDoesn’t export
Layout pagesAlbum, cover, index, info, calendar, portfolio and store pages
One blog page, with its posts and up to 1,000 comments per postAny other blog pages
Text blocks and image blocksVideo blocks, audio blocks and product blocks
Text from other blocks, like embeds, with minimal structurePage-specific headers, footers, sidebars and dropdowns
Gallery pagesDrafts, style settings and custom CSS
From Squarespace’s “Export your site content” help article, last updated October 9, 2026.

Anything in the right-hand column has to be rebuilt in WordPress by hand. Products are the exception, since they have their own CSV export covered in step 5.


Step 1: Export your Squarespace content

Your site needs to be published with site availability set to Public, because Squarespace can’t export from a trial site. Then, following Squarespace’s export guide:

  1. Open the Import & export content panel in your Squarespace settings.
  2. Click Export, then click the WordPress icon.
  3. If your site has more than one blog page, choose the primary blog to export. Only one blog page exports.
  4. Wait for the export to process, then click Download to save the .xml file.

Step 2: Set up WordPress and an image-import plugin

You need a self-hosted WordPress site to import into. If you don’t have one yet, pick one of the best WordPress hosts, which will set up a blank WordPress install for you. These steps are for self-hosted WordPress, not WordPress.com.

Before you import, install an image-import plugin. Squarespace’s documentation warns that with the WordPress Importer “your images might not migrate”. The posts keep pointing at images on Squarespace, and those links stop working once you cancel your Squarespace site. Smart Auto Upload Images copies external images into your Media Library and rewrites the URLs whenever a post is created or saved.

In our test on WordPress 7.1.4, the plugin imported images as soon as a post was created. The WordPress Importer creates posts the same way, so with the plugin active, images come across during the import itself. Auto Upload Images does the same job and is also maintained, with more than 20,000 active installs.


Step 3: Import the .xml file into WordPress

  1. Log in to WordPress and go to Tools > Import.
  2. Under WordPress, click Install Now, then Run Importer.
  3. Choose the .xml file from Squarespace and click Upload file and import.
  4. Assign the imported posts to your user account, or create a new user for them.
  5. Check Download and import file attachments, then click Submit.
WordPress 7.1 Tools > Import screen listing importers, with Run Importer under WordPress” class=”wp-image-4567″/></a><figcaption class=Tools > Import in WordPress 7.1

The current WordPress Importer (version 0.9.7) also has a Content Options setting that changes links pointing at the previous site to your new one. Leave it checked unless you have a reason not to.

WordPress Importer step two: Assign Authors, Download and import file attachments, and Content Options
The WordPress Importer’s author, attachment and content options

Large sites can take a few minutes. When it finishes, check your Posts and Pages screens to see what came across.


Step 4: Bring over any images still on Squarespace

Open a few imported posts and check the image URLs. If any still point at Squarespace, re-save those posts with your image-import plugin active and it will copy the images to your server. To do it in bulk:

  1. Go to Posts > All Posts. Use Screen Options at the top right to show more posts per page if needed.
  2. Check the box at the top of the list to select every post on the page.
  3. Choose Edit from the Bulk actions menu and click Apply.
  4. Click Update without changing anything. That re-saves every selected post.

We tested this on posts that were imported while the plugin was off. Re-saving them with it switched on copied the image into the Media Library and replaced the Squarespace URL with a local one in both posts.

If images still show as broken and their HTML uses data-src instead of src, a find-and-replace from data-src to src with Better Search Replace on the posts table fixes it. Take a backup first. You don’t need a lazy-loading plugin afterward, because WordPress has lazy-loaded images on its own since version 5.5.


Step 5: Move a Squarespace store to WooCommerce

Store pages and product blocks aren’t part of the site export, but Squarespace can export your products to a .csv file (up to 10,000 products) from the Products panel with Export all. That export leaves out additional product information, image alt text and variant images.

In WordPress, install WooCommerce, then go to Products > All Products and click Import. WooCommerce’s built-in product importer has a column mapping screen where you match Squarespace’s columns to WooCommerce fields, and it can download product images from their URLs. Squarespace’s columns don’t line up exactly with WooCommerce’s, so check a few products after importing.


Step 6: Keep your URLs and add redirects

Squarespace blog posts usually live at addresses like yoursite.com/blog/post-title, where blog is the slug of your blog page. New WordPress sites default to a dated structure (/%year%/%monthnum%/%day%/%postname%/), so your old links would break.

The simplest fix is to match the old format. Go to Settings > Permalinks, choose Custom Structure, and enter /blog/%postname%/ (use your blog page’s slug if it wasn’t blog). Your posts keep their Squarespace addresses, and pages like /about carry over as well. Our guide to WordPress permalinks covers the options.

For anything that still changes, add 301 redirects. Redirection (2,000,000+ active installs) lets you add them by hand and logs 404 errors so you can spot missing ones. 301 Redirects – Redirect Manager, formerly Easy 301 Redirects, is a simpler alternative.


Step 7: Point your domain at WordPress

Once your WordPress site is ready, point your domain at your new host. If your domain is registered with Squarespace, update its DNS records in your Squarespace domain settings (Squarespace has a DNS settings guide), or transfer the domain to another registrar. Your new host will tell you which records to add, and most will walk you through it.

Keep your Squarespace site active until the DNS change is complete and you have checked your images, links and forms on the new site.

Frequently asked questions

Can you transfer a Squarespace website to WordPress?

Partly. Squarespace exports layout pages, one blog with its posts and comments, text and image blocks and gallery pages as a WordPress .xml file. Store pages, other page types, video and audio blocks, drafts and your design don’t transfer, so you rebuild those in WordPress.

Can I export more than one Squarespace blog?

Not in one export. Squarespace exports one blog page, and you choose which one when your site has several. Posts from other blog pages need to be moved another way, such as copying them into WordPress by hand.

Will my images move from Squarespace to WordPress?

Not always. Squarespace warns that with the WordPress Importer your images might not migrate, leaving posts linked to images hosted on Squarespace that break when you cancel. An image-import plugin such as Smart Auto Upload Images copies them to your server when posts are saved.

Will I lose my Google rankings when I switch?

You don’t have to. Keep your URLs the same where you can, for example with a /blog/%postname%/ permalink structure, add 301 redirects for anything that changes, and keep your titles and content intact. Expect some movement while Google recrawls the new site.

Can I migrate my Squarespace store to WooCommerce?

Yes. Export your products to a .csv file from Squarespace’s Products panel, then import it with WooCommerce’s built-in importer under Products > All Products > Import, mapping the columns as you go. Additional product information, image alt text and variant images don’t export.

Once you’re settled in, explore the best WordPress plugins and Ryan Robinson’s roundup of WordPress themes for your new site.

Picture of Andy Feliciotti

Andy Feliciotti

Andy has been a full time WordPress developer for over 15 years. Through his years of experience has built 100s of sites and learned plenty of tricks along the way. Found this article helpful? Buy Me A Coffee

One Response

  1. Hi, do you know if it’s possoble to migrate a squarespace email address to WordPress and if so, how do do so? Thanks

Leave a Reply

Your email address will not be published. Required fields are marked *

WordPress Tips Monthly
Get the latest from SmartWP to your inbox.