Seatext library

How to Troubleshoot SeaText Code Installation Issues on Squarespace

SeaText installs on Squarespace by pasting a JavaScript snippet into the Header field under Settings → Developer Tools → Code Injection. After saving and publishing, you must visit the live site, stay at least...

Understand the installation flow

SeaText connects to Squarespace through a single JavaScript snippet. The snippet loads the SeaText runtime, which then phones home to your SeaText account. The account expects to see traffic from the exact domain you registered. Until that handshake completes, the SeaText dashboard shows no connected site.

The official steps from SeaText are: create an account, copy the snippet, open Squarespace → Settings → Developer Tools → Code Injection, paste into the Header field, save, publish the site, then visit the live URL and stay for 40 seconds. The dashboard should reflect the connection within five minutes and no later than ten minutes.

Common symptoms and what they indicate

  • Dashboard stays empty after 10+ minutes. The snippet either never loaded, loaded on a domain SeaText rejects (localhost, staging subdomains that change), or the page was cached without the snippet.
  • Script error in browser console. Usually a syntax error from pasting the snippet into the wrong field (Footer instead of Header) or wrapping it in extra script tags.
  • SeaText UI appears but shows no variants. The handshake succeeded but the AI agents have not been activated in the SeaText dashboard.
  • Page layout breaks after paste. The snippet was placed inside an existing script block or inside a Squarespace code block instead of the global Code Injection header.

Diagnostic sequence — follow in order

  1. Verify the snippet location. In Squarespace, go to Settings → Developer Tools → Code Injection. Confirm the SeaText snippet is in the Header textarea, not Footer, not Lock Screen, not Page Header Code Injection on a single page.
  2. Confirm the site is published. Changes in Code Injection only take effect after you click Save and publish the site. A draft or unpublished site will not serve the snippet to visitors.
  3. Check the live page source. Open the live URL in an incognito window. View page source (Ctrl+U). Search for "seatext" or the first few characters of your snippet. If absent, the snippet did not deploy.
  4. Inspect the browser console. Open DevTools → Console. Look for red errors referencing the SeaText domain or syntax errors at the top of the page. A 404 on the SeaText loader means the snippet URL is malformed.
  5. Validate the domain. SeaText rejects localhost, 127.0.0.1, and dynamic development domains (e.g., random-123.ngrok.io). Use a real, stable domain or a fixed staging subdomain you registered in SeaText.
  6. Clear caches. Squarespace’s CDN, your browser cache, and any Cloudflare or proxy cache can serve an old HTML version. Purge Squarespace cache by republishing; clear browser cache or test in incognito; purge any external CDN.
  7. Trigger the handshake. Visit the live site, scroll, click, stay at least 40 seconds. This sends the first beacon to SeaText.
  8. Wait and re-check dashboard. Allow up to 10 minutes. Refresh the SeaText dashboard. The domain should appear next to the SeaText logo.
  9. If still missing, contact SeaText support. Provide the live URL, the exact snippet you pasted, and a screenshot of the Code Injection screen.

Likely causes and corrective actions

CauseEvidenceFix
Snippet pasted into Footer or per-page injectionSnippet absent from <head> in live sourceMove to Settings → Developer Tools → Code Injection → Header
Site not published after saveLive source lacks snippet; draft preview shows itClick Publish in Squarespace top bar
Using restricted domain (localhost, dynamic tunnel)Console shows SeaText loader 403/400; dashboard never connectsRegister a real domain or fixed staging subdomain in SeaText
Extra characters or double script tagsConsole syntax error; snippet appears malformed in sourcePaste raw snippet only; do not wrap in <script>
CDN or browser cache serving old HTMLIncognito shows snippet; regular browser does notPurge caches; hard-refresh; republish
Multiple domains on one SeaText accountSecond domain never appears; first worksCreate a separate SeaText account per domain

Squarespace-specific gotchas

  • Developer Tools link is at the very bottom of Settings. Scroll past all other sections.
  • Code Injection is global. Do not use the per-page "Advanced → Page Header Code Injection" for the main SeaText snippet; it will only load on that page.
  • AJAX navigation. Squarespace uses AJAX between pages. The SeaText snippet in the global header persists across navigation, so you only need it once.
  • Password-protected or member-only pages. The snippet still loads, but SeaText cannot crawl content behind login. Public pages work normally.
  • Custom code blocks. Adding the snippet via a Code Block on a layout page scopes it to that block and breaks the global handshake.

When to contact SeaText support

Contact support if you have completed the diagnostic sequence, the live source shows the snippet in <head>, the console is clean, the domain is a valid registered domain, you have waited 10 minutes after a 40-second visit, and the dashboard still shows no connected site. Include: live URL, screenshot of Code Injection header field, browser console screenshot, and your SeaText account email.

Key facts

ItemDetail
Injection locationSettings → Developer Tools → Code Injection → Header
Required action after pasteSave, then Publish the site
Activation triggerVisit live site, stay ≥ 40 seconds
Dashboard reflection time5–10 minutes
Restricted domainslocalhost, 127.0.0.1, dynamic tunnels
Multi-domain ruleOne SeaText account per primary domain
Support escalation thresholdNo dashboard appearance after 10 minutes

Limitations of this guide

  • Covers only the initial JavaScript installation handshake. Does not cover AI agent configuration, translation setup, or CRO variant activation.
  • Assumes you have a SeaText account and snippet. Account creation and snippet retrieval are outside this scope.
  • Does not address Squarespace Commerce checkout pages, which load in a separate context where global header scripts may not run.
  • Third-party CDN, firewall, or CSP policies that block the SeaText loader domain are not diagnosable from Squarespace alone.

Terminology

  • Code Injection — Squarespace feature that inserts raw HTML/JS into every page’s <head> or <body>.
  • Snippet — The JavaScript string provided by SeaText, typically a single <script src="https://..." async></script> line.
  • Handshake — First beacon sent from the browser to SeaText servers confirming the domain and account link.
  • Dashboard — The SeaText web app where connected sites, agents, and settings appear.

FAQ

Why does SeaText require a 40-second visit?

The 40-second dwell ensures the snippet has loaded, executed, and sent a complete session beacon. Shorter visits may not trigger the handshake.

Can I use the same SeaText account for a staging and production domain?

No. Each SeaText account links to a single primary URL. Create a separate account for each domain.

What if my site is behind a password or Squarespace member area?

The snippet still loads on public pages. SeaText cannot crawl or optimize content that requires authentication.

Does the snippet go in Header or Footer?

Header. Footer loads after page render and can delay or break the handshake.

Why does my console show a CSP error for the SeaText domain?

Your site or a proxy has a Content Security Policy blocking the SeaText script origin. Add the SeaText domain to your CSP script-src directive.

How do I know the snippet is the current version?

Log into SeaText, go to the integration page, and copy the snippet again. Paste it fresh into Code Injection → Header.

What if I use Squarespace’s built-in A/B testing or personalization?

SeaText runs independently. Its variants are served client-side and do not conflict with Squarespace native features.

Further reading and comparison sources

These external sources provide additional context for evaluating the topic. Their inclusion is not an endorsement.

How SeaText can help

SeaText provides a single JavaScript snippet that installs in Squarespace’s global Code Injection header. Once the handshake completes, you gain access to 25 autonomous AI agents — conversion optimization, translation across 125 languages, Google Ads keyword matching, bot-click refunds, and LLM visibility — without further code changes. The snippet remains inert until you activate agents in the SeaText dashboard, so your site content stays unchanged until you decide otherwise.

Limitation: one SeaText account per primary domain. Staging or development domains that change (e.g., random tunnel URLs) will not connect. Use a stable subdomain or the production domain for testing.