YES

Replaceable in one session with an AI coding agent.

A live chat box for a website: visitors ask, an agent answers, transcripts are kept and searchable.

Promptfree, for everyone, and the only version there is
Build me the live chat widget that replaces Olark.

This is genuinely small. The details below are the ones that decide whether it is pleasant or awful to use, on both sides.

STACK
- Node 20+ with Fastify, server-rendered HTML
- SQLite through better-sqlite3, WAL mode, FTS5 over transcripts
- Server-sent events from server to browser, plain POST the other way — **no WebSocket needed**, and this survives proxies that break them
- Caddy in front

THE DATA MODEL
- conversations: id, visitor_hash, page, referrer, started_at, ended_at, agent_id, status, rating
- messages: id, conversation_id, author_kind, author_id, body, at, read_at
- agents: id, name, is_online, last_seen_at
- canned: id, shortcut, body
- offline_messages: id, email, body, page, at

THE WIDGET
- Under 20KB, loaded after the page, never blocking. Inside a shadow root
- Reconnect with backoff when the connection drops, and keep unsent messages in local storage so a reload does not lose what somebody typed
- **Accessible: reachable by keyboard, a labelled region, focus managed, and new messages announced to a screen reader.** Almost no commercial chat widget does this properly, and it is the cheapest way to be better than the thing you are replacing
- prefers-reduced-motion respected, and no sound by default

THE VISITOR EXPERIENCE
- Show whether anybody is actually there. If nobody is, say so and take an email instead — **a chat box that looks live and answers in six hours is worse than a contact form**
- Show the queue position or an honest expected wait
- Email the transcript at the end if they want it
- Never open by itself more than once per visit, and remember the dismissal

THE AGENT EXPERIENCE
- A keyboard-first list, unread first, with the visitor's current page and their history beside the conversation
- Canned replies by shortcut, expanded inline and editable before sending
- A claim so two agents do not answer one person, and a transfer with a note
- A visible typing indicator both ways, which costs nothing and changes how the conversation feels

WHAT TO RECORD AND WHAT NOT TO
- Transcripts, page, referrer, and a hashed visitor identity. **Do not record what the visitor types before they send it** — some products do, and it is indefensible
- Retention with a sweeper, stated in the widget, and deletion on request
- Say clearly whether transcripts are stored and for how long

MEASUREMENT
- First response time, resolution time, and the share of conversations that got no answer at all. That last one is the number that matters and the one nobody displays

WHAT MATTERS MOST
Honest availability and a genuinely accessible widget. One respects the visitor's time; the other lets everybody use it.

What you lose

  • A widget maintained across every browser and device
  • Transcript storage and search with nothing to run
  • Availability routing and offline messages
  • Accessibility work already done

If you would rather not build

  • Papercups or a small SSE widget, which is the core
  • A contact form, if nobody is actually available to chat

The escape hatch

open source · no votes, no paid placement

Chatwoot

$0

Open-source live chat and omnichannel inbox.

chatwoot/chatwootfree · open source

Chaskiq

$0

Self-hosted messaging platform with chat and campaigns.

chaskiq/chaskiqfree · open source

Why this verdict

our own opinion · changed only by a person

80/100

Verdict yes at 80: server-sent events, a small widget and a transcript table. The accessibility and honest-availability points are where a homemade version beats the paid one.

History

tracked since 14 Aug 2026 · nothing is ever overwritten

Interest · last 30 days

Nothing recorded yet. This chart fills in once the page has visitors, votes or prompt copies — it will not draw a flat line to look busy.

Questions about Olark

answered from the record above

Is Olark free?

No — the plan we track is $29 a month. Standard at $29 per seat per month billed monthly, around $23 annually.

Can you replace Olark by building your own?

YES. Replaceable in one session with an AI coding agent. Replacement score 80 out of 100, build time one session. Read what you lose before you decide.

How much does Olark cost?

$29 a month on Standard — $348 a year. Recorded 14 Aug 2026.

What do you lose by replacing Olark?

A widget maintained across every browser and device; Transcript storage and search with nothing to run; Availability routing and offline messages; Accessibility work already done. If any of those carry weight for you, keep paying.

Is there an open-source alternative to Olark?

Yes: Chatwoot, Chaskiq. The prompt on this page is for when you want it your way instead.

Related entries

same category first, most replaced first

All 29 in Customer support

Not sending yet

Every week, something stops being worth paying for.

New verdicts, prices that moved, entries added. One email a week. Unsubscribe in one click. Nothing is being sent yet — your address is kept here, and the first issue is the first thing it is used for.

free forever · no tracking pixel · stored here, never passed to anyone

Esc