~/tools/waha
tool

WAHA

WAHA (WhatsApp HTTP API) is a self-hosted REST API for WhatsApp automation — a Twilio alternative that lets you send and receive WhatsApp messages from your own server over plain HTTP, with no per-message platform fees.

WAHA (WhatsApp HTTP API) is a self-hosted REST API for WhatsApp automation — a Twilio alternative that lets you send and receive WhatsApp messages from your own server over plain HTTP, with no per-message platform fees.

What is WAHA?

WAHA is a WhatsApp HTTP API you install on your own server and run in a single Docker command. It wraps WhatsApp behind a REST API and a web dashboard, so any language that can make an HTTP request — Python, JavaScript, PHP, Go, Java, C#, and more — can send messages, read incoming ones, manage groups, and receive events through webhooks.

Because it drives WhatsApp directly rather than routing through a paid gateway, there are no per-message charges and your message data stays on infrastructure you control.

What is WAHA best for?

WAHA is best for developers and small teams who want to automate a WhatsApp number without paying Twilio-style per-message fees or applying for official WhatsApp Business API access. It fits chatbots, order and appointment notifications, customer-support automation, and internal alerts — especially when you already self-host and want message data on your own servers.

What can WAHA do?

  • Send and receive messages over REST — text, images, video, documents, and voice notes.
  • Webhooks that push incoming messages and session events to your app in real time.
  • Multi-session support — run many WhatsApp accounts from one instance (roughly up to ~500 concurrent sessions on a well-sized server).
  • Three connection engines — WEBJS (headless browser), NOWEB (a Node.js WebSocket client), and GOWS (a Go WebSocket client) — so you can trade off resource use against features.
  • Groups, Channels, and Status automation, plus presence and typing indicators.
  • Built-in dashboard for QR-code login and session management, with Swagger/OpenAPI docs and a Postman collection.
  • Pluggable storage — PostgreSQL, MongoDB, or S3-compatible object storage for sessions and media.
  • Low-code integration with n8n for building workflows without writing an HTTP client.

Where does WAHA fall short?

WAHA is an unofficial WhatsApp client — it automates WhatsApp Web rather than using Meta’s approved Business API. That violates WhatsApp’s terms of service, so the number you connect can be rate-limited or banned, and this makes it unsuitable for high-volume marketing blasts or anything where a lost number is unacceptable.

It also tracks a moving target: WhatsApp changes its internals without notice, so features can break between releases until an engine is updated. And unlike the official API, it has no support for approved message templates, the green verified badge, or the formal opt-in flows that regulated senders often require.

Is WAHA free?

Yes. Since version 2026.6.1, everything that was previously gated behind the paid “WAHA Plus” tier — unlimited sessions, media messages, all storage backends, and built-in security — ships in the free, Apache-2.0 licensed image. There is an optional Community tier (around $5/month via Patreon, Boosty, or crypto) to support development, but it unlocks no extra features.

What does WAHA replace?

WAHA stands in for the WhatsApp messaging side of paid communication platforms like Twilio and Vonage. Instead of paying per conversation through a managed gateway, you self-host the API and connect a WhatsApp number directly — trading the official channel’s compliance guarantees for zero per-message cost and full data control.

FAQ

Is WAHA open source? Yes. WAHA is licensed under Apache-2.0 and its source is on GitHub. As of version 2026.6.1 the full feature set is in the free, open source image.

Can I self-host WAHA for free? Yes. It’s designed to run on your own server via a single Docker command, with no license fee and no message limits. The optional paid Community tier is a donation, not a feature unlock.

Is WAHA a good Twilio alternative? For cost and control, yes — you avoid per-message fees and keep data in-house. But it uses an unofficial WhatsApp client, so it lacks Twilio’s official compliance, message templates, and delivery guarantees, and carries a real risk of the number being banned.

What do I need to run WAHA? Docker and a server. Pick a connection engine (NOWEB and GOWS are lighter than the browser-based WEBJS), and optionally wire up PostgreSQL, MongoDB, or S3 for persistent session and media storage.