Squarespace URL Redirects Guide
Complete guide to Squarespace URL redirects: URL Mappings syntax for 301 and 302 redirects, path-based redirects, regex support, limitations, and troubleshooting common issues.
Squarespace handles redirects through a feature called URL Mappings. It is a text-based interface where you type redirect rules one per line. There is no visual redirect manager, no drag-and-drop, no CSV import. You get a text box and a specific syntax. For the full overview of all redirect types, see our HTTP Redirect Guide.
Once you know the syntax, it works well. This guide covers everything: how to access URL Mappings, the redirect syntax, regex patterns, what Squarespace can and cannot do, and how to troubleshoot when redirects do not fire.
Accessing URL Mappings
URL Mappings is tucked away in the advanced settings:
- Go to your Squarespace dashboard
- Click Settings
- Click Advanced
- Click URL Mappings
You will see a text area. Each line is one redirect rule. Blank lines and lines starting with # are ignored (you can use # for comments).
Redirect Syntax
Basic 301 redirect (permanent)
/old-page -> /new-page 301
That is the entire syntax. Source path, arrow (->), destination path, status code. The paths must start with /.
302 redirect (temporary)
/sale -> /current-promotion 302
Squarespace supports both 301 and 302 status codes. If you omit the status code, Squarespace defaults to 302. Always specify the code explicitly to avoid accidental temporary redirects.
# This is a 302 (default when no code specified)
/old -> /new
# This is a 301 (explicitly specified)
/old -> /new 301
Redirect to an external URL
/partner -> https://partner-site.com 301
The destination can be a full external URL. The source must be a path on your Squarespace site.
Path-Based Redirects
Redirect a single page
/about-us -> /about 301
Redirect with a subpath using wildcards
Squarespace does not support traditional wildcards (*), but it does support a limited form of path matching through regex (covered in the next section).
For simple one-to-one redirects, list each path individually:
/blog/old-post-1 -> /articles/new-post-1 301
/blog/old-post-2 -> /articles/new-post-2 301
/blog/old-post-3 -> /articles/new-post-3 301
Redirect to the homepage
/discontinued-page -> / 301
Redirect a collection URL
Squarespace uses specific URL structures for different content types. When redirecting, match the full path:
/blog/2024-post -> /blog/updated-post 301
/gallery/old-gallery -> /portfolio/new-gallery 301
/events/past-event -> /events 301
Regex Support
Squarespace URL Mappings support regex patterns for more flexible matching. This is one of its better features compared to other hosted platforms.
Redirect an entire directory
/old-section/(.*) -> /new-section/$1 301
This redirects /old-section/page-a to /new-section/page-a, /old-section/page-b to /new-section/page-b, and so on. The (.*) captures everything after the prefix, and $1 inserts it into the destination.
Strip a path prefix
/blog/2024/(.*) -> /blog/$1 301
Redirects /blog/2024/my-post to /blog/my-post.
Redirect all paths under a prefix to one page
/old-section/.* -> /new-section 301
Without capture groups, all matching paths go to the same destination. /old-section/anything becomes /new-section.
Regex with multiple capture groups
/products/([^/]+)/([^/]+) -> /shop/$1/$2 301
$1 is the first group, $2 is the second. /products/shoes/red becomes /shop/shoes/red.
Case-insensitive matching
Squarespace URL Mappings are case-insensitive by default for the source path. /About-Us and /about-us both match a rule for /about-us.
Common Use Cases
Post-migration redirects
When migrating to Squarespace from another platform, your old URL structure likely does not match Squarespace's format. Map each old URL to its Squarespace equivalent. For the complete migration process, see Site Migration Redirect Checklist.
# WordPress-style URLs to Squarespace
/2024/03/15/my-post -> /blog/my-post 301
/category/news -> /blog?category=news 301
/?p=123 -> /blog/actual-post-name 301
Custom short URLs
Create memorable short paths for marketing campaigns:
/go -> https://landing-page.example.com 302
/podcast -> https://podcast-platform.com/your-show 301
/shop -> /store 301
Use 302 for short URLs that might change (campaign links). Use 301 for permanent short URLs.
Handling removed pages
When you delete a page, redirect it to the most relevant remaining page:
/services/discontinued-service -> /services 301
/team/former-member -> /team 301
/products/retired-product -> /products 301
Do not redirect everything to the homepage. Redirect to the most contextually relevant page. A deleted product should redirect to its parent collection, not the homepage.
Fixing changed slugs
If you change a page's URL slug in Squarespace, the old URL returns a 404. Unlike some platforms, Squarespace does not automatically create redirects when you change a slug. Add a redirect manually:
/old-slug -> /new-slug 301
Consolidating duplicate content
If the same content is accessible at multiple URLs:
/about-us -> /about 301
/our-story -> /about 301
/company -> /about 301
Limitations
No bulk import
There is no CSV upload or bulk import tool. You type (or paste) every rule into the text area. For large migrations, prepare your rules in a text editor and paste them all at once.
No redirect analytics
Squarespace does not report how many times a redirect fires, when it was last used, or which redirects are getting traffic. You have no visibility into redirect usage.
No conditional redirects
You cannot redirect based on user agent, geolocation, query parameters, cookies, or any other request attribute. It is purely path-based.
No outbound link redirects
You cannot redirect external URLs to your Squarespace site. URL Mappings only control paths that users request from your Squarespace domain. The DNS and domain settings handle domain-level routing.
Query string behavior
Squarespace URL Mappings match on the path only. Query strings in the source are ignored. If a user visits /old-page?ref=email, the redirect rule for /old-page still fires. The query string is passed through to the destination by default.
You cannot create different redirects for the same path with different query strings.
Rule limit
Squarespace does not document an official limit on the number of URL Mapping rules. In practice, sites with a few hundred rules work fine. Sites with thousands of rules have reported the interface becoming slow to save. Keep your list manageable by removing outdated redirects periodically.
Troubleshooting
Redirect is not working
- Check the syntax: Make sure you have the correct format:
/source -> /destination 301. The arrow is a hyphen followed by a greater-than sign (->), with spaces on both sides. - Check for a live page at the source URL: If a page, blog post, or collection exists at the source path, Squarespace serves that content instead of following the redirect. The live page always takes priority. Delete or unpublish the content first.
- Check for typos in the path: Paths must start with
/. A missing leading slash breaks the rule silently. - Check the status code: If you omitted the status code, it defaults to 302. Add
301explicitly. - Clear your browser cache: If you previously tested the URL and it 404'd, your browser may have cached that response. Test in an incognito window or with curl.
Redirect creates a loop
A redirect from /page-a to /page-b combined with a redirect from /page-b to /page-a creates a redirect loop. Check your URL Mappings for circular references.
Regex patterns can also cause loops if the source pattern matches the destination:
# LOOP: /new-section/page matches the source pattern too
/(.+) -> /new-section/$1 301
Be specific with your regex patterns. Avoid overly broad matchers like /(.+).
Regex is not matching
Squarespace regex has some quirks:
- Patterns are anchored to the start of the path by default
- The leading
/is part of the path you are matching - Test simple patterns before building complex ones
- If a literal rule and a regex rule could both match, the literal (non-regex) rule takes priority
Changes take time to propagate
After saving URL Mappings, changes typically take effect within a few minutes. If your redirect is not working immediately, wait five minutes and test again. Do not assume it failed instantly.
Always specify the status code
When you omit the status code in a Squarespace URL Mapping, it defaults to 302 (temporary). For permanent redirects (which is what you want for SEO), always append 301 to the rule. A silent 302 default has caught many site owners off guard.
Example URL Mappings Block
Here is a complete URL Mappings configuration for a site that migrated from WordPress to Squarespace:
# WordPress to Squarespace migration
# Date-based URLs to clean URLs
/2023/(.*) -> /blog/$1 301
/2024/(.*) -> /blog/$1 301
# Category and tag pages
/category/(.*) -> /blog?category=$1 301
/tag/(.*) -> /blog?tag=$1 301
# Changed page slugs
/about-us -> /about 301
/our-services -> /services 301
/contact-us -> /contact 301
# Removed pages
/old-product -> /shop 301
/discontinued -> / 301
# Short URLs for campaigns
/webinar -> https://webinar-platform.com/our-webinar 302
/deck -> https://slides.example.com/presentation 302
Keep your URL Mappings organized with comments. Future you will appreciate knowing why each redirect exists.
Trace your redirect chains
Verify your Squarespace redirects are working with full chain tracing.
References
- Squarespace Help, "URL Mappings," https://support.squarespace.com/hc/en-us/articles/205815308-URL-mappings
- Squarespace Help, "Moving your site to Squarespace," https://support.squarespace.com/hc/en-us/articles/205815928
Related Articles
Never miss a broken redirect
Trace redirect chains and detect issues before they affect your users and SEO. Free instant tracing.
Try Redirect Tracer