# Limits

Source: https://phonebox.dev/docs/billing/limits

> Every limit on phones, requests, batches, files, links and spending, what happens when you reach one, and how to ask for more.



## Project limits [#project-limits]

Each project has these limits:

| Limit                                                               | Default                                                     | When you reach it                     |
| ------------------------------------------------------------------- | ----------------------------------------------------------- | ------------------------------------- |
| Phones in the project, not counting deleted or failed ones          | 10                                                          | `409 phone_limit_reached`             |
| Phones running at once                                              | 2, which you can lower in Settings                          | `409 running_limit_reached`           |
| Requests                                                            | 600 a minute for each API key                               | `429 rate_limited` with `Retry-After` |
| Lifecycle requests: creates, starts and renewals, parks and deletes | 60 a minute for each project                                | `429 rate_limited` with `Retry-After` |
| Actions in one batch                                                | 20, with at most 60 seconds of waiting in all               | `400 validation_failed`               |
| File uploads and downloads                                          | 4 MB, which is 4,000,000 bytes                              | `413 payload_too_large`               |
| An APK [upload](/docs/api-reference/uploads)                        | 524,288,000 bytes (500 MiB), sent within 2 minutes          | The upload ends as `too_large`        |
| Uploads a project holds, `processing` or `ready`                    | 524,288,000 bytes (500 MiB)                                 | `409 storage_limit_reached`           |
| New uploads                                                         | 50 a day for each project, in UTC days                      | `429 rate_limited` with `Retry-After` |
| Live link lifetime                                                  | 60 seconds to 24 hours, 1 hour by default                   | `400 validation_failed`               |
| Monthly spending                                                    | $100, which you change in Settings. $0 pauses new spending. | `402 spend_limit_reached`             |

* A failed phone holds no device, so it doesn't count toward the phone limit. Neither does a deleted one.
* A phone counts as running while it is `creating`, `starting` or `ready`.
* The running limit counts all of your projects together, so a second project doesn't add to it. To run more phones at once, email [team@phonebox.dev](mailto:team@phonebox.dev).
* Phonebox counts the request limit on each of its servers, so treat 600 as approximate. The lifecycle limit is exact, and a replayed create with the same `Idempotency-Key` doesn't count toward it.
* `GET /v1/account` shows the project's phone and running limits, and how many phones it has and runs.

Across all projects, Phonebox can run only so many phones at once. When none are free, a create or a start fails with `503 capacity_unavailable`. When it is retryable, send the same request again after its `Retry-After`: a refused create made no phone, and a start whose phone parked again starts the same phone again. When a few tries in a row are refused, stop and try again later. When it isn't retryable, a new phone has failed, so its `status` is `failed`: create another one with a new key.

## Other limits [#other-limits]

| What                                     | Limit                                                              |
| ---------------------------------------- | ------------------------------------------------------------------ |
| Projects per account                     | 10                                                                 |
| Active API keys per project              | 50                                                                 |
| Phones a limited key may use             | 1 to 20                                                            |
| `idle_timeout`                           | 60 to 3600 seconds, 300 by default                                 |
| `max_duration`                           | 60 to 10800 seconds, 900 by default                                |
| Phone name                               | 80 characters                                                      |
| Metadata                                 | 20 pairs, with keys of up to 40 characters and values of up to 256 |
| JSON request body                        | 100 KB, or 200 KB for an action batch                              |
| A long poll's `timeout`                  | 55 seconds, 50 by default                                          |
| A list page                              | 100 items, 50 by default                                           |
| Reboots                                  | 1 every 10 minutes for each phone                                  |
| Text in one `type` action                | 5,000 characters                                                   |
| One `wait` action                        | 10 seconds                                                         |
| One `wait_for` action                    | 30 seconds, 10 by default                                          |
| A batch's running time                   | No new action starts after 90 seconds.                             |
| Clipboard text                           | 10,000 characters                                                  |
| Elements in one observation              | 250                                                                |
| A screenshot's `max_width`               | 160 to 2000 pixels                                                 |
| A screenshot, or an observation with one | Under 4 MB                                                         |
| Snapshots, for acting by `ref`           | 15 minutes                                                         |
| An `Idempotency-Key`                     | Remembered for 24 hours                                            |
| Activity records                         | Kept for 30 days                                                   |

## Ask for more [#ask-for-more]

To keep more phones in a project, or to run more at once, email [team@phonebox.dev](mailto:team@phonebox.dev). Include your project ID, which the console's Settings page shows, how many phones you need, and what your agents do with them. The spending limit is yours to change in Settings at any time.
