Skip to content
Website widget6 min read

Put the widget on a landing page

A campaign page is just another origin: same snippet, its own hostname on the allowlist, and its own goal.

Browse topics

What it is

A landing page is just another website origin as far as the widget is concerned. You paste the same script from Integrations → Web widget, you add that page's hostname to allowed domains, and the bubble appears.

What makes landing pages worth their own page is that they usually differ from your main site in three ways that each break something:

  1. A different hostname — a campaign domain, or a subdomain your allowlist has never heard of.
  2. A different publishing tool — a page builder that may strip script tags.
  3. A different goal — capturing a lead rather than answering a support question.

This page covers all three.

When you would use it

A campaign page, a waitlist, a pricing page, a product launch, or a microsite on its own domain — anywhere the chat should qualify or capture a visitor rather than just support one.

Where to find it

Open Dashboard → Chatbots → your chatbot → Integrations → Web widget.

Which chatbot should answer?

Decide this before you paste anything, because it is annoying to change later.

Reuse your existing chatbot when the landing page sells the same thing your main site does and the same knowledge answers both. Fewer chatbots means fewer knowledge bases to keep current.

Create a dedicated chatbot when the campaign has its own offer, pricing, or terms; when you want its conversations and leads kept separate for reporting; or when you want a more sales-oriented tone than your support chatbot should have.

A dedicated chatbot costs a slot on your plan (Free 1, Starter 2, Standard 5, Pro 10, Agency 30) and needs its own knowledge and its own allowed domains. See Create your first chatbot.

Steps

  1. Pick or create the chatbot that should answer landing-page visitors.
  2. Add the knowledge the campaign needs. A chatbot that cannot answer "how much is it?" on a pricing landing page is worse than no chatbot. See Knowledge overview.
  3. Activate it and confirm at least one source is trained. See Chatbot readiness.
  4. Turn on lead capture if the point of the page is collecting contacts — Settings → Customer data. See Lead capture fields.
  5. Consider the launcher settings. A landing page is one of the few places auto-open genuinely earns its keep. Use a delay of at least 5–10 seconds and leave mobile off unless you have tested it. See Change the widget look and position.
  6. Copy the snippet from Integrations → Web widget and paste it into the landing page template.
  7. Add the landing page's hostname to allowed domains — and www if it resolves both ways. If the campaign lives on a different domain from your app, that is a separate entry; a wildcard for one domain does not cover another. See Allow the widget on your domains.
  8. Publish and test in a private window. Confirm the bubble appears, the greeting is right, and a new conversation shows up under that chatbot with the channel recorded as Website widget.

Page builders

Most builders have a "custom code" or "code injection" box that takes the snippet as-is:

  • Wix — Settings → Custom Code → Head, all pages.
  • Squarespace — Settings → Advanced → Code Injection → Header.
  • Webflow — Site settings → Custom code → Head code.
  • Ghost — Settings → Code injection → Site Header.
  • WordPress — use the official plugin, which also registers the site's host for you. See WordPress plugin.

The Web widget tab and the Plugins tab both offer platform-specific snippets with the destination named in a comment, so you are not guessing which box to use. See Plugins overview.

If your builder strips <script> tags entirely — some restrictive plans do — use the iframe embed or a button linking to the hosted page instead. Both work, and the hosted link works even on Free. See Iframe embed and direct link.

Measuring whether it worked

Once traffic arrives:

  • Conversations on that chatbot, filtered to the Website widget channel, tells you how many people engaged. See The conversations list.
  • Customers shows who you captured, if lead capture is on. See Where leads come from.
  • Analytics → Needs attention shows the questions the chatbot could not answer — on a campaign page these are the objections your copy did not address, which is genuinely useful marketing feedback.

If you used a dedicated chatbot, all three views are already scoped to the campaign.

The bubble on Agentency's own site is not yours

Agentency's public marketing pages can show a Help Assistant bubble, loaded through the same widget technology. That is Agentency's chatbot, answering from the Help Center.

Conversations there land in Agentency's dashboard, not yours. People chatting on agentency's own site are not your leads. Your leads come from your embed on your pages, or from your hosted link.

What you will see

The same Web widget tab snippet you would use anywhere else. After publishing, the bubble on the landing URL and a new conversation on the chatbot you embedded — not on any other chatbot.

Limits and plan notes

Same plan gate as any widget: the script embed needs a paid plan with integrations, and Free is share-link only. The hosted link and a hand-written iframe of it remain available on Free.

Allowed domains is capped at 50 hostnames per chatbot and is per chatbot rather than per account.

More traffic means more message credits. A successful landing page can burn through an allowance faster than you expect — watch the credits meter in the sidebar. See Message credits.

Common problems

The bubble shows on my app but not on the campaign domain.

Allowed domains is per host. Add the campaign hostname and save. A wildcard covers subdomains of one domain only — a different domain always needs its own entry.

My builder saved the snippet but nothing renders.

It likely stripped the tag. View the page source and search for chatbot-widget. If it is missing, use the iframe embed or a link to the hosted page.

The chatbot cannot answer campaign questions.

It has your support knowledge, not your campaign's. Add the landing page's own content — or crawl the page itself. See Crawl a website.

Auto-open is hurting my conversion rate.

Increase the delay, or turn it off on mobile. An overlay competing with a cookie banner on a phone is a bounce.

People chatting on agentency's site are not appearing in my dashboard.

Correct. That bubble is Agentency's Help Assistant, not your chatbot.

Common questions

Should the campaign reuse my support chatbot or get its own?

Reuse it when the same knowledge answers both. Create a dedicated one when the campaign has its own offer, needs separate reporting, or wants a more sales-oriented tone.

The bubble shows on my app but not the campaign domain.

Allowed domains is per host, and a wildcard covers subdomains of one domain only. Add the campaign hostname as its own entry and save.

My page builder saved the snippet but nothing renders.

It probably stripped the tag. View the live page source and search for the widget script; if it is missing, use the iframe embed or a link to the hosted page instead.

Can I use the hosted link on a landing page instead?

Yes. A button pointing at the hosted page works on every plan, including Free, and you can frame that page by hand. You lose the corner bubble and the auto-open behaviour.

Are people chatting on Agentency's own site my leads?

No. That bubble is Agentency's Help Assistant, answering from the Help Center, and those conversations land in Agentency's dashboard rather than yours.

Was this article helpful?

Ready to try it on your own content?

Create a free workspace, add a document, and ask the questions your team is tired of answering.