Skip to content
AnytimeReply

Channels

Website chat bubble

Add the floating chat bubble to any website with one line of code, and limit it to your domains.

Install

Open Channels → Website and copy the Chat bubble code. It looks like this:

Paste before </body>
<script src="https://anytimereply.com/widget.js" data-agent="YOUR_AGENT_KEY" defer></script>
  1. 1

    Copy the code

    YOUR_AGENT_KEY is your agent's public key — the code on the page already contains it.

  2. 2

    Paste it on every page

    Just before the closing </body> tag, or in your site builder's "custom code" / "footer scripts" setting (Webflow, Wix, Squarespace, Framer…).

  3. 3

    Reload your site

    The bubble appears in the corner. Visitors on phones get a full-screen chat.

Using WordPress or Shopify? See WordPress and Shopify.

Only on your domains

Under Channels → Website → Allowed domains, list the sites that may show your chat (one per line). Subdomains are included — example.com also allows shop.example.com. Leave it empty to allow any site.

Open the chat from your own button

HTML
<button onclick="AnytimeReply.open()">Chat with us</button>

AnytimeReply.close() and AnytimeReply.toggle() work too. See the JavaScript API for identifying signed-in users, website actions and proactive messages.

Appearance

Colours, position, avatar, welcome message and suggested questions are set in Playground → Display. See Chat appearance.

Greet visitors first

Show a short message next to the bubble when a visitor lingers, scrolls or is about to leave. See Proactive messages.

Troubleshooting

  • No bubble? Check the page source contains the script, the domain is in Allowed domains (or the list is empty), and the visitor's country isn't blocked under Guardrails.
  • Old look after a change? Reload the page — settings are fetched every time the page loads.
  • Content Security Policy? Allow https://anytimereply.com in script-src, frame-src and connect-src.
Was this page helpful?
Still stuck? Contact us
Website chat bubble – Docs · AnytimeReply