> ## Documentation Index
> Fetch the complete documentation index at: https://www.trybloom.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Usage Limits

> Credits, rate limits, and plan tiers for the Bloom API.

What you can do with the Bloom API is governed by two things: how many requests you can make per minute, and how many credits your workspace has.

## Rate limits

Each API key is limited to **120 requests per minute** (sliding window). Requests above that return `429 Too Many Requests` with code `TOO_MANY_REQUESTS` — back off and retry after the window resets.

If your integration sustains higher volume than that or batches generations in spikes, [contact us](mailto:support@trybloom.ai) so we can raise the ceiling for your key.

## Credits

Every image generation consumes credits from your workspace's monthly allotment.

| Image size | Cost      |
| ---------- | --------- |
| `2K`       | 1 credit  |
| `4K`       | 2 credits |

Variants multiply the cost — `variantCount: 3` at `4K` is 6 credits. Check your current balance in your [account dashboard](https://www.trybloom.ai/billing) or via [`GET /credits`](/api-reference/account/get-credit-balance). When you run out, generation requests return `HTTP 402` until you top up or your plan refreshes — the error response includes a deep link to the pricing page in `data.action_url`.

If you belong to a team, every workspace has its own balance. Pass `workspaceId` to [`GET /credits`](/api-reference/account/get-credit-balance) to read the balance on a specific workspace — your personal one (the default) or any team workspace you can access. Use [`GET /workspaces`](/api-reference/account/list-workspaces) to look up every workspace ID you can see.

### What does `402` mean?

A `402` response can mean one of two things — branch on `code`, not on the HTTP status:

* `INSUFFICIENT_CREDITS` — the workspace's balance is zero. Top up or wait for the plan to refresh.
* `PAYMENT_REQUIRED` — the **subscription is paused** (typically a failed or pending payment).

Both responses include a `data.action_url` that lets the caller purchase credits, make a payment to resume their subscription or upgrade their plan.

### Top-ups

Need more credits without changing plans? Buy a one-off top-up of **20–200 credits**. Top-up credits never expire.

## Plan tiers

| Plan      | Monthly credits |
| --------- | --------------- |
| **Plus**  | 50              |
| **Pro**   | 100             |
| **Max**   | 200             |
| **Scale** | 300–2,000       |

See [pricing](https://www.trybloom.ai/#pricing) for plan prices, annual discounts, and the full breakdown.

Bloom does not offer a typical free plan — all full plans are paid. New accounts receive **10 free credits** on account creation to try the API. API and MCP access are included in every paid plan.

### When credits renew

Plan credits refresh **monthly on your billing anniversary** — the day of the month you started (or last renewed) your subscription. Unused plan credits do not roll over. [Top-up credits](#top-ups) are separate and never expire.

You can check your current balance any time from your [account dashboard](https://www.trybloom.ai/billing).

## Need more credits?

Looking for high concurrency, batch generation in the thousands, white-label use cases — reach out at [support@trybloom.ai](mailto:support@trybloom.ai). We'll work out a custom plan for you.
