Skip to content

How to Add an AI Chatbot to Squarespace (Plans That Allow It)

Add an AI chatbot to Squarespace with Code Injection: which plans allow it, where the footer box is, and why a pasted chat widget sometimes doesn't show.

By The Biggest NerdPublished 9 min read

In this guide
  1. Which Squarespace plans allow site-wide code
  2. Step by step: add an AI chatbot to Squarespace with the Code Injection footer
  3. Adding it to one page only (Code Block)
  4. Teach it your site: Squarespace's sitemap.xml
  5. Troubleshooting: why the chat widget isn't showing
  6. Testing it
  7. Frequently asked questions

To add an AI chatbot to Squarespace, paste the chatbot's script into the Footer field of the Code Injection panel, save, and check the live site in a private window. Code Injection is only available on the Core, Plus and Advanced plans and some legacy plans, so on Basic there is nowhere for the script to run. If you pasted a snippet and nothing appeared, the plan is the first thing to check.

Our Squarespace install page has the short version. This guide covers where the box is, what to do if you only want the chat on one page, how to teach the bot your site, and the handful of reasons a Squarespace chat widget stays invisible.

Which Squarespace plans allow site-wide code

Blog posts disagree on this, mostly because Squarespace renamed its plans. Some say "Business or higher", which was true of the old plan names. Here is what Squarespace's own help center says today.

Its code injection article (last updated September 16, 2026) says: "Code injection is available in the Core, Plus, Advanced, and some legacy billing plans." Its premium features article is blunter: "Premium features aren't available on the Basic plan."

So, in practice:

Plan Site-wide Code Injection JavaScript in a Code Block
Basic No No
Core Yes Yes
Plus Yes Yes
Advanced Yes Yes
Some legacy plans Yes Yes
14-day trial Most premium features Yes

Two details are worth knowing before you pay for anything:

  • Trials. According to the premium features article, a trial site gets "access to most premium features", and JavaScript in code blocks is available on all trials. Squarespace doesn't say outright whether site-wide Code Injection is among those; the one trial restriction its code injection article names is the lock screen. If the footer doesn't work on your trial, a Code Block (below) will.
  • Downgrading. If you move to Basic later, Squarespace disables Code Injection. The code stays in the panel for reference but has no effect on the site. Your chatbot will disappear without an error message, which is confusing if you've forgotten the plan change.

Plan names and what's in them do change. If what you see doesn't match the table, trust the two articles linked above over us.

Before touching Squarespace, do the two things on our side. Sign up (the free trial is three days with every Growth feature and 100 replies, no card), then in the dashboard type your site's address under Your website and press Save website. The chat only answers on addresses saved there. Until one is saved, the script tag does nothing, even if it is on your page.

Then copy your script tag. It looks like this:

<script src="https://thebiggestnerd.com/widget.js" data-key="your-key" async></script>

Now in Squarespace:

  1. Open the Pages panel on the left of the editor.
  2. At the bottom of the panel, click Custom Code, then Code Injection. Squarespace's Pages panel article describes Custom Code as the place "to add custom CSS, HTML, and other code to your site". On a version 7.0 site, these options are under Website Tools instead.
  3. Find the Footer field. Squarespace says code here "is injected before the closing tag on every page in your site."
  4. Paste the script tag into the Footer field. It already has its <script> tags, which is what Squarespace asks for with JavaScript.
  5. Click Save.
  6. Open your site's public address in a private or incognito window, not in the editor, and look for the chat bubble in the corner.
  7. Back in our dashboard, the status under Your website should change to Live within a minute of that first visit.

That's the whole install. The widget loads asynchronously, so it doesn't hold up your page, and it draws inside its own shadow DOM, so your template's fonts and colors don't leak into it and its styles don't leak into your site.

If the bubble is there, ask it something you know the answer to. If it says it doesn't know, that's expected at this point: it hasn't read your site yet. That's the next section but one.

Adding it to one page only (Code Block)

Sometimes you only want the chat on a pricing page or an FAQ page. Squarespace's Code Blocks article covers this, and the same plan rule applies: "To add JavaScript or an iframe to a code block, your site needs to be on the Core, Plus, or Advanced plan."

  1. Edit the page where the chat should appear.
  2. Click Add block (or +) and choose Code.
  3. Click the pencil icon on the block to open its editor.
  4. Set the Mode menu to HTML.
  5. Paste the script tag.
  6. Make sure Display Source is off. With it on, Squarespace shows your code as text instead of running it, which is why some people see the script printed on their page.
  7. Save the page and check it in a private window.

A Code Block only loads on the page it's on. That's the point, but it also means a visitor who clicks through to another page loses the bubble. For most shops the footer is the better home, and the bot can still be told which pages matter most.

There's also page-level code injection (gear icon on the page, then Advanced), but that field goes into the page's <head>. Use the Code Block for one page, or the site-wide Footer for all of them.

Teach it your site: Squarespace's sitemap.xml

A chatbot that only knows your homepage will say "I don't know" a lot. The fast way to teach it everything is your sitemap, and Squarespace already makes one.

Squarespace's sitemap article says it "automatically generates a list of your site's URLs" at:

  • https://www.yourdomain.com/sitemap.xml on a custom domain
  • https://sitename.squarespace.com/sitemap.xml on the built-in domain

To load it:

  1. In our dashboard, open your assistant and go to the Whole site tab.
  2. Paste your sitemap address and start the import.
  3. Wait for the pages to finish reading, then look down the list and Remove anything you'd rather it didn't quote: an old sale page, a draft-looking test page.

Sitemap import is on every paid plan and the trial. The sitemap and feed training page explains what it reads.

A few Squarespace specifics that affect what the bot can learn:

  • Hidden and protected pages aren't in the sitemap. The same article lists password-protected pages, pages hidden from search, disabled pages and code block content as excluded. If your shipping details live on a hidden page, add that page's address by hand on the A page tab, or paste the text on the Paste text tab.
  • Private sites have no readable sitemap. Squarespace says a private or password-protected site needs to be set to Public for the sitemap to load.
  • New pages take a while. Squarespace updates the sitemap when you add or remove content, usually within about an hour and up to 24 hours. Import after that, not the minute you publish.

We wrote a longer guide to training a chatbot on your sitemap, including which pages are worth leaving out.

Troubleshooting: why the chat widget isn't showing

Work down this list in order. Most cases stop at the first or second item.

1. You're on the Basic plan, or you downgraded. Squarespace disables Code Injection on Basic and the pasted code stops having any effect. Check which plan the site is on before anything else.

2. You haven't saved your site's address in our dashboard. The script checks where it's running. If your domain isn't under Your website, it stays silent. The www form and subdomains are covered once the main domain is saved.

3. You're looking in the editor. Squarespace's code injection article notes that injected code can interfere with editing, and offers Disable Scripts in Preview, which, as it says, "doesn't affect how your site looks to visitors". If you've switched that on, you won't see the bubble in the editor. Check the live address in a private window instead.

4. You pasted into the Header field. The script works there too, but we recommend the footer so it loads after your content. If you've pasted it in both, remove one.

5. Display Source is on. If you used a Code Block and your page shows the text of the script, turn Display Source off and set Mode to HTML.

6. Your browser is showing an old copy. Do a hard refresh, or use a private window. If you've just switched domains, check the address you saved in our dashboard matches the one in the browser bar.

7. It's the checkout page. Squarespace says checkout pages "don't support code", so the bubble won't appear there. That's usually what you want anyway.

8. Something else on the page is broken. If another injected script errors, it can stop what comes after it. Squarespace suggests safe mode: add /safe after /config in your editing address. Remove other scripts one at a time to find the culprit. Squarespace's support won't troubleshoot custom code, so this part is on you or the script's maker. If it's ours, email us.

Testing it

Once the bubble shows, test it the way a customer would, not the way you would.

  1. Write down the ten questions people actually email you. "Do you ship to Canada?" "Can I return a sale item?" "Are you open on Sunday?"
  2. Ask each one in the chat on your live site, in your customers' words, typos included.
  3. For each answer, check it against your own page. It answers only from what it was given, so a wrong answer almost always means the page itself is unclear or out of date.
  4. Ask one thing your site doesn't cover. It should say it doesn't know, then offer a short form so the visitor can leave their details. That form emails you. If you'd like more on why it refuses instead of guessing, read how we stop a chatbot making up policies.
  5. Open the dashboard's answer gaps list. Every question it couldn't answer is there. Each one is a page you haven't written yet.

What it won't do on Squarespace, or anywhere: look up an order, or book an appointment. It can't see your orders or your calendar. If those are most of your questions, link to your Squarespace scheduling page or order lookup from a page it has read, and it will point people there.

When you're ready to keep it, the pricing page has the plans: Starter is $49 a month for 1,000 replies, and there's no fee to remove our branding.

Frequently asked questions

Can I add a chatbot on the Squarespace Personal/Basic plan?

Not with a script. Squarespace's help center says code injection is available on Core, Plus, Advanced and some legacy plans, and that premium features aren't available on Basic. Personal was an older plan name; if you're on a current Basic plan, you would need to move to Core or above for a script-based chatbot to run.

Where is Code Injection in Squarespace?

Open the Pages panel, click Custom Code at the bottom, then Code Injection. On a version 7.0 site, it's under Website Tools. Paste a chat script into the Footer field, which Squarespace injects before the closing body tag on every page.

Why isn't my chat widget showing on Squarespace?

The usual reasons are a Basic plan, checking inside the editor instead of the live site, or the chatbot not knowing your domain yet. With our widget, save your site's address in the dashboard first, then view the site in a private window. If the script text is printed on the page, a Code Block has Display Source switched on.

Does Squarespace have a built-in chatbot?

We searched Squarespace's help center in October 2026 and didn't find a visitor-facing AI chatbot of its own. Chat on Squarespace sites generally comes from a third-party script added through Code Injection. If Squarespace adds one, its help center is the place to check.