Message Limits & Anti-Spam Safeguards
How Domainchat protects your workspace message limits from spam, burst traffic, and accidental loops.
How agents are prevented from spamming or bombarding with requests
To protect your business from automated bots, accidental infinite loops, and malicious users looking to burn through your monthly message limits, Domainchat enforces strict rate limiting.
These protections ensure that your AI agents remain available for genuine customers, and that no single user can flood your workspace with infinite messages.
What is a "Session"?
A session is a single continuous conversation between a customer and your AI agent. How a session is tracked depends on where the conversation takes place:
- On your Website (Web Widget): The conversation is tied to the visitor's browser — not the tab. If the user closes the tab and returns later, they resume the same conversation (for up to 7½ days after their last message). A new session starts when the visitor chooses ⋮ → Refresh Session in the widget header, clears their browser data, or after 7½ days (180 hours) of inactivity. See Conversations & Visitor Memory for the full picture.
- On Social Channels (Instagram, Facebook, WhatsApp, Telegram): The session is permanently tied to the customer's personal account or phone number.
Example:
If John chats with your bot on your website and comes back the next day, he picks up the same conversation right where he left off — his message count continues from where it was. If John sends a DM on Instagram, his session is tied to his Instagram handle (@john_doe) in the same permanent way.
How it works on different channels
Anti-spam rules are customized for each channel to ensure the best possible experience:
Web Widget
If a customer sends too many messages too quickly, or exceeds 30 messages in their current conversation within a rolling 24-hour window, the chat widget gently lets them know — and points them at ⋮ → Refresh Session in the widget header, which lifts the limit immediately while the agent still remembers their details.
Social Channels (Instagram, FB, WhatsApp, Telegram)
Since social users have a permanent connection and cannot just start a "new chat" to clear their cache, sending them error alerts would be spammy. Instead, the bot will simply go silent if they exceed the limit, and automatically resume once the window resets.
How we handle monthly workspace message limits
Each subscription plan includes a shared pool of monthly messages. To protect your brand reputation and ensure customers are never shown technical billing messages (like "Subscription limit exceeded"), Domainchat implements highly professional, automated fallback states if your monthly limit is ever reached:
For example, the Free plan includes 50 messages/month (approximately 25 conversation turns), and the Scale plan includes 30,000 messages/month. See the full plan comparison table for all limits.
Web Chat Lead Capture Form
If the monthly message pool is exhausted, the AI assistant goes offline. Customers are shown a polite message explaining the assistant is temporarily offline and are automatically presented with a Lead Capture Form so they can easily leave their details for a human follow-up.
Social Channel Queue Messages
On social channels (such as Instagram DMs), customers are sent a natural-sounding auto-response: "Thanks for reaching out! We are currently experiencing higher than normal chat volumes. A member of our team has been notified and will reply directly as soon as possible."
When do limits reset?
These safeguards are temporary. The individual session limit resets automatically exactly 24 hours after the customer sent their very first message. Your workspace-wide monthly plan limit resets at the start of your new billing cycle every month, restoring the shared message pool for all of your agents.
Rate Limiting Summary
| Limit Type | Threshold | Scope |
|---|---|---|
| Session Messages | 30 messages per 24 hours | Per customer session |
| Request Rate | 20 requests/minute | Per agent endpoint |
| Monthly Messages | Plan-specific (e.g., 50 to 30,000) | Per workspace (all agents) |
Rate limits are enforced at the server level and cannot be bypassed. If you need higher limits, consider upgrading your plan.
What happens if payment fails?
If a payment fails on a paid plan, your account enters a 5-day grace period with a 5% total message cap of your monthly limit. After 5 days without recovery, the account auto-downgrades to the Free plan. All data is preserved. For full details including agent suspension, storage locking, and how to restore service, see the Plan Limits & Billing Guide.