Which Website Builders Allow a Chat Widget? 20 Builders Checked
We read 20 website builders' own help pages in October 2026: which run a chat widget script, on which plan, where the setting hides, and which block it.

Short answer
As of 22 October 2026, 15 of the 20 website builders we checked can run a chat widget's script tag site-wide. Six need an upgrade first (Wix, Squarespace, Webflow, Carrd, WordPress.com, Teachable), while Blogger, Square Online's Free plan and self-hosted WordPress cost nothing extra. Google Sites and GoDaddy's classic editor run custom code only inside a boxed frame; Substack, Skool and Linktree run none. Checkout pages stay script-free on Shopify, Squarespace and the course platforms.
A chat widget installs with one script tag, and the code is rarely the hard part. The hard part is learning whether your website builder will run that tag at all, on which plan and in which settings menu, because builders seldom put all three on one help page, and plan rules change faster than the tutorials that quote them.
This guide is for small-business owners, freelancers and agencies building on Wix, Squarespace, WordPress, Webflow and their peers, and for course creators on Kajabi, Teachable or Thinkific. It gives a 20-row table, then the free-plan routes, the builders that block scripts, checkout pages, preview quirks, a five-step live check and the cost of upgrading just for chat.
Every row was read on the builder's own help center or pricing page on 22 October 2026, in US dollars, without opening trial accounts; where a builder does not say which plan unlocks custom code, the table says "not stated". PepoChat is our product; its behaviour below was checked in its code and documentation the same day. The builder rules apply to any chat widget that installs with a script tag.
Which website builders let you add a chat widget?
Fifteen of the 20 website builders we checked on 22 October 2026 run a chat widget's script tag across the whole site, six of them only after an upgrade; two run code only inside a box, and three run none.
Custom code is a builder setting that adds your own HTML and JavaScript to every page, usually just before the closing </body> tag. A floating chat widget needs exactly that: a small script that draws a launcher button fixed to a corner of the browser window and opens the chat in a frame of its own. In the table, "Yes" means the builder runs such a script site-wide on the plan named, "Paid plan" means a free or cheaper plan exists that cannot, "Boxed" means code runs only inside a frame on one page, and "No" means there is no setting at all.
| Builder | Chat script? | Lowest plan that runs it | Where to paste it | Watch out for |
|---|---|---|---|---|
| WordPress (self-hosted) | Yes | Free software on any host | Plugins → Add New Plugin, or the theme footer | PepoChat's plugin can hide the widget on paths such as /checkout |
| WordPress.com | Paid plan | Personal ($4); not Free | Plugins: install a chat plugin | Custom code and plugins are listed from Personal up |
| Wix | Paid plan | Any Premium plan with a connected domain (Light, $17) | Settings → Custom Code → + Add Custom Code, Body - end | Runs only on the published site, never in the editor |
| Squarespace | Paid plan | Core ($29); not Basic | Pages → Custom Code → Code Injection → Footer | "Checkout pages don't support code" |
| Webflow | Paid plan | Basic Site plan ($15), or a Core, Growth, Agency or Freelancer Workspace | Site settings → Custom code → Footer code | Shows in preview, goes live only when you publish; covers /checkout |
| Framer | Yes | Not stated by Framer | Project Settings → Custom Code → Add Script | Framer names chat widgets as a use of custom code |
| Shopify | Yes | Basic ($29); Starter not stated | Online Store → ⋯ → Edit code → theme.liquid, before </body> | Theme code never reaches checkout; a paid theme on trial can't be edited |
| GoDaddy Websites + Marketing (classic editor) | Boxed | Not stated | An HTML section on one page → Custom Code | The embed sits "inside of an iframe"; no site-wide code |
| Hostinger Website Builder (AI Builder) | Yes | Not stated; no free plan (14-day trial) | More (⋯) → Integrations → Custom code | Scripts go to the end of the body; not visible in the editor |
| Square Online | Yes | Free, Plus and Premium, per Square's article | Channels → Square Online → Settings → Tracking Tools → Add new code, End of body | Embed-code sections inside pages need Plus or Premium |
| Carrd | Paid plan | Pro Standard ($19 a year); not Free or Pro Lite | Embed element: Code, Hidden, Body End | Embeds show nothing in the builder |
| Ghost | Yes | No plan rule stated (Starter, $15); self-hosted Ghost too | Settings → Advanced → Code injection → Site footer | Posts and pages also have their own code injection |
| Blogger | Yes | Free | Layout → Add a Gadget → HTML/JavaScript | Blogger says authors add code "at their own risk" |
| Kajabi | Yes | No plan rule stated (Basic, $143) | Settings → Site details → Page scripts → Header Page Scripts | Skips offer checkout and upsell pages |
| Teachable | Paid plan | Builder ($69); not Starter | Site → Code Snippets → Head Code Snippets | Skips SSO login and checkout pages |
| Thinkific | Yes | Every paid plan in its help article (Start, $82) | Settings → Code & Analytics → Site Footer Code | Skips Performance Checkout, community and DM pages |
| Google Sites | Boxed | Free | Insert → Embed → Embed code | Each embed is a sandboxed iframe, so a launcher cannot float |
| Substack | No | None | Nowhere | No custom CSS, HTML or iframe code |
| Skool | No | None | Nowhere | Plugins only: Zapier, pixels, links |
| Linktree | No | None | Nowhere; add a link instead | Analytics take an ID, never a script |
Plans, paths and prices from each builder's own help center and pricing page, checked 22 October 2026; prices are per month billed yearly, in US dollars, unless stated.
The setting has a different name on almost every builder: code injection on Squarespace and Ghost, custom code on Wix, Webflow, Framer and Hostinger, page scripts on Kajabi, code snippets on Teachable and tracking tools on Square Online. Whatever the label, paste the snippet once, into the site-wide field that places code at the end of the body. Kajabi and Teachable offer only a head field site-wide; PepoChat's loader waits until the page has been read before drawing its launcher, so the head works there too.
WordPress is the exception to pasting. On a self-hosted site a plugin adds the tag for you, as the WordPress guide shows, and WordPress.com opens the same route from its cheapest paid plan. Its Personal plan page, reviewed on 8 October 2026, lists custom code "like JavaScript, iframe, and more" alongside plugin installs, and its plugin guide, reviewed on 22 October 2026, says plugins work on all paid plans.
Can you add a chatbot to a free website builder plan?
Yes, on three of the 20 builders: as of October 2026, Blogger, Square Online's Free plan and self-hosted WordPress run a chat script without a paid builder plan, while the free tiers of Wix, WordPress.com, Webflow and Carrd do not.
- Blogger is free and takes code in a gadget: Layout → Add a Gadget → HTML/JavaScript, as Google's own help describes. Blogger's help adds that authors who add code or third-party widgets "do so at their own risk".
- Square Online places code site-wide from the Square Dashboard under Channels → Square Online → Settings → Tracking Tools → Add new code, with End of body selected, and Square's article on tracking code is written for Free, Plus and Premium subscribers. Embed-code sections inside pages are a Plus and Premium feature.
- Self-hosted WordPress costs nothing for the software; you pay only for hosting.
Framer sits in between. Its help names chat and support widgets such as Intercom, Zendesk and Crisp among the uses of custom code, and neither that article nor the pricing page ties custom code to a plan. The free plan publishes to a Framer domain, and Basic, at $10 a month, adds your own domain.
The free tiers that block chat scripts do it in different ways. Wix runs custom code only on a published site with a connected domain, and Wix's help says connecting a domain requires a Premium plan, from $17 a month billed yearly. WordPress.com Free installs no plugins; Personal costs $4 a month billed yearly or $9 monthly. Webflow's free Starter plan has no custom code, and Carrd's Free and Pro Lite plans have no embeds. Google Sites is free, but its embeds are boxed, as the next section explains.
On every one of these plans, a link still works. A hosted chat page is your chat agent on its own web address, opened from a button or menu link instead of a floating launcher. PepoChat's lives at https://widget.pepochat.com/full?organizationId=YOUR_ORGANIZATION_ID, gives the same answers and human handoff as the widget, and costs nothing on PepoChat's free plan, which includes 200 AI replies a month. With an allowed-domains list in place, first switch on Allow the hosted chat page, as the install docs explain.

Which website builders block a floating chat widget, and what can you do instead?
Substack, Skool and Linktree had no setting for your own scripts on 22 October 2026, and Google Sites and GoDaddy's classic builder run custom code only inside a frame on one page, where a floating launcher cannot float.
Substack, Skool and Linktree: no script setting at all
Substack's help center says it does "not currently support custom CSS or HTML in the post editor", including raw iframe code; only supported embeds, such as YouTube and Spotify, work. Skool's plugin guide, updated 29 August 2026, lists 11 plugins, from membership questions and AutoDM to Zapier, Google Ads tracking, links and webhooks, and none of them adds your own script. Linktree takes analytics by ID only: on Pro and Premium you paste a Google Analytics Measurement ID or a Meta Pixel ID into Settings, never a script.
Google Sites and GoDaddy's classic builder: code that stays in a box
An iframe is a separate web page drawn inside a rectangle of another page, and code running in it can only draw within that rectangle. Google's help explains how to add HTML, CSS or JavaScript through Insert → Embed → Embed code, with JavaScript inside <script> tags. On a public Google Site we inspected on 22 October 2026, each such embed was a sandboxed iframe titled "Custom embed" whose code loaded from a googleusercontent.com address, so a chat launcher drawn there stays inside the embed's rectangle.
GoDaddy's classic builder, called Websites + Marketing in its help center, works the same way. Its help puts custom code in an HTML section on a page, and its troubleshooting article says "the embed is placed inside of an iframe". A second GoDaddy article says you "won't be able to apply site-wide or more complex code". If an install guide tells you to use a site-wide code setting on GoDaddy, check it against GoDaddy's own help first.
GoDaddy's newer Airo AI Builder works differently. Its editor has a Code item in the top menu to "View and edit your code", and code edits spend no AI credits, so a script tag can go into the code every page loads; publishing needs a paid Airo plan, because GoDaddy unpublishes projects on the free plan. Airo also has its own chat widget, which sends visitors' messages to an email address you choose.
Google Sites adds an allowed-domains catch. PepoChat's widget reports the address of the page directly around it, and inside a Google Sites embed that is Google's frame, not your site. Never add googleusercontent.com to the list to get around it: subdomains are included automatically, so the entry would let embeds on other people's Google Sites use your agent.
What to do instead
- Link to a hosted chat page. Add a "Chat with us" button on Google Sites or GoDaddy, a link on your Linktree, a link in your Skool group (the Links plugin is on Pro) or a link in a Substack post.
- Host one help page elsewhere. Build a contact or help page on a builder that runs scripts, and link to it from the blocked site.
- Move the site. GoDaddy's help for the classic builder points users who need more control over code to its Managed Hosting for WordPress.
Why can't a chat widget run on checkout pages?
Shopify, Squarespace, Kajabi, Teachable and Thinkific keep the custom code you add elsewhere off their hosted checkout pages, where an injected script could copy card details as shoppers type them.
E-skimming is the theft of card details by a malicious script on a checkout page. The PCI Security Standards Council says its requirements 6.4.3 and 11.6.1 "focus on ensuring that payment page scripts are properly authorized, checked for integrity, and monitored for tampering", in its March 2025 guidance announcement; both took effect on 31 March 2025. Keeping merchants' own scripts off hosted checkout pages is one way platforms limit that risk. This is general information, not compliance advice.
What each builder does, from its own documentation on 22 October 2026:
- Shopify: checkout is not rendered through your theme's
theme.liquidlayout. Its own layout file,checkout.liquid, is available only to Shopify Plus merchants and, according to Shopify's developer docs, is now unsupported for the Information, Shipping and Payment steps; script tags on the Thank you and Order status pages ended for non-Plus stores on 26 August 2026. - Squarespace: its code injection guide says "Checkout pages don't support code"; a separate order status page field runs code after checkout.
- Kajabi: Header Page Scripts skip offer checkout and upsell pages.
- Teachable: head snippets skip SSO login and checkout pages on sso.teachable.com.
- Thinkific: Site Footer Code skips Performance Checkout, community posting pages and direct messages, and runs in the Learner Hub only after you opt in.
Webflow is the exception: its footer code covers the whole site, Ecommerce checkout included, and Webflow reminds stores that scripts they add may affect their own PCI compliance obligations. The Webflow guide has a snippet that skips paths starting with /checkout, and PepoChat's WordPress plugin hides the widget on any path you list.
Losing the chat at checkout costs less than it seems. Shipping, returns and payment questions come up on product, cart and sales pages too, and the course creators guide covers the pre-purchase questions Kajabi, Teachable and Thinkific sellers get most.
Why does the chat widget show in preview but not on the live site?
Builders treat custom code differently before you publish: Wix runs it only on the published site, Webflow shows it in preview but puts it live only after publishing, and Hostinger and Carrd never show it in the editor.
- Wix: Wix's developer docs say custom code "doesn't take effect in the editor and only runs on the published site", and name live chat widgets as a common use.
- Webflow: effects appear in preview and comment modes but go live only when you publish, and custom code never runs in expand canvas view.
- Hostinger: code is visible in preview mode and online, "not within the editor".
- Carrd: an embed outputs nothing in the builder, so only the published site shows it.
- Squarespace: injected code can get in the way of editing, so Squarespace suggests a private window to see the site with code running.
- GoDaddy and Square Online: GoDaddy's classic builder shows HTML sections in Preview and makes them public when you publish; Square asks you to publish to see changes live.
The reverse case, a launcher that works on the live site but shows an error in preview, usually comes from the allowed-domains list, the set of sites where your widget may start a conversation. Builder previews and staging copies run on other hostnames, so add the full staging address while you test, such as your-site.webflow.io, yoursite.squarespace.com, your-project.framer.app, your-site.carrd.co, your-site.ghost.io or your-store.myshopify.com. Never add the bare builder domain: entries include subdomains, so webflow.io would let every Webflow site run your agent. The allowed-domains docs cover the matching rules for up to 20 entries.
How do you confirm a chat widget snippet is live?
Open the published site in a private window and check five things in your browser's developer tools, which takes about two minutes: the snippet is in the page, the script downloaded, the loader ran, the launcher drew and the chat opens.
- Open the live address privately. A private window shows what a first-time visitor sees, without editor overlays or a logged-in view.
- Find the snippet. Right-click the page, choose Inspect, and search the Elements panel for
widget.pepochat.comwith Ctrl+F or Cmd+F; Hostinger's own help recommends the same check. If the match sits inside an iframe, the builder has boxed your code. - Check the download. Reload with the Network tab open and filter for
widget.js. A 200 status means the loader arrived; a blocked request usually means an ad blocker in your own browser. - Check that the loader ran. In the Console, type
window.EchoWidget: an object with init, show, hide and destroy means PepoChat's loader is running. "data-organization-id attribute is required" means the snippet lost its organization ID attribute, and "already initialized" means the snippet was pasted twice. - Open the chat. Your greeting means you are done. "This website is not allowed to use this chat widget" means the page's domain is missing from the allowed list, and "The chat couldn't load" usually means a content security policy blocks frames from
widget.pepochat.com.
PepoChat's launcher is a button with the id echo-widget-button, fixed 20 pixels from the bottom and side of the window, so searching the Elements panel for that id confirms it was drawn even when a cookie banner or another button covers it. The script-tag guide covers content security policy settings in more detail.

Is a plan upgrade worth it just to add a chatbot?
The cheapest plan that runs a chat script ranged from $19 a year on Carrd to $143 a month on Kajabi on 22 October 2026, so weigh the upgrade against the chatbot's own price and against a free link.
| Builder | Cheapest plan that runs a chat script | Price, billed yearly | Per year | Cheaper plan and why it falls short |
|---|---|---|---|---|
| Carrd | Pro Standard | $19 a year | $19 | Pro Lite, $9 a year: no embeds |
| WordPress.com | Personal | $4 a month | $48 | Free: no plugins |
| Webflow | Basic Site plan | $15 a month | $180 | Starter, free: no custom code |
| Ghost(Pro) | Starter | $15 a month | $180 | None: Starter is the cheapest plan |
| Wix | Light | $17 a month | $204 | Free: no connected domain, so no custom code |
| Squarespace | Core | $29 a month | $348 | Basic, $19 a month: no code injection |
| Shopify | Basic | $29 a month | $348 | None on the pricing page |
| Teachable | Builder | $69 a month | $828 | Starter, $29 a month: no code snippets |
| Thinkific | Start | $82 a month | $984 | None on the pricing page |
| Kajabi | Basic | $143 a month | $1,716 | None: Basic is the cheapest plan |
Prices from each vendor's pricing page (Wix's from its "Is Wix really free?" guide), in US dollars, checked 22 October 2026.
Two worked examples show the range. A Squarespace site on Basic pays $228 a year; Core costs $348, so the chat script adds $120 a year. A Teachable school moving from Starter to Builder pays $480 a year more, close to a year of PepoChat's Starter plan at $490. On Carrd, by contrast, the whole Pro Standard plan costs $19 a year and also adds custom domains.
Then add the chatbot itself. PepoChat's Free plan includes every feature except new-lead emails, with 200 AI replies a month, and Starter costs $49 a month or $490 a year for 2,000 replies. Most builder upgrades bring more than custom code, such as your own domain or, on Wix, no Wix ads, so count only the part you would not buy anyway.
What to do next
- Follow the step-by-step guide for your builder: Squarespace, Wix, or Webflow, Framer, Carrd and Ghost.
- Keep the website builders reference open while you paste; the snippet is the same everywhere.
- Create a free PepoChat workspace, import your site and test the agent before you change any builder settings.
- Related guides: adding an AI chatbot to Shopify, GoDaddy, Hostinger, Duda, Weebly and Jimdo and chat widget not showing.
Frequently asked questions
- Can I add a chatbot to a free website builder plan?
- Sometimes. As of October 2026, Blogger, Square Online's Free plan and self-hosted WordPress run a chat widget's script without a paid builder plan, and Framer states no plan rule. The free tiers of Wix, WordPress.com, Webflow and Carrd cannot run custom code. On any plan, you can link a button to a hosted chat page instead of a floating widget.
- Which website builders don't allow custom code?
- Of 20 builders checked in October 2026, Substack, Skool and Linktree offer no setting for your own scripts at all. Google Sites and GoDaddy's classic Websites + Marketing builder accept code only inside an embedded frame on one page, so a floating chat launcher stays boxed in. The others run site-wide code, though Wix, Squarespace, Webflow, Carrd, WordPress.com and Teachable need a paid plan.
- Does Wix allow custom code on the free plan?
- No. Wix requires a published site with a connected domain before you can add custom code under Settings, and connecting a domain requires a Premium plan, which started at $17 a month billed yearly in October 2026. Custom code also runs only on the published site, never in the Wix editor. Free Wix sites can link a button to a hosted chat page instead.
- Can you add a chat widget to Google Sites?
- Not as a floating widget. Google Sites accepts HTML and JavaScript through Insert, Embed, Embed code, but each embed runs inside a sandboxed frame on one page, so a chat launcher cannot float over the site. The practical option, as of October 2026, is a button or link that opens a hosted chat page, which works on free Google Sites.
- Does GoDaddy Website Builder support JavaScript?
- It depends on the editor. As of October 2026, GoDaddy's classic Websites + Marketing builder runs HTML, CSS and JavaScript only inside an HTML section, which its help says is placed inside an iframe, and allows no site-wide code, so a floating chat widget stays boxed. The newer Airo AI Builder has a Code view for editing the site's files, and publishing needs a paid Airo plan.
- Where do I paste a chat widget script on Squarespace?
- In the Footer field of the Code Injection panel: open the Pages panel, click Custom Code at the bottom, then Code Injection, paste the script into Footer and save. On version 7.0 sites the panel sits under Website Tools. As of October 2026 code injection needs the Core, Plus or Advanced plan, and checkout pages never run it.
Try this on your own site in ten minutes
PepoChat includes every feature on the free plan — 200 AI replies and 5 knowledge sources a month, no credit card.
Keep reading
Chatbase vs PepoChat: Which AI Support Agent Fits Your Team in 2026?
An honest side-by-side of Chatbase and PepoChat on pricing, free plan or trial, sources, handoff, booking, actions, channels and voice, and a pick by team type.
Intercom Fin Pricing Explained, and What a Flat-Plan Alternative Costs
What Intercom Fin's $0.99 per outcome adds up to once you count resolutions and seats, with a worked 2,000-conversation example and when a flat plan wins.
