Plan credits
Every plan includes the board, flow, traces, versions, the REST API and the MCP server. Growth and Scale also include Slack support. Credits pay for processed calls, simulated and phone tests, and the copilot. The calls, tests and answers rows are each what the whole month’s credits buy if they are spent on that one thing alone, counting every call as one minute. Longer calls use more, and a month that mixes them gets a share of each. They reset each month and do not carry over. Prices are in US dollars. Agents and seats are totals. Paid plans cost less per month when billed yearly, and the yearly bill is charged once.
A paid workspace’s credits reset at the start of each billing period, every month, annual plans included. Unused credits do not carry over. Free has no credits. Plan and usage under Settings shows the balance against its limit.
Plan limit errors
A request that the credits do not cover is refused with HTTP 402 and the codequota_exceeded. The API and the MCP server return the same fields as the app, in the API’s error object. error.quota says which limit, how much is used and which plan.
402 from POST /v1/agents/{agentId}/runs
Tool error from start_run
Through the API and the MCP server, the limit you can reach is a run the credits do not cover. Starting a run, or calibrating from a signed-in session, draws on credits. The copilot, the brief chat and connecting agents exist in the app only, and calls past your credits wait instead of failing. In the app, the same refusal shows as a notice with See plans. On Enterprise the message ends “Contact us to raise the limit.”
Do not retry a 402
quota_exceeded as it is. Nothing changes until the month resets, you upgrade, or you start a run that needs fewer credits.
Two other 402 codes are budgets and settings, not the plan:
budget_exceeded: your key’s monthly budget or the agent’s test budget did not cover the request.testing_not_configured: testing is not set up for the agent.
API rate limits
Rate limits count requests in token buckets. A bucket holds the burst size and refills steadily at the rate, so after a quiet spell you can send a burst, then the sustained rate.
Every
/v1 response carries the tighter of the key’s buckets:
A refused request returns HTTP 429 with the code
rate_limited. A client address that has failed authentication too often gets too_many_failed_authentications instead, with or without a valid key, until its failures age out.
429
Retry-After, then retry. Treat the numbers as a guide to sustained use, not a guarantee.
Calibrating tests needs a signed-in session. Every API key is refused with 403 and the code people_only.
Import limits
These are the limits on the hosted service. They bound how much one import brings in. They are not the plan credits.
After that, new calls arrive on their own, within minutes of ending, and are not held to the import size. You can keep only a percent of them, or cap them per day, week or month, in Import settings on Agent config. How many are analysed depends on the credits left. A call that runs past them is stored and waits. The import status on Agent config says how many are waiting, such as “120 analysed, 30 waiting for next month or an upgrade.” See Connect Retell.
Copilot limits
A copilot answer uses about 20 credits, about any agent, the demo included. More lookups or a longer answer use more of them, and each quick check uses credits too. A question that needs too many lookups, a very long call or a very large lookup is cut short, and the copilot answers from what it read. Narrow the question if that happens. See Copilot overview for what the copilot reads.