Appearance & behaviour

What a visitor sees before they type anything, and what each setting actually changes.

The settings

All of these live under Settings → Appearance for each bot. Changes take effect on the next page load — there is nothing to re-publish and no snippet to update.

FieldTypeDescription
namerequiredtext, 1–40 charsThe bot's display name, shown in the chat header. This is the bot's own name, not your company name, and it is what a visitor refers to when they mention the bot to your support team.
welcomeMessagetext, up to 200 charsThe first thing in the conversation, before the visitor types. The most useful ones name what the bot can actually help with rather than saying hello.
colorrequiredhex, e.g. #2563ebThe accent colour: the bubble, the send button, and the visitor's own messages. Pick the colour your site already uses for primary buttons.
avatarUrlhttps URLAn image shown beside the bot's replies. Must be http(s) — other URL schemes are rejected rather than rewritten.
positionrequiredbottom-left | bottom-rightWhich corner the bubble sits in. Move it to the left if you already have something in the bottom-right, such as a cookie banner or a back-to-top control.
darkModerequiredtrue | falseRenders the conversation on a dark surface. Set it to match your site rather than the visitor's system.

Language

Two different things pick a language, and they are decided separately.

The widget's own labels — the placeholder, the send button, the hand-off prompt — follow your page. The loader reads the lang attribute on your html element and passes it along; if there is none, the visitor's browser language is used.

The answers themselves are written in whatever language the visitor typed in, regardless of either of the above. Someone writing to an English page in Japanese gets a Japanese answer.

The Powered by HelpBrain badge

On the entry tier the widget carries a small badge. On the paid tiers it does not. There is no appearance setting for it in either direction.

Note

It is resolved on our side from your plan, deliberately not from your appearance settings — appearance settings are customer-writable, so a setting would mean anyone could remove branding they are not paying to remove. It also fails safe: an unknown or missing plan shows the badge, so a bug brands a free widget rather than un-branding a paid one.

How it behaves on the page

Some of this is not configurable, and is worth knowing before you decide it is broken:

  • The bubble appears on load; the conversation itself is only fetched when someone opens it. That is why the script is small and why the chat is not in your page's initial payload.
  • The conversation runs in an iframe on our origin, so it cannot read or change anything on your page — and your CSS cannot accidentally restyle it either.
  • It keeps its own state outside your page's JavaScript, so a client-side route change in a single-page app does not close an open conversation.
  • Every answer that used your pages shows the pages it came from, and the visitor can open them.

Tone of voice

How the bot writes is set separately from how it looks — it is picked up from your own pages during setup and can be adjusted afterwards. Appearance settings never change the wording of an answer.