The widget on your site

Two lines of HTML. A chat your customers will actually use.

Drop it on your help center, your docs, your pricing page — wherever your customers ask questions. It themes to your brand in eight properties, loads in under 50ms, and won't get blocked by Safari's tracking protection or anyone's ad blocker.

Two lines of HTML — you're done.

Once you sign up and get a widget key, putting it on your site is two lines — pasted wherever you want the chat to appear:

<script src="https://widget.flowchat.com/v1.js" defer></script>
<flowchat-widget data-key="kbk_live_xxxxxxxx"></flowchat-widget>

No npm package, no build step, no React adapter, no "Wordpress plugin coming soon." Your developer pastes those two lines, reloads the page, and the widget is live. The widget keeps its styles to itself — it won't break your CSS and your CSS won't break it.

Accessible by default. Tested, not assumed.

The widget works with a keyboard alone — Tab into it, type your question, Enter sends, Esc closes. Citations are real clickable links with meaningful text, not opaque buttons. Screen readers announce every streamed answer in real time, and refusal states have a distinct audio announcement so assistive-tech users know the bot didn't find a confident answer (rather than thinking the bot just trailed off).

We test against a real screen reader on every release. If your compliance team needs a WCAG 2.2 AA conformance statement, we’ll send one.

It looks like part of your site.

Eight CSS properties cover almost everything brand-related: background, text, accent colour, refusal accent, font, border radius, and spacing. Set them in your admin panel — or have your developer paste them onto the embed snippet — and the widget themes to match your site automatically.

Need finer control (custom message bubbles, sidebar layout instead of floating, branded loading state)? The widget exposes named hooks your developer can target without forking the bundle.

Preset
Colors
Shape & type
Embed snippet
<flowchat-widget
  data-key="kbk_live_xxxxxxxx"
  style="
    --fc-surface: #0d0f13;
    --fc-ink: #f5f7fa;
    --fc-accent: #5cf2ff;
    --fc-accent-fg: #07080a;
    --fc-refusal: #c084fc;
    --fc-font-family: Inter, system-ui, sans-serif;
    --fc-border-radius: 12px;
    --fc-spacing: 1;
  "
></flowchat-widget>
live preview
Ask the docs
How do I cancel my subscription?
You can cancel at any time from your account settings — click your avatar, then Billing, then End plan[#1]. You’ll keep access until the end of your current billing period[#2].

Three preset themes (FlowChat default, Stripe-like, Linear-like) cover most cases at one click. Tweak any of the eight custom properties to land on your brand. The embed snippet at the bottom updates live; paste it onto your page.

Fast. Light. Won't get blocked.

The widget loads in under 50ms from a CDN, cached aggressively for repeat visitors. The bundle is ~22KB — smaller than the average tracking pixel. It uses a per-customer API key (not third-party cookies), so it’s not affected by Safari’s tracking protection, ad blockers, or modern privacy defaults that quietly break most chat widgets.

The bot starts answering within 600ms of your customer hitting send, anywhere in the world. No "thinking..." spinner that lasts five seconds. No regional latency penalty.