Squarespace SEO audit: the issues built into Squarespace — and how to fix them
A Squarespace SEO audit checks your store across search, AI visibility, accessibility and security — with a fix for each issue we find.
A design-first hosted builder popular with brand-led stores — beautiful templates, but tight constraints on URLs, redirects, and technical SEO control.
How does Squarespace's architecture shape your SEO?
Squarespace is hosted and design-led: you pick a template family and work within its structure. That polish comes with hard limits on technical SEO. URL slugs follow fixed collection patterns (/shop/, /products/), redirect and canonical control is partial, and you can't touch the server or robots at the file level. Heavy templates and large hero imagery are a common performance drag. The practical fixes are the ones Squarespace actually exposes: per-page SEO titles/descriptions, the URL-redirects panel, image optimization, and disciplined use of tags and categories to avoid thin archive pages.
Reference: Squarespace SEO checklist →
What issues show up most on Squarespace sites?
Why these happen on Squarespace
Specific to how Squarespace is built — not generic checklist advice.
Thin tag and category archive pages
Squarespace auto-generates archive pages for every blog tag and category. Used loosely, these create dozens of near-empty, near-duplicate pages competing with your real content. Prune tags, and avoid spinning up categories that produce one-item archives.
Limited redirect and canonical control
Squarespace offers a URL-redirect panel but not full canonical or server-level control. After a template or URL change, audit that old URLs 301 to the new ones — broken or missing redirects after a redesign are one of the most common Squarespace ranking losses.
Template weight hurts performance
Design-heavy templates with full-bleed imagery and animations load slowly, especially on mobile. You can't change the template's architecture, but compressing images, limiting blocks per page, and trimming custom code injections recovers most of the lost Core Web Vitals.
Fixes written for Squarespace
We catalog 182 Squarespace fixes — exact steps for Squarespace's admin and theme, each with a link to the official docs.
Audit your XML sitemap and internal linking so that every product and category page is discoverable and crawlable by Google — not hidden behind JavaScript, pagination, or missing links.
- 1Squarespace auto-generates a sitemap at yoursite.com/sitemap.xml and includes all published pages and products.
- 2Pages panel: ensure all product pages and category pages (Folder or Index pages used as categories) are set to 'Public' (not Password Protected or Disabled).
- 3Pages › Products page › Settings: confirm 'Enable' is checked and the page is not hidden from navigation.
- 4Marketing › SEO: check 'Hide Page from Search Engines' is unchecked at the site level. Then for individual pages, open Page Settings › SEO and confirm 'Hide page from search engines' is off.
- 5Connect Google Search Console via Marketing › Google Search Keywords or via the manual HTML verification in Settings › Advanced › Code Injection, then submit yoursite.com/sitemap.xml.
- 6Add internal links to product collections from your homepage or navigation so Google follows them, not just the sitemap.
<!-- CORRECT: Standard crawlable link -->
<a href="/products/blue-running-shoes">Blue Running Shoes</a>
<!-- WRONG: JavaScript-only — Googlebot cannot follow this -->
<span onclick="navigate('/products/blue-running-shoes')">Blue Running Shoes</span>Standard crawlable product link — use plain <a href> tags, never JavaScript-only click handlers, for navigation links that Google must follow.
Eliminate unexpected layout shifts by reserving space for every image, video, embed, and dynamically injected element so nothing jumps when the page loads.
- 1Images: Squarespace's image blocks automatically generate width/height attributes in modern templates (7.1). If you are on a 7.0 template, migrate to a 7.1 template to get this benefit automatically.
- 2Banners / announcement bars: In Pages → Not Linked → promotional pop-ups, or in the Announcement Bar settings, set position to 'bottom' or use a modal overlay style to avoid pushing page content down.
- 3Custom code embeds: Go to any page → Edit → Add Block → Code, and wrap third-party scripts (reviews, chat, social) in a <div style='min-height:150px'> so space is reserved. Enter this in Settings → Advanced → Code Injection (site-wide).
- 4Fonts: In Design → Fonts, choose from Squarespace's curated list; these are loaded with optimised settings. For custom fonts added via Code Injection → CSS, add font-display: swap; inside your @font-face rule in Settings → Advanced → Code Injection → CSS.
- 5Header scripts: Any JavaScript injected via Settings → Advanced → Code Injection → Header that modifies layout should be deferred with defer or async attribute to prevent shifts during initial load.
- 6Verify: Run PageSpeed Insights on your Squarespace domain; CLS should be < 0.1.
<!-- CORRECT: explicit width and height prevent layout shift -->
<img
src="/images/product-red-sneaker.jpg"
alt="Red canvas sneaker, side view"
width="800"
height="800"
loading="lazy"
>Always declare width and height on every img element. The browser uses these to reserve space before the image file downloads.
Reduce Interaction to Next Paint (INP) to under 200 ms by breaking up long JavaScript tasks, deferring non-critical third-party scripts, and lightening event handlers so the page feels fast and responsive after every tap or click.
- 1Go to Settings → Advanced → Code Injection. Review any third-party `<script>` tags in the Header or Footer injection areas. Move scripts from Header to Footer, and add `defer` or `async` to reduce main-thread blocking during load.
- 2Remove any unused third-party integrations (chat widgets, marketing tools) from Settings → Integrations or from Code Injection — these are common sources of long tasks.
- 3Squarespace does not offer deep JavaScript customisation, so the primary levers are: (1) reducing the number of third-party scripts, (2) switching to lighter Squarespace-native blocks instead of embedded widgets, and (3) ensuring custom JavaScript added via Code Blocks uses `defer`.
- 4Monitor INP via PageSpeed Insights and Google Search Console → Core Web Vitals. For significant INP problems, a migration to a more flexible platform (e.g., Shopify or a headless stack) may be required if Squarespace's first-party scripts are the bottleneck.
Reduce Largest Contentful Paint (LCP) to under 2.5 seconds by serving the hero image in a next-gen format (WebP/AVIF), preloading it, and eliminating render-blocking resources.
- 1IDENTIFY LCP IMAGE: Run PageSpeed Insights on your Squarespace URL. LCP is almost always the banner/header image on your homepage.
- 2WEBP: Squarespace automatically serves WebP to supporting browsers via its Imgix CDN — no manual conversion needed.
- 3OPTIMISE SOURCE: Upload hero images at 2500px wide maximum and use JPEG at 85% quality before uploading. Squarespace resizes and converts automatically, but a smaller source = faster processing and delivery.
- 4REDUCE BANNER SIZE: In Pages › your page › Banner › Edit, use a focal-point crop to reduce unnecessary image area. Shorter banners render faster.
- 5INJECT PRELOAD (7.1 + Code Injection): Go to Settings › Advanced › Code Injection › Header. Paste: <link rel='preload' as='image' href='YOUR_HERO_IMAGE_URL' fetchpriority='high'>. Find your hero image URL by right-clicking the live image and copying the src.
- 6DEFER JS: In Code Injection › Footer, move non-critical third-party scripts here. Add 'defer' attribute to any custom <script> tags you have injected.
- 7REMOVE UNUSED PLUGINS/BLOCKS: Delete any Squarespace blocks or extensions you are not using — each can add render-blocking weight.
- 8VERIFY: Re-run PageSpeed Insights after saving.
<!-- Squarespace: Code Injection › Header — preload LCP hero image -->
<link
rel="preload"
as="image"
href="https://images.squarespace-cdn.com/content/YOUR_SITE_ID/YOUR_IMAGE_FILENAME.webp"
fetchpriority="high"
>Paste in Settings › Advanced › Code Injection › Header. Find your hero image URL by right-clicking the live image and selecting 'Copy image address'.
Squarespace on the open web
1.5% of the crawled web runs Squarespace
Losing share — -3.1% over the last 6 monthly crawls
Source: HTTP Archive — a real-Chrome crawl of 15.5M origins (2026-09-01). Share of all crawled sites, not just ecommerce.
Software currency · OWASP A06
0% of Squarespace sites run an outdated version
Across the open web, only 100% of Squarespace sites are on 7.1, the current release — out of 174,729 versioned Squarespace sites. Outdated software is the single most common source of exploitable vulnerabilities (OWASP A06). SEOLZ flags exactly which of your components are behind — and the version to update to.
Source: HTTP Archive — version strings from a real-Chrome crawl of the open web. A major.minor behind the current line counts as outdated.
How AI reads Squarespace sites · AEO
99% of Squarespace sites publish structured data
JSON-LD is the schema.org markup AI answer engines read to understand — and cite — a page. But 0.9% of Squarespace sites add it only after JavaScript runs, so non-JS AI crawlers never see it. SEOLZ checks whether your structured data is present, valid, and visible to AI.
Source: HTTP Archive — structured-data probes on static + rendered HTML across 237,378 Squarespace sites.
The typical Squarespace site · HTTP Archive
How Squarespace sites measure up
Performance — median
Accessibility gaps — share of sites
Source: HTTP Archive lab performance + accessibility probes across 237,378 Squarespace sites. SEOLZ measures your site against these.
⚠ What SEOLZ can't modify on Squarespace
We still flag these issues — but the fix lives outside what Squarespace lets you change.
robots.txt
Squarespace doesn't allow editing robots.txt directly. You can request Squarespace support make changes, or use URL blocking in Settings.
Server headers
Security headers are managed by Squarespace's infrastructure. Most OWASP header fixes aren't implementable on Squarespace without custom code injection.
JavaScript injection
Custom code is restricted to Code Injection in Settings, which applies site-wide or per-page only in specific blocks.
Every scan checks all six pillars
You can't rank what AI can't read. SEO, AEO, and GEO tell you where you rank; WCAG, OWASP, and Lifecycle determine whether search and AI can read and trust you at all. SEOLZ scores all six as one system.
Your catalog pages may be invisible to Google right now and you'd have no way to know. Indexability gaps, canonical conflicts, and faceted navigation issues silently kill organic traffic — we surface every one and tell you which to fix first.
Learn how to fix SEO issues →When someone asks ChatGPT to recommend a product in your category, is your store in the answer? Often it isn't. We check the structured data, page structure, and brand signals that help search and AI understand your products and describe them accurately — and we measure whether they actually cite you, or a competitor.
Learn how to fix Answer Engine (AEO) issues →AI search is eating traditional organic traffic. We track your actual brand mentions across ChatGPT, Perplexity, and other AI engines — and tell you what's pushing you down in the results.
Learn how to fix AI Visibility (GEO) issues →Ecommerce stores are among the most frequent recipients of ADA accessibility demand letters. We run WCAG 2.1 AA checks across your catalog, surface the barriers that most often appear in demand letters, and track each one through to a verified fix.
Learn how to fix Accessibility (WCAG) issues →A missing security header exposes your customers, and a compromised or flagged site loses search visibility fast. We check the server configuration, HTTPS setup, and email authentication issues that erode trust — before they become an incident.
Learn how to fix Security (OWASP) issues →SSL expires. Plugin versions fall behind. GTM containers go unverified. These aren't hypothetical risks — they're the operational failures that cause outages, ranking drops, and security incidents. We catch them before they happen.
Learn how to fix Site Lifecycle issues →| Platform | |||||||
|---|---|---|---|---|---|---|---|
| Shopify | 8 | 85 | 61 | 94 | 72 | 53 | 75 |
| WordPress.org | 7 | 89 | 50 | 86 | 73 | 53 | 73 |
| BigCommerce | 5 | 79 | 20 | 89 | 66 | 50 | 64 |
Averages across audited sites · data as of October 2026. Updated as new audits complete. Platforms with fewer than 5 audits aren't shown.
Start free. Upgrade when ready.
- ✓Composite + pillar scores
- ✓Issue counts
- ✓Recurring five-pillar re-scan
- ✓Free forever
- ✓Every finding across all 6 pillars, with step-by-step fixes for your platform
- ✓Template fixes: fix it once, clear it on every page built from that template
- ✓Fix tracking: mark it fixed and the next audit confirms it
- ✓Email alerts for score drops, new security issues, and SSL / domain expiry
- ✓Report builder with PDF, HTML and Markdown export
- ✓GTM & tracking audit, plus Search Console topic gaps
Questions about Squarespace audits
Does SEOLZ work with Squarespace?+−
Yes — we crawl your live Squarespace site and write fixes for the Squarespace settings panels: per-page SEO, URL redirects, and image/performance controls.
What are Squarespace's SEO limitations?+−
Mainly control: fixed URL patterns, partial redirect/canonical management, and no file-level server access. We focus recommendations on what Squarespace actually lets you change so the fixes are doable.
Why did my Squarespace traffic drop after a redesign?+−
Almost always missing 301 redirects from old URLs to new ones. Squarespace changes slugs when you restructure; if you don't add redirects in the URL panel, you lose the old pages' rankings. We flag exactly which URLs need redirecting.
See what's holding back your Squarespace site
Free scan, no credit card, results in minutes. We've got you.
Scan My Squarespace Site Free