We Ran OpenClaw on WhatsApp for Two Months. Never Again.
We connected OpenClaw to WhatsApp on day one. It seemed like the obvious choice — everyone already had it installed, the group chats were active, and Baileys made the integration look straightforward.
Two months later: three ban warnings from Meta, two QR re-authentication failures at 2 AM that killed our heartbeat monitoring, and zero confidence that the whole setup wouldn’t collapse overnight. The switch to Telegram took 10 minutes flat.
Here’s the full OpenClaw Telegram vs WhatsApp comparison, the BotFather setup walkthrough, and the exact config changes we made.
TIME TO SWITCH FROM WHATSAPP TO TELEGRAM
10 minutes
Including BotFather setup, config update, and first test message
Side-by-Side: Telegram vs WhatsApp for OpenClaw
Before we walk through the reasoning, here’s the raw comparison. Every row mattered in our decision.
| Feature | Telegram | |
|---|---|---|
| Native Bot API | Yes (BotFather) | No (requires unofficial Baileys library) |
| Ban Risk | Near zero for bots | High — automation violates ToS |
| Markdown Support | Full (bold, italic, code blocks, links) | Limited (bold, italic only) |
| File Size Limit | 2 GB | 16 MB (media), 100 MB (docs) |
| Multi-Bot Support | Unlimited bots per account | One number = one bot |
| QR Re-Auth Required | Never (token-based) | Every 14–30 days |
| Group Bot Features | Full (commands, inline queries, admin tools) | Basic text only |
| API Rate Limits | 30 messages/second | Unclear, aggressive throttling |
| Setup Time | ~5 minutes | 30+ minutes |
| Cost | Free | Free (but ban risk = hidden cost) |
The table tells most of the story. But the ban risk row alone was enough to force the move.
Why We Left WhatsApp
Let’s be direct: WhatsApp was never built for bots. Meta’s Terms of Service explicitly prohibit automated messaging on the consumer WhatsApp app. Every time you connect an AI agent to WhatsApp via Baileys, you’re running on borrowed time.
Ban Risk Was Constant
Three warnings in two months. Each one came without explanation — just a notification that our number had been flagged for “suspicious activity.” The third warning included a 24-hour temporary suspension.
⚠️ Warning
WhatsApp can permanently ban your phone number for automation. This isn’t just your bot — you lose your personal WhatsApp account, message history, and all group memberships tied to that number. There’s no appeal process that reliably works.
QR Re-Authentication Broke at the Worst Times
WhatsApp Web sessions expire every 14 to 30 days. When they do, the connection drops silently. Our heartbeat monitor tried to reconnect at 2 AM, failed because it needed a fresh QR scan, and we didn’t find out until morning.
Two missed alerts. Two mornings of “why didn’t the agent respond last night?”
No Native Bot API
WhatsApp doesn’t offer a public bot API for consumer accounts. The Baileys library is reverse-engineered from WhatsApp Web’s protocol. It works — until it doesn’t. Every WhatsApp Web update can break Baileys, and there’s no guarantee the maintainers will patch it quickly.
One Number, One Bot
Your personal WhatsApp and your AI agent share the same phone number. That means your contacts see your bot’s activity, your bot sees your personal chats, and there’s no clean separation between work and automation.
Already Running OpenClaw?
Our token optimization guide covers the full config — from model routing to cost control. Read the pillar post →
Setting Up OpenClaw on Telegram (Step-by-Step)
The entire process takes about five minutes. Here’s every step.
1. Open Telegram and search for @BotFather.
BotFather is Telegram’s official bot for creating and managing bots. It’s verified — look for the blue checkmark.
2. Send /newbot to BotFather.
It’ll ask you for two things: a display name (can be anything) and a username (must end in bot). For example: MyOpenClawBot.
3. Copy the bot token.
BotFather responds with a token in this format:
BOT TOKEN FORMAT
123456789:ABCdefGHIjklMNOpqrsTUVwxyz_0123456
Save this token somewhere secure. Anyone with this token can control your bot.
4. Get your Telegram user ID.
Message @userinfobot on Telegram. It’ll reply instantly with your numeric user ID. You’ll need this for the allowed_users field.
5. Update your openclaw.json config.
openclaw.json — TELEGRAM CHANNEL CONFIG
{
"channels": {
"telegram": {
"enabled": true,
"bot_token": "123456789:ABCdefGHIjklMNOpqrsTUVwxyz_0123456",
"allowed_users": ["987654321"],
"parse_mode": "Markdown",
"webhook": false
}
}
}6. Restart the OpenClaw gateway.
A simple restart picks up the new channel config. No rebuild needed.
7. Send a test message to your bot.
Open Telegram, find your bot by its username, and send any message. If the agent responds, you’re live.
💡 Pro Tip
Set allowed_users to restrict who can talk to your agent. Without it, anyone who discovers your bot’s username can interact with it — and burn through your API credits. Always lock this down before going live.
Running Both Channels During Transition
You don’t have to cut WhatsApp cold. OpenClaw supports multiple channels simultaneously, which makes migration painless.
Here’s the dual-channel config:
openclaw.json — DUAL CHANNEL CONFIG (TRANSITION PERIOD)
{
"channels": {
"telegram": {
"enabled": true,
"bot_token": "YOUR_TELEGRAM_BOT_TOKEN",
"allowed_users": ["YOUR_TELEGRAM_USER_ID"],
"parse_mode": "Markdown",
"primary": true
},
"whatsapp": {
"enabled": true,
"session_path": "./wa_session",
"allowed_numbers": ["+1234567890"],
"primary": false
}
}
}Set "primary": true on Telegram so it handles all new conversations. WhatsApp stays active as a fallback for anything that’s still mid-thread.
Our transition timeline looked like this:
- Day 1–2: Both channels active. Telegram set as primary.
- Day 3–5: Moved all active conversations to Telegram.
- Day 6–7: Monitored for any straggling WhatsApp messages.
- Day 8: Disabled WhatsApp channel entirely.
One week was more than enough. After day three, nothing came through WhatsApp.
💡 Pro Tip
Export your WhatsApp chat history before switching. Telegram’s import feature can bring your conversation history over, so you don’t lose context from previous agent interactions.
Worried About Agent Security?
Channel choice is just one layer. Read how we hardened our full OpenClaw setup after ClawHavoc. Read the security guide →
Choose Telegram If / Choose WhatsApp If
Not every situation is identical. Here’s a quick decision framework.
**Choose Telegram if:**
– You run any automation, scheduled tasks, or cron-triggered messages
– You need bot API features like slash commands, inline queries, or custom keyboards
– You want zero ban risk from the platform
– You regularly share files larger than 16 MB
– You need multiple bots running on separate channels
– You value token-based auth that never requires manual QR scans
**Choose WhatsApp if:**
– Your entire team uses WhatsApp exclusively and adoption friction is a deal-breaker
– You need WhatsApp-specific integrations (e.g., WhatsApp Business API with approved templates)
– You’re operating in a region where Telegram is blocked or restricted
– You only interact with the agent manually, with no automation or scheduling involved
For most people running OpenClaw as a personal AI agent with any level of automation, Telegram wins on every metric that matters. The only real argument for WhatsApp is team adoption — and even that fades once people see how fast Telegram bots respond.
Frequently Asked Questions
Can OpenClaw run on both Telegram and WhatsApp at the same time?
Yes. OpenClaw’s channel system supports multiple active channels simultaneously. Set one as "primary": true and the other as "primary": false. Both will receive and respond to messages. We used this exact setup during our week-long transition period.
Is WhatsApp automation illegal?
It’s not illegal in most jurisdictions, but it violates WhatsApp’s Terms of Service. Meta can ban your phone number permanently without warning. The WhatsApp Business API is a separate, approved product — but it requires business verification, costs money, and doesn’t support the kind of free-form agent interaction that OpenClaw provides.
How do I get my Telegram user ID?
Message @userinfobot on Telegram. It responds instantly with your numeric ID. You can also use @raw\_data\_bot for a more detailed breakdown that includes your user ID, language code, and account status.
Can I use OpenClaw in a Telegram group chat?
Yes. Add your bot to the group, give it admin permissions, and update your config to include the group chat ID in allowed_users. The bot responds to messages that mention it by username or to slash commands directed at it. It won’t respond to every message in the group unless you configure it to.
What happens to my WhatsApp messages after switching?
Nothing — they stay in WhatsApp. OpenClaw doesn’t delete message history from any channel when you disable it. Your WhatsApp conversations remain in the app. If you exported the chat history before switching, you can import it into Telegram for reference.
🔎 Key Takeaways
- WhatsApp automation violates Meta’s ToS and carries real ban risk — including loss of your personal account.
- Telegram’s native Bot API means no reverse-engineered libraries, no QR re-auth, and no session expiry.
- The full switch from WhatsApp to Telegram takes about 10 minutes of config changes.
- Run both channels simultaneously during transition — set Telegram as primary, WhatsApp as fallback.
- Always set
allowed_userson your Telegram bot to prevent unauthorized access and API cost blowouts.
What to Read Next
- Pillar post: OpenClaw Token Optimization Guide — full config walkthrough for cost control and model routing.
- Security: Securing OpenClaw After ClawHavoc — the six config changes we made after the supply chain attack.
- Hub: AI Automation & Workflows — all posts in this series.
