Billing & limits
What a Mangrove run costs, what a spent balance blocks, and every limit a run works within.
What a run costs
A run consumes API credits from the account whose key created it, priced as the sum of what the run actually uses:
- Reasoning — every chat completion Mangrove makes, including the run's
final check, is billed per input and output token. Mangrove reasons with
glm-5.3. - Image analysis — a
visionstep is a completion of its own, billed at the rate formistral-small-3.2-24b-instruct-2506. - Task grading — before it starts, a run can be graded on how hard the task is and how much work it is: one Metis decision for both.
- Getting a question-only run ready — a run with no
documentUrloraudioUrlfirst works out what kind of task it is, and one graded as more than a single step also writes a plan before it starts. Each is a completion billed at the rate formistral-small-3.2-24b-instruct-2506. - Transcription — the
audio_transcribestep is billed per second of audio at the speech-to-text rates. - Tool calls —
web_search,web_crawl,document_parse,save_data, andsave_filecarry no charge of their own.
All model rates are on the pricing page.
What this means in practice:
- Cost varies per run. Mangrove decides how many steps a task needs, so
two runs with the same question can cost different amounts, and a run's
cost is unknown when it is accepted — the
X-Credits-Remainingheader on the202response reflects the balance before the run, not the run's cost. - A spent balance rejects new runs, not reads.
POST /v1/agents/runsreturns402 Payment Requiredwhen the balance is zero or below. Polling and streaming existing runs keep working, so an outcome already paid for stays readable. - Interrupted work is not refunded. A run that fails partway has consumed credits for the steps it completed. The events it emitted before failing stay readable.
- A follow-up pays for whatever it repeats. Runs are not resumable and
carry no history (One run, one exchange), so a
second run that redoes the first one's searches, transcription, or document
parsing is billed for that work again. Two ways to keep it down: supply the
inputs Mangrove needs up front, and quote the finding you want built on
rather than leaving Mangrove to rediscover it. Answering an
awaiting_inputrun is this same case — the new run repeats every step that led up to the question. - Organisation members. Accounts covered by an organisation subscription are metered for the organisation instead of drawing on personal API credits.
Limits
| What | Limit |
|---|---|
| Tool-calling rounds in a run | 20 |
| Output per completion Mangrove makes | 4096 tokens |
| How long a run stays readable | 24 hours after creation |
| Uploaded image | 10 MB |
| Uploaded recording | 250 MB |
| Uploaded document | 50 MB |
| A file Mangrove saves | 1 MB of text |
| A value Mangrove remembers | 10,000 characters |
| Requests | 600 per 5-minute window per account, across every GreenPT endpoint |
A run that reaches the 20-round cap stops calling tools and answers with what
it has by then. It reports succeeded like any other run, and nothing in the
stream marks the difference — a task that needed more work than that comes
back with a thinner answer rather than an error. Supplying the inputs up
front, or splitting the task into narrower questions, keeps a run well inside
the cap.