Let visitors reach you without leaving your website. Turn on the widget, tell it which sites are allowed to embed it, and paste one script tag before </body>.
Turn it on and get the snippet
- Click the gear icon, then in the left-hand Settings navigation choose Channels, then open the Widget sub-tab.
- Turn on the Enable the widget toggle.
- Under Allowed website origins, enter the exact origin your site is served from — scheme and host, no path, e.g.
https://www.yourcompany.com— and click Add. This is required: the floating button will still appear without it, but its form refuses to open on any origin not on this list, so nothing actually works until at least one is added. Add every origin you serve the widget from as a separate entry, including a staging domain if you test there too. - Copy the Embed snippet —
<script async src="https://your-canonical-host/widget.js"></script>— with the Copy button.
Paste it into your site
- Paste the snippet into your site’s HTML immediately before the closing
</body>tag — in a global template, footer, or layout file so it’s on every page you want the button on, not just one page. - Publish or deploy that change to your live site.
- Reload the site and confirm the floating support button appears in the corner you’ve configured (see “Configure the chat widget” for the position setting). A hard refresh helps — the script itself is cached in the visitor’s browser for up to an hour.
What actually loads
The script is small and loads asynchronously, so it doesn’t block your page. It draws its button inside an isolated shadow-DOM element so your site’s CSS can’t accidentally clash with it, then fetches your workspace’s public widget config — whether it’s enabled, the button label, position, and branding colors — at runtime. Nothing about your workspace is hard-coded into the snippet itself. Clicking the button opens an iframe, also served from Essential Support, containing a short contact form: name, email, subject, and message.
What happens when someone submits it
The form is verify-first, the same as your portal’s public contact form: submitting sends the visitor a confirmation link by email, and the ticket is only created once they click it. Nothing appears in your ticket list from a submission the visitor never confirms.
If the button doesn’t appear
- Confirm Enable the widget is on and you’ve saved at least one entry under Allowed website origins.
- Confirm the origin you added matches exactly, including
https://vshttp://and the exact host — a bare domain and itswwwsubdomain count as different origins. - View your page’s source to confirm the script tag is actually present in the rendered HTML, not only in a template that hasn’t been deployed yet.
- Give it a minute after a change — the script is cached for up to an hour per browser, so a very recent edit needs a fresh load rather than a cached one.
Related: Configure the chat widget and Add the chat widget to a single-page app.