Technical Guide
Squarespace to Cloudflare Migration — Complete Guide
A step-by-step guide to migrating your website from Squarespace to Cloudflare Pages. Improve performance, reduce costs, and preserve your SEO rankings.
Why migrate from Squarespace?
Squarespace is excellent for getting started, but growing businesses often hit limitations:
- Performance: Cloudflare Pages loads 2-3x faster than Squarespace
- Cost: Cloudflare is free for most sites; Squarespace starts at $16/month
- Flexibility: Full control over code, integrations, and custom functionality
- SEO: Better Core Web Vitals scores improve search rankings
- Scale: Handle traffic spikes without performance degradation
Migration Overview
- Audit current site and document all pages
- Export content from Squarespace
- Set up new site on Cloudflare Pages
- Implement redirects for SEO preservation
- Test thoroughly before cutover
- Update DNS and monitor
Step 1: Pre-Migration Audit
Document your current site
Before touching anything, create a complete inventory:
- All pages and their URLs
- Blog posts and their publication dates
- Images and assets
- Forms and their destinations
- Custom CSS/JavaScript
- Third-party integrations (analytics, chat, etc.)
- SEO metadata (titles, descriptions)
Identify SEO-critical pages
Use Google Analytics and Search Console to identify:
- Top 20 pages by traffic
- Pages with external backlinks
- High-ranking landing pages
These pages need special attention during migration to preserve rankings.
Step 2: Content Export
Export from Squarespace
- Go to Settings → Advanced → Import/Export
- Click Export → WordPress format
- Download the .xml file
Extract images
Squarespace exports don't include images. You'll need to:
- Download all images manually or use a scraping tool
- Optimise images (WebP format, appropriate sizes)
- Upload to your new asset hosting
Handle blog posts
The WordPress export format preserves:
- Post titles and content
- Publication dates
- Categories and tags
- Author information
You'll need to convert this to your new platform's format (Markdown, HTML, etc.).
Step 3: Build on Cloudflare Pages
Choose your approach
Option A: Static site generator (recommended)
- Next.js, Hugo, Jekyll, or 11ty
- Best performance and flexibility
- Requires development knowledge
Option B: Pure HTML/CSS
- Simple and fast
- No build process
- Manual updates required
Set up Cloudflare Pages
- Log into Cloudflare dashboard
- Go to Pages → Create a project
- Connect your Git repository (GitHub/GitLab)
- Configure build settings
- Deploy
Build configuration
For Next.js sites on Cloudflare Pages:
- Build command:
npm run build - Build output directory:
out - Root directory:
/(or your project root)
Step 4: SEO Preservation
Maintain URL structure
Keep URLs identical where possible. If you must change them, implement 301 redirects:
- Squarespace:
/blog/post-title - New site:
/blog/post-title(same)
Implement 301 redirects
In Cloudflare Pages, create a _redirects file:
/old-page /new-page 301 /blog/old-post /blog/new-post 301 /legacy-url /current-url 301
Preserve metadata
Ensure each page maintains:
- Title tags (identical or improved)
- Meta descriptions
- Canonical URLs
- Open Graph tags
- Structured data (Schema.org)
Step 5: Testing
Pre-launch checklist
- ☐ All pages render correctly
- ☐ Images load properly
- ☐ Links work (internal and external)
- ☐ Forms submit correctly
- ☐ Mobile responsiveness verified
- ☐ 301 redirects tested
- ☐ SSL certificate active
- ☐ Analytics tracking installed
- ☐ Core Web Vitals checked
Test redirects
Use tools to verify redirects:
- curl:
curl -I https://yoursite.com/old-page - Browser dev tools Network tab
- Online redirect checkers
Performance testing
Before and after comparison:
- PageSpeed Insights
- GTmetrix
- WebPageTest
Step 6: Go Live
DNS cutover
- Lower TTL on your DNS records (300 seconds) 24 hours before
- Update A/AAAA or CNAME records to point to Cloudflare
- Wait for propagation (usually minutes, up to 48 hours)
- Test from multiple locations
Post-launch monitoring
- Monitor Google Search Console for 404 errors
- Check analytics for traffic drops
- Verify search rankings (give it 1-2 weeks)
- Monitor Core Web Vitals in Search Console
Submit updated sitemap
In Google Search Console:
- Submit new sitemap.xml
- Request reindexing of key pages
- Monitor for crawl errors
Expected Results
Performance improvements
| Metric | Squarespace | Cloudflare |
|---|---|---|
| Time to First Byte | 400-800ms | 50-100ms |
| Lighthouse Performance | 60-75 | 95-100 |
| Core Web Vitals | Often fails | Usually passes |
| Global CDN | Limited | 300+ locations |
Cost comparison
- Squarespace: $16-49/month
- Cloudflare Pages: Free (most sites) or $5/month (Pro)
- Annual savings: $132-528/year
Common Issues and Solutions
Issue: Images not displaying
Solution: Check image paths and ensure proper optimisation. Use Cloudflare Images for automatic optimisation.
Issue: Forms not working
Solution: Static sites need form handling services. Use Formspree, Netlify Forms, or Cloudflare Workers.
Issue: Search rankings dropped
Solution: Temporary drops are normal (1-2 weeks). Ensure all redirects are 301s, not 302s. Submit updated sitemap.
Issue: Blog comments lost
Solution: Export comments separately or use Disqus (exports with site). Consider Giscus (GitHub Discussions) for new comments.
DIY vs Professional Migration
DIY is suitable if:
- You have technical experience (HTML/CSS/JavaScript)
- Your site is small (< 20 pages)
- No complex integrations or e-commerce
- SEO is not business-critical
Professional help recommended if:
- Large site (> 50 pages) or extensive blog
- Business depends on search rankings
- E-commerce functionality required
- Complex integrations (CRM, booking systems)
- No in-house technical resources
Need help with your migration?
We've migrated 20+ sites from Squarespace to Cloudflare Pages. Our process preserves SEO rankings and typically improves Core Web Vitals scores by 20-40 points.
Discuss your migration