Chat Widget Features & Performance
Answer visitors live or let the AI handle it, reply from your inbox, and share one inbox with your team. Everything GhostChat does — and the performance numbers behind it.
Start free — no cardAI Assistant
A built-in AI chatbot that answers visitors 24/7 from your FAQ — and hands off to you the moment it isn't confident. A flat +$10 on any plan — Pro + AI or Team + AI.
Grounded in Your FAQ
Answers only from the knowledge base you approve — hours, pricing, product questions. One click drafts it all from your own website with Generate with AI.
Hands Off, Never Dead-Ends
When it can't answer, it connects the visitor with you live — or captures their name and email so you can follow up. The lead is never lost.
Blocked Topics
List the topics the AI must never answer — refunds, legal, anything clinical — and it hands those straight to a person instead of guessing.
Gmail Threading
Reply to website messages directly from your inbox. No dashboard required.
Reply from Any Email
Get notified via email when visitors message you. Just hit reply — your response appears in the chat widget. Works with Gmail, Outlook, Proton Mail, and any email client.
Full Conversation Threads
Every reply stays in one email thread. See the full conversation history without switching apps or logging in.
Visitors Reply Too
Visitors get your reply via email and can respond back. The conversation continues in both the widget and email.
Team Support
Invite your team to reply together on the Team plan. Every response shows who sent it — no more "who answered this?"
Invite Agents
Add up to 9 teammates by email — 10 people including you. Assign admin or agent roles. They get their own login.
Real-Time Notifications
Every agent gets push and email notifications for new messages. No one misses a chat, even when away from the dashboard.
See Who Replied
Every message shows the agent's name. Visitors see who's helping them. Your team stays accountable.
No Duplicate Replies
The sidebar shows who last replied. All agents see responses appear instantly — no stepping on each other's toes.
Up to 10 team members on Team · identity verification included
Visitor Page Journey
See every page your visitor browsed before and during the chat. Know exactly what they were looking at — product pages, pricing, checkout — so you can give relevant answers instantly.
Auto-Translate
Talk to visitors in their language. Messages are automatically translated between you and the visitor in real-time — powered by Google Translate.
133+ Languages
Powered by Google Translate. Supports every major language — from Spanish to Arabic to Japanese and beyond.
Real-Time
Both sides see translated messages instantly. No copy-pasting into Google Translate. Just chat naturally.
Two-Way
Visitor writes in French, you see English. You reply in English, they see French. Both originals are preserved.
Feature Comparison
What each widget includes — performance numbers are in the table above.
| Feature | GhostChat | Crisp | Tawk.to |
|---|---|---|---|
| Website chat widget | ✓ | ✓ | ✓ |
| Gmail threading (reply from inbox) | ✓ | ✗ | ✗ |
| Privacy-first (no tracking) | ✓ | ✗ | ✗ |
| Cookie-free | ✓ | ✗ | ✗ |
| GDPR-friendly by default | ✓ | ~ | ✗ |
| Starting price | $0 (free forever) | $0 (paid from $45/mo) | $0 (with ads) |
| Setup time | 30 seconds | ~10 mins | ~10 mins |
Data from public documentation and third-party testing (2026).
Performance Metrics
Script size and Total Blocking Time, measured with Lighthouse.
| Widget | Size | Perf score | Blocking time |
|---|---|---|---|
| GhostChat | ~15 KB | 100 | 0 ms |
| Tawk.to | ~250 KB | 92 | 340 ms |
| Tidio | ~200 KB | 99 | 100 ms |
| Crisp | ~155 KB | 100 | 30 ms |
Sizes are gzipped transfer sizes. Performance score and blocking time are from our own Lighthouse run (Lighthouse 13.0.1, Chrome 145, Slow 4G with Moto G Power emulation, each widget tested alone on a blank page) — full method and results in the benchmark.Learn why widget size matters →
Built on the Edge.
Most chat widgets rely on centralized clusters in US-East. We don't. GhostChat runs on Cloudflare Durable Objects at the edge, meaning your chat session lives in the data center closest to your visitor.
Edge-Native Delivery
Zero round-trips to a central database. Instant real-time sync.
Zero Dependencies
No React, no jQuery, no bloat. Just vanilla JS optimized for the modern web.
Privacy Mode
One switch, and chats are never remembered on the visitor's device.
Closing the tab clears everything instantly; an open chat wipes itself after 15 minutes of inactivity. The next person sees a fresh widget with no trace a conversation happened — while every message still arrives in your dashboard as normal.
Built for sites whose visitors may use shared or monitored computers — clinics, libraries, schools, workplace resources. Per-site, in Dashboard → Sites → General, on every plan.
Webhooks
Get notified in your own systems as conversations happen — a lightweight event per visitor message, and a full-transcript event when a conversation is resolved. Connect Slack, your CRM, Airtable, or custom tools.
Event: message.new
We POST to your URL every time a visitor sends a message (first message or reply). You get the message content, visitor email if provided, page URL, country, and conversation/session IDs so you can sync to CRM, create tickets, or notify your team.
Payload includes: event, siteId, siteName, sessionId, messageId, content, visitorEmail, pageUrl, referrer, country, createdAt.
Event: conversation.resolved
When a conversation is resolved — manually or by the daily auto-archive — we POST one complete snapshot: every message with role and timestamp, attachments, the visitor's page journey, and name/email when provided. Keyed on a stable conversation ID, so re-resolves re-send the full record and your receiver simply upserts. One conversation, one record — built for CRM archives.
Every delivery is logged in Dashboard → Developer → Deliverieswith its response status, so "did it fire?" is never a mystery.
Set your webhook URL in Dashboard → Sites → [your site] → Webhook URL.
Visitor Context API
Share cart contents, page info, or any custom data with your agents in real-time. Context appears in the conversation header so your team knows exactly what the visitor needs.
GhostChat.setContext({
cart: ["Brake Pad Kit", "Oil Filter"],
vehicle: "2022 Can-Am Maverick X3",
page: "checkout"
})Each call merges with existing context. Max 10 keys per session, 4KB total. Updates throttled to once per 5 seconds.
WooCommerce: Our WordPress plugin auto-sends page context and cart data — zero config required.
Frequently Asked Questions
What features are included in the free plan?
The free plan includes 1 site, 30-day chat history, canned responses, quick links, file uploads, typing indicators, push notifications, and email notifications. GhostChat branding is shown on the widget.
Can I reply to chats from my phone?
Yes. Every chat notification is an email you can reply to directly from Gmail or any email app on your phone. You can also use the mobile-friendly dashboard at app.ghostchat.dev.
Does GhostChat support multiple websites?
Yes. Pro and Pro + AI support up to 3 sites; Team and Team + AI support up to 10. Each site has its own widget, conversation history, and settings. Team members are account-wide, so everyone you invite can help across all your sites.
How does Gmail threading work?
When a visitor messages you, GhostChat sends you an email notification. You reply to that email and your message is delivered to the visitor in real time. No dashboard login required.
Does GhostChat include an AI chatbot?
Yes. The AI Assistant (a flat +$10 on any plan — Pro + AI or Team + AI) answers visitor questions 24/7 from your FAQ knowledge base, hands off to you when it is not confident, and never answers topics you block. It runs entirely on our servers — no API key or setup beyond a two-minute configuration.
Can I verify who I am actually talking to?
Yes. Identity verification (on the Team plan) lets your backend cryptographically sign each visitor identity, and GhostChat checks the signature before the chat starts — so nobody can impersonate a customer by typing their name or email.
What is the Visitor Context API?
The Visitor Context API lets you send data to agents in real time. WooCommerce/store context (cart, product, page type) is available on Pro and up; custom setContext() keys are on Team and Team + AI.