Should you build your own Eloqra?
Free live-chat widget for your site that lands in your Telegram
The first half is a one-sitting build and the second half isn't. A script tag that injects a chat panel, a websocket, and a bot that forwards messages so your native Telegram reply reaches the visitor · that works by dinner, and the prompt below builds it. The gap is the operator side. Replying inside a bot chat is fine for one conversation a week; the moment you have several going you want a real inbox, and in Telegram that means a Mini App, which is a second application with its own platform rules: auth is HMAC-validating initData against your bot token, the webview lies about its own height so you size from viewportStableHeight instead of dvh, fullscreen hides content under the status bar until you combine two different safe-area insets, and it disables text selection outright, so even copying a message means hand-rolling a long-press with a clipboard fallback. None of that is hard. All of it is discovered the slow way, on a phone, after the prompt has finished.
ENOriginal research content in English. Original prompt preserved in English.
Build me a self-hosted live-chat widget whose inbox is Telegram. Requirements:
- Stack: a single Node + TypeScript service (Fastify) with SQLite via better-sqlite3.
No Docker, no separate frontend build, no accounts system.
- Embeddable widget: GET /widget.js returns a script that injects a launcher button and
chat panel into any page via one tag with data-site-id, rendered in a shadow DOM so the
host page's CSS can't leak in. No iframe. Read theme (light/dark), accent color, and
corner position from data- attributes.
- Transport: a websocket (ws) between visitor and server, with a long-poll fallback when
the socket won't open. Persist every message. Give the visitor a signed cookie id so
their thread survives a reload.
- On a conversation's first message, capture page URL, referrer, and user agent parsed to
device/browser/OS, plus coarse IP geolocation from a free API.
- Telegram: a grammY bot posts each new conversation to OWNER_CHAT_ID with that visitor
context. The operator answers using Telegram's native reply-to-message · map the
replied-to message id back to its conversation and push the text to the visitor live.
- Typing indicators in both directions, and an optional pre-chat form (name + email)
toggled per site.
- An /admin page behind basic auth listing conversations, each full thread, and a reply box,
so the widget still works when Telegram is unreachable.
- Secrets in .env: BOT_TOKEN, OWNER_CHAT_ID, ADMIN_PASSWORD, ALLOWED_ORIGINS for CORS.
- Ship a README with the exact snippet to paste and VPS deploy steps (systemd + Caddy for
TLS, since websockets need it).
- Deliberately out of scope: a phone operator console. That is a Telegram Mini App, a
second project with its own rules (initData HMAC auth, viewportStableHeight sizing,
safe-area insets); budget separate days for it. Also out: multiple operators,
billing, canned replies, AI autoresponders, and analytics dashboards.The prompt opens pre-filled in your agent. Review it before running.
What would building your own look like?
One script tag injects a chat widget into your site, messages arrive in your Telegram, and replying to the bot message replies to the visitor · one conversation at a time.
What you will need
- a Telegram bot token from @BotFather
- an HTTPS host for the websocket · Telegram will not load a Mini App over plain http
- BotFather registration of the Mini App URL and menu button, if you want a real inbox rather than bot replies
Mostly they don't · for one website there is nothing to pay. Free is forever, with unlimited conversations, the full Telegram inbox and mini-app, and every widget option; 4.99 buys an extra project slot for a second site and nothing more, and the 'powered by' badge appears on paid tiers too. So the usual death-list logic inverts here. You aren't weighing a weekend against a subscription, you're weighing a weekend plus a VPS, TLS renewals, reconnect logic, and Telegram retry handling against zero. Live chat is also a promise that someone is actually there, which makes it a bad thing to hang off a box you maintain between other work. The one honest reason to build your own: you want visitor conversations on your own hardware instead of someone else's. That is the entire argument, and it isn't a financial one.
xa real operator inbox · the Mini App console with a combined thread list across sites, unread badges, typing indicators and deep links from a notification straight into the conversation · bot replies cover one chat at a time, not five at once
xthe week you spend learning Telegram's webview rather than writing features · initData HMAC auth, sizing from viewportStableHeight because dvh overshoots, two safe-area insets to stay clear of the status bar in fullscreen, and text selection disabled so copying a message needs a hand-rolled long-press
xa free tier · you would be spending days plus a monthly VPS bill to replace something that costs nothing for one site
xeverything that isn't the happy path · socket reconnects, duplicate sends, message ordering on flaky mobile networks, Telegram rate limits and retry queues, bot token rotation
xalways-on hosting · your widget is dead whenever your box, your TLS cert, or your websocket is, and a chat that silently stops connecting reads to visitors as you ignoring them
Prefer something ready-made?
License, setup, and limitations for each alternative.
How much does Eloqra cost?
- Monthly billing
- $4.99/mo$4.99/mo
- Per year
- $59.88/yr$59.88/yr
- Annual billing
- $49.99/yr17% cheaper than paying monthly
- On a Brazilian card, with 3.5% IOF
- R$26.08/moR$261/yr
Saved to My list. You will see a notice on this site when the price changes.
You complete the purchase on Eloqra’s site. Vibe Radar does not handle payments.
| Plan | Monthly | Annual (per month) | What is included |
|---|---|---|---|
| free | $0/workspace | $0/workspace | 1 website project; unlimited operators/seats and no per-message metering |
| pro (each additional project) | $4.99/workspace≈ $4.99 | $4.17/workspace≈ $4.17 | 1 additional project per subscription; no per-seat or per-message charge |
Free tier1 project forever; no seat cap and no message cap stated
Billing termsmonthly $4.99 or annual $49.99 per additional project; first project stays free
Additional costsPricing scales per additional website project, not per seat or message; there are no stated overages.
verified 2026-08-12 · source ↗
Is it cheaper to build or buy Eloqra?
Adjust the numbers: hours to build, your hourly rate, running costs and the subscription price.
Over 24 months, subscribing is cheaper.
Starting hours estimated from the analysis (multi-day). Does not price what you give up (support, integrations, security).
Can I rebuild Eloqra?
Kinda. The core of Eloqra is buildable in a weekend with the prompt on this page, but there are real gaps: a real operator inbox · the Mini App console with a combined thread list across sites, unread badges, typing indicators and deep links from a notification straight into the conversation · bot replies cover one chat at a time, not five at once, the week you spend learning Telegram's webview rather than writing features · initData HMAC auth, sizing from viewportStableHeight because dvh overshoots, two safe-area insets to stay clear of the status bar in fullscreen, and text selection disabled so copying a message needs a hand-rolled long-press. Read the honest list above before committing.
How much does Eloqra cost?
Eloqra costs about $4.99/mo (Pro, checked 10/20/2026), which is $49.99 per year.
What do I lose by replacing Eloqra?
Honestly: a real operator inbox · the Mini App console with a combined thread list across sites, unread badges, typing indicators and deep links from a notification straight into the conversation · bot replies cover one chat at a time, not five at once; the week you spend learning Telegram's webview rather than writing features · initData HMAC auth, sizing from viewportStableHeight because dvh overshoots, two safe-area insets to stay clear of the status bar in fullscreen, and text selection disabled so copying a message needs a hand-rolled long-press; a free tier · you would be spending days plus a monthly VPS bill to replace something that costs nothing for one site; everything that isn't the happy path · socket reconnects, duplicate sends, message ordering on flaky mobile networks, Telegram rate limits and retry queues, bot token rotation; always-on hosting · your widget is dead whenever your box, your TLS cert, or your websocket is, and a chat that silently stops connecting reads to visitors as you ignoring them. If any of those are load-bearing for you, keep paying.
Is there an open-source alternative to Eloqra?
Yes: Live Helper Chat (Website chats can land in Telegram and replies go back; exact trick, decidedly non-trivial setup.) The prompt is for when you want it exactly your way.