What you need
- A Feedbot bot. Create one free from your site URL, then copy the bot id from Dashboard → Bot → Install.
- A paid Site plan on the Webflow site. As of October 2026, the Webflow pricing page lists “Custom code: add custom code and scripts to your entire site or individual pages” on paid Site plans and not on Starter.
- Permission to edit site settings and publish.
The snippet:
<script src="https://w.feedbotai.com/v1/feedbot.js" data-bot-id="YOUR_BOT_ID" async></script>How to add a chatbot to Webflow
- In your Webflow dashboard, open the site’s Site settings (the gear icon next to the site, or from the Designer menu).
- Go to the Custom code tab.
- Paste the snippet into Footer code. This code goes before the closing
</body>tag on every page. - Click Save changes.
- Publish the site. Custom code only goes live with a publish.
- Open the published site in a private window and send a test message.
Use Footer code rather than Head code: the page renders first and the chat loads after.
Add it to specific pages only
| Goal | Where | How |
|---|---|---|
| Whole site | Site settings → Custom code → Footer code | Paste once, publish |
| One static page | In the Designer, Pages panel → page settings (gear) → Custom code → Before </body> tag |
Paste, save, publish |
| CMS template pages (blog posts, docs) | The CMS template page’s settings, same field | Runs on every item of that collection |
| Inside a section | A Code Embed element on the page | Use inline mode (below) |
If you use page-level code, remove the site-wide copy so the loader doesn’t run twice.
Embed the chat in a section
A help center or contact page sometimes works better with the chat built into the layout. Drop a Code Embed element where you want it and paste:
<div id="feedbot-chat" style="height: 560px"></div><script src="https://w.feedbotai.com/v1/feedbot.js" data-bot-id="YOUR_BOT_ID" data-mode="inline" data-container="#feedbot-chat" async></script>Give the embed’s parent a fixed height in the Designer. The loader waits up to 10 seconds for the container, so the order of elements doesn’t matter. See Install the widget for every option, including data-position and data-primary-color to match your brand.
Identify logged-in users
Webflow sites are static, so there’s no server code on the page to compute the identity hash. If you run a members area through your own backend, compute the hash there and pass it with Feedbot("identify", ...) as shown in Identify users. For a marketing site, skip it: the bot collects emails when visitors share them.
Troubleshooting
| Symptom | Cause | Fix |
|---|---|---|
| Nothing on the live site | Saved but not published | Publish to all domains |
| Can’t save custom code | Site is on Starter | Add a paid Site plan |
Shows on yoursite.webflow.io, not on your domain (or reverse) |
Allowed domains lists only one | Add both in Bot → Install → Allowed domains. List yoursite.webflow.io, not webflow.io, because subdomains of a listed domain are allowed |
| Not visible in the Designer | Custom code doesn’t run on the canvas | Test the published site |
| Button covers a fixed “Book a demo” button | Same corner | Set data-position="bottom-left" or move your button |
Train it on your site
Webflow sites are often SaaS marketing sites and agency sites. Visitors ask what the product does, how pricing works, whether it integrates with X, and how to book a demo. From Starter, import the site by URL or by its sitemap.xml (Webflow can generate one automatically in SEO settings). On Free, paste your pricing and FAQ as text. Click Refresh website in Feedbot after each major publish. Details in Knowledge base.
On SaaS sites the bot can also do sales work: qualify the visitor, recommend a plan and show a button to start a trial or book a demo. Leads with contacts go to a list you can export or send to your CRM by webhook. See Leads.
Next steps
- Get notified when a visitor asks for a person: Human handoff.
- Plans and conversation limits: Pricing.
- Considering other tools? Feedbot vs Intercom Fin.