I love building automations... but keeping WhatsApp sessions alive is like trying to keep a YouTube video above 60% retention - constant battle. We're running whatsapp-web.js for restaurant order bots, and I'm watching the ban rate and session drop-off like a retention chart.
Context: customers message first, no bulk marketing, maybe 50 orders per restaurant per day. Each restaurant gets its own isolated deployment, one WhatsApp session, LocalAuth, Railway, Puppeteer + Chromium. The big reason we didn't go Meta Cloud API: restaurants want to keep using their normal phone app while the bot handles orders in the background. Coexistence theoretically works, but getting approved as a Tech Provider is a paperwork nightmare when your company docs are in Kurdish.
So we're stuck with unofficial libraries for now. Main questions I'm trying to figure out before scaling:
• Real-world ban rates for this usage pattern? I've heard if customers initiate and no bulk messaging, bans are rare. But I want numbers from people who've run this for months.
• Operational issues after a few months? Someone told me expect downtime every quarter when WhatsApp Web updates. That's like a platform algorithm change - you lose all your sessions if you're not ready.
• Session invalidation vs Puppeteer instability - which kills you more? I'm already seeing Puppeteer eating too much RAM. One guy said he hosts 20 sessions on 1GB Railway server using socket-based libraries instead of browser-based. That's a huge efficiency gain - might switch to Baileys.
Also thinking: start with whatsapp-web.js for MVP, then migrate to official Cloud API once we get the legal stuff sorted. But is that realistic? Or will we get banned before we can switch?
Would love to hear from anyone running a similar production system. What's your retention curve look like - more bans or more session crashes?