Plan limits & enforcement
What each limit does and exactly what happens when you reach it.
Each plan sets limits and entitlements. This page explains how they're enforced. Some limits block an action with an error; others silently change behavior.
Hard limits (blocked with an error)#
When you try to exceed these, the action is rejected with HTTP 402 and a body like:
{
"error": "plan_limit",
"feature": "seats",
"limit": 5,
"plan": "starter",
"message": "…"
}
| Limit | When it triggers |
|---|---|
| Seats | Inviting a user beyond your seat count. Pending invitations count toward the limit. |
| Channels | Adding a channel beyond your channel count. |
| Channel types | Adding a channel type your plan doesn't allow (Free is website widget only; WhatsApp official API needs Growth+). |
| Knowledge bases | Creating a knowledge base beyond your plan's count. |
| Calls | Starting a call on a plan that doesn't include voice/video (Free, Starter). |
| Comment forwarding | Enabling Facebook/Instagram post-comment forwarding on a plan below Scale. |
| Holidays | Adding or editing a holiday on Free. Starter and above can define holidays. |
Soft behaviors (no error)#
These limits change what's available without throwing an error.
AI-resolution quota#
Each plan includes a monthly AI-resolutions allowance. A resolution is counted only when the AI agent genuinely resolves a conversation on its own. That means all of the following:
- The AI actually answered the customer's question. If the AI couldn't help and only offered to open a support ticket, or the chat auto-closed after the AI never gave a real answer, it does not count — even though the conversation closes.
- No human agent was involved — the chat was never assigned to or replied to by a teammate.
Coming back about the same issue doesn't double-count. If a customer returns within about 3 days and it's the same unresolved topic, the conversation reopens and the whole back-and-forth still counts as a single resolution. A different question — or any return after that window — is treated as a new resolution.
A teammate reopening a resolved conversation is different: the AI resolution that already happened stays counted, and resolving the conversation again does not count a second one.
When the monthly quota is used up:
- The AI agent stops auto-answering new conversations. Customers can still open support tickets, and your team replies from the inbox as usual.
- There is no overage charge — it's a soft stop.
- The counter resets monthly at the start of each billing period.
- If you don't want to wait for the reset (or upgrade your plan), you can buy AI-resolution top-ups — one-time packs that sit on top of your monthly quota and are used only after the bundled allowance is gone.
The agent also needs indexed knowledge to answer; with an empty knowledge base it won't respond even if quota remains.
BYOK bypasses the AI-resolution quota. Workspaces with "bring your own AI key" enabled (available on Growth, default on Scale/Enterprise) are always allowed to answer.
Message-history retention#
Plans cap how far back conversation history is shown: 7 days (Free), 180 days (Starter), unlimited (Growth and above). Older messages are simply not shown — they aren't deleted and there's no error; raising your plan reveals them again.
Overrides & comps#
For partner, comped, or special accounts, Chatasist can apply per-workspace overrides to individual limits or mark a workspace as comped — independent of the base plan. Contact support to arrange this.
Checkout, the billing API, and provisioning.

