SHORT ANSWER
Moving a Squarespace site to Webflow is mostly a blog problem. Pages usually keep their slugs and need no redirect, but Squarespace’s default blog url carries the publish date, /blog/2021/3/14/post-name, and Webflow’s does not. Every post on the old format needs its own row, matched on the slug. Add the url mappings the site already has, the shop and event collections, and the files under /s/, and the map is complete.
What do Squarespace urls look like?
/about · /services/web-design — pages, at the root or one folder deep. No trailing slash. These usually survive a rebuild with the same slug.
/blog/2021/3/14/post-name — the default blog url with year, month and day. Month and day have no leading zero. A blog that switched to the short format later has both patterns live.
/blog/post-name — the short blog url format. Same shape as a Webflow collection item.
/blog?category=Name · /blog?tag=Name · /blog?offset=… — category and tag filters and pagination, as query strings on the blog page. The category names keep their capitals and spaces.
/shop/p/product-name · /events/event-name · /gallery/… — commerce, events and gallery collections. Each has its own folder, named after the collection.
/s/file-name.pdf — files uploaded through the link editor. Short, unguessable, and linked from newsletters and other sites.
/blog-1 · /home-1 · /new-page — the slugs Squarespace assigns when a page is duplicated or created without a title. They look like test pages and are often live.
EXAMPLE
a design studio has 60 pages, a blog of 210 posts of which 150 are on the date format, and 14 mappings in settings from a rebuild two years ago. The 60 pages are exact matches; the map is the 150 posts and the 14 mappings.
Where do I get the complete list of old urls?
- The sitemap.
/sitemap.xmlis generated by Squarespace and lists every enabled page and post not hidden from search engines. Silentfrog reads it automatically when the run starts. - Search Console. Disabled pages are not in the sitemap but may still be linked and receive traffic. The pages export catches them, and Silentfrog lists the urls the crawl did not find so they can be added as rows (traffic data).
- Url mappings. Settings, advanced, url mappings. One line per redirect in the form
/old -> /new 301. Copy the whole box before the site closes; there is no export button.
the crawl form with the old site url, the new site url, the page cap, the sitemap option and the field for your own url list.
EXAMPLE
the sitemap has 270 urls. Search Console adds 18 disabled pages, four of which still rank for a product name, and the mappings box adds 14 sources from the last rebuild.
What changes on the Webflow side?
posts lose the date — a Webflow collection item is /blog/slug, or whatever folder the collection has. There is no way to keep the year and month in the path, and no reason to.
filters become pages or nothing — a Webflow category is a collection of its own with real pages, /category/name, or it does not exist. The query-string filters have no equivalent either way.
the shop folder changes — Webflow Ecommerce puts products at /product/slug and categories at /category/slug. Squarespace’s /shop/p/slug has the same slug one level deeper.
files get new urls — uploaded files live on Webflow’s asset domain. The /s/ urls can be redirected there one by one.
EXAMPLE
/services/branding exists on both sites: exact match, no row. /blog/2021/3/14/rebrand-lessons and /blog/rebrand-lessons: same slug and title, matched at confidence 1.0, one row.
Which sections map how?
date-based posts — per row, on the slug. A wildcard rule cannot drop the three date segments, because Webflow’s capture group puts back exactly what it captured. The matcher scores the last path segment and the title, which is why these come out as high-confidence matches without any manual work (how matching works).
short-format posts — exact matches if the collection folder is still /blog; a directory rule with keep sub-paths if it changed, exported as one wildcard row.
filters and pagination — nothing to do. A redirect rule matches the path, so /blog?category=Design follows whatever /blog does. If you built a categories collection on Webflow and a Squarespace category ranked, add one manual row per category.
shop, events, gallery — /shop/p/(.*) to /product/%1 is one wildcard row if the slugs were kept. Events that have passed are a 410, not a redirect. A gallery page with no successor goes to the closest page that exists.
the -1 pages — /home-1, /blog-1 and friends. Check whether each is a live duplicate or a leftover. A duplicate redirects to the page it copied; a leftover is a 410.
redirect a whole directory
map every crawled page below a directory at once — optionally as a single webflow wildcard rule that also covers urls the crawl missed.
3 pages · 3 targets exist on the new site · + wildcard /blog/(.*) → /magazin/%1
- /blog/relaunch-checkliste → /magazin/relaunch-checkliste
- /blog/301-vs-302 → /magazin/301-vs-302
- /blog/ladezeit → /magazin/ladezeit
the directory rule form mapping /blog to /magazin with sub-paths kept, exported as a wildcard, and a live preview of how many pages it affects.
EXAMPLE
150 date-format posts: 141 match at confidence 1.0, 7 land in needs review because the title was shortened on the new site, 2 were deleted on purpose and become 410.
The url mappings Squarespace already has
The mappings box is where every earlier rename ended up, and the sources in it are urls that still get requests, or nobody would have written the rule. Each one needs a row in the new file, but not the row that is there now. /old -> /middle followed by your new /middle,/final is a chain. Paste the left-hand sides into the url list when starting the run and let them resolve against the new site; the target the tool finds is the final one, and the row comes out as /old,/final.
EXAMPLE
14 mappings, all from the 2023 rebuild. Pasted as a url list, 12 resolve to a page on the new site by slug and 2 need a manual pick.
Files under /s/
Squarespace file links are short paths like /s/pricing-2024.pdf. They are not in the sitemap and a crawler only finds the ones still linked, so the Search Console export and the backlink report are the sources. Each one worth keeping gets a manual row pointing at the file’s new asset url. Webflow accepts an absolute url as a redirect target, so the row can point straight at the asset domain.
Doing it in one pass
- Copy the url mappings box and export the Search Console pages report while the site is still up.
- Start a run with the Squarespace domain and the Webflow staging domain; paste the mapping sources and the Search Console urls into the url list (starting a run).
- Add a directory rule for the shop folder and for any collection whose folder changed, with export as wildcard rule ticked.
- Sort by confidence, review the date-format posts that did not match exactly, and verify what you accept.
- Download the Webflow csv and import it before the domain moves (importing into Webflow).
- Point the domain at Webflow, publish, and crawl the old url list against the live site: one 301 and then 200 for every row.
site settings → publishing → 301 redirects, or the data api
the two export buttons — webflow csv and generic csv — next to the option that includes needs-review matches.
In short
- Pages keep their slugs and need no row; the work is the blog.
- Date-based post urls cannot be handled by a wildcard, so they are matched per post on the slug, and nearly all of them come out at full confidence.
- Category and tag filters are query strings and follow whatever /blog does.
- The shop folder is one wildcard row from /shop/p/(.*) to /product/%1.
- Copy the url mappings box before the site closes and resolve its sources against the new site directly.