A separate workspace per property
Marketing, docs and app each got their own install, their own settings and their own invoice — and now nobody can see the whole picture.
Your marketing site, your docs and your app are three different conversations with three different people — a prospect comparing plans, a developer stuck on an endpoint, a customer whose billing failed. They should not all land in the same undifferentiated queue, and they should not cost you three subscriptions either.
These are the four things SaaS teams tell us before they switch. If none of them land, you probably do not need us yet.
Marketing, docs and app each got their own install, their own settings and their own invoice — and now nobody can see the whole picture.
A developer asking about pagination lands in front of whoever is next, and waits while they find someone who knows.
Per-agent pricing means the engineer who answers two hard questions a week costs the same as a full-time agent.
A support script that opens a socket and starts polling on every page load, whether or not anyone wants to chat.
Whitelist each domain and subdomain you run. The same script tag and the same token serve all of them, so shipping chat on a new property is a dashboard action rather than a second install and a second invoice. Every inbox and every report filters by domain, so "how is docs doing" is a dropdown, not an export.
Group your people into departments and assign departments to domains. A question from the docs site reaches whoever owns docs; a billing question reaches billing. When an engineer is only on rotation two afternoons a week, a concurrency cap of one keeps them from being buried.
You spent real time on your app’s load performance; a chat script should not undo it. Before a visitor clicks the launcher there is no session, no heartbeat, no polling and no socket. The widget also registers no beforeunload handler, which is the thing that quietly disables the back/forward cache for the whole page in Chrome and Firefox.
beforeunload, so your bfcache survivesThree of the six feature pages, picked for this audience rather than listed alphabetically.
One always-on socket carries messages, typing, presence and read receipts. No polling, no five-second lag, no bot maze in front of a human.
Live chatDepartments, per-domain assignment and per-agent concurrency limits — so nobody is drowning while a colleague sits idle.
Routing & teamsColours, position, greetings, quick replies, business hours and a pre-chat form — all set in the dashboard, none of it a redeploy.
Widget & brandingNo. Domains count against your plan’s limits rather than being a separate line item, and one token serves all of them.
Yes. Set a workspace default, then override only the fields that need to differ on a given domain — the rest keeps inheriting, so a brand tweak does not mean editing every site.
Yes — add them as agents, assign them only the docs domain, and set their concurrent-chat limit to one so they are never buried.
It does essentially nothing until someone clicks it: no session row, no heartbeat, no polling loop and no WebSocket. See Widget & branding for the detail.
More of these on the general FAQ.
One line of code, no card to start. If it is not right for you, you will know within an afternoon — and we would rather hear why.
Pick the categories you're comfortable with. Essential is always on — everything else is yours to decide. See our cookie policy.
Session, security and CSRF cookies. Needed to keep you signed in and the site secure — there's no version of the site that works without them.
Remembers small things — billing cycle preference, last viewed plan. Disabling makes the site slightly less smart, never broken.
Anonymous, aggregated visit data — which pages get read, which features get clicked. We use this only to decide what to build next.
Attribution for ad campaigns and remarketing pixels. Off by default — enable only if you don't mind retargeting.