Reach an ai usage limit

When a monthly AI limit is reached, the AI stops at that layer in a defined way: Auto Reply hands conversations to humans, Copilot is disabled for the affected operator, indexing waits and the sandbox is refused. No customer is left without an answer.

When this happens: Recorded usage for a layer reaches that layer's limit, or a call's estimated price no longer fits in the remaining amount.

Step by step

  1. 1

    Pick up the conversation with its complete history.

    The Auto Reply budget of USD 100 is reached on the 18th. The 50 %, 80 % and 100 % warnings have already been sent to ManageBudgets holders; the 100 % notification names the layer and says it resets on the 1st. EasyCRM sends a message on a conversation the AI holds. The AiGate checks the limits before any model call and closes with reason UsageLimitReached. Hands the conversation over: Unassigned, AssignmentHistory (AiHandover, UsageLimitReached), routed per FR-24. EasyCRM sends the short handover acknowledgement (a static text, no model call), Ai, with disclosure per the setting. The fallback message is not used. EasyCRM records the refusal in AiInteractionLog with the layer. A new customer writes on another conversation. The gate is closed; the conversation is routed to humans as if Auto Reply were off.

Other paths

Channel cap reached

If only the WhatsApp connection's cap is reached. Steps 3 – 8 happen for WhatsApp conversations only; the other connections keep running until their own limit.

Copilot user budget reached

An operator's Copilot budget reaches 100 % (the operator was notified at 80 %). Open a conversation. Suggest, Regenerate and Improve wording are disabled for this operator with Monthly AI limit reached — ask your Admin. A request made anyway is refused with EasyCrm:Ai:UsageLimitReached (UserBudget, resetsAt). Sending, existing drafts and every other Inbox function are unaffected; other operators keep their Copilot. If the company total or the plan cap is what was reached, the same applies to every operator, with layer CompanyTotal or PlanCap.

Knowledge and testing pools

When a limit covering the Knowledge pool is reached, a source being created or edited stays Pending with Paused: monthly AI limit reached; sources already indexed keep serving retrieval. Indexing resumes when a limit is raised or the month resets. Runs the sandbox or a test set while a limit covering Testing is reached. Refuses it with EasyCrm:Ai:UsageLimitReached and the same message.

The admin raises the budget and auto reply resumes

Receives the 100 % notification and opens Usage & budgets; raises the Auto Reply budget from USD 100 to USD 150. Takes effect at once. The next customer message on an AI-held or new conversation passes the gate and is answered; conversations already handed over stay with humans until returned to the AI.

Month resets

On the 1st at 00:00 in the company time zone, the new month starts with no usage; gates closed by a limit reopen, and paused indexing resumes.

If something goes wrong

Calls in flight

Calls already running when the limit is reached are completed and recorded; the layer may be exceeded by at most those calls.

Acknowledgement send fails

If the channel rejects the acknowledgement (for example the window is closed), the handover still proceeds and the failed message is visible and resendable like any failed send (FR-25).

Good to know

  • Before each AI call every layer that applies is checked against the estimated price of the call.
  • At 100 % of an Auto Reply layer the gate closes with UsageLimitReached; the customer gets the acknowledgement, never the fallback message and never silence.
  • Copilot is disabled per user; sending is never affected.
  • Indexing waits as Pending and resumes by itself.
  • Raising a limit takes effect at once.
  • The refusal error EasyCrm:Ai:UsageLimitReached carries the layer and the reset time.