# Limits of Scava - plans, apps, data, files and server code

This page lists the limits that people can meet while building and using apps. The numbers on this page come straight from the live settings of Scava, so they are always the current ones. Plans are Starter, Team and Business.

## Plans

| | Starter | Team | Business |
|---|---|---|---|
| Apps per account | 2 | 5 | 10 |
| Different people who open one app, besides the owner | 10 | 50 | 200 |
| Storage per account, for files and entries of all apps | 10 GB | 50 GB | 250 GB |
| Own address for apps (`tools.company.com`) | no | yes | yes |
| Server code | yes | yes | yes |

- People who only open apps never pay. They do not need a plan.
- Storage counts the files of every app (each file once per app, however many versions), all entries and all uploaded files.
- People who already opened an app keep their access when a plan gets smaller. If the plan of the owner ends, nobody else can open the owner's apps until a plan is active again. New apps cannot be created without a plan.
- If a plan gets smaller, the apps that exist stay. New ones can be created only when there is room.

## An app

| What | Limit |
|---|---|
| Size of one version | 10 MB |
| Files per version | 2,000 |
| Shares per app (a domain or group counts as one) | 200 |
| Co-editors per app | 20 |

## Entries (`scava.db`)

| What | Limit |
|---|---|
| Size of one entry | 64 KB |
| Entries per app | 1,000,000 |
| Data per app | 2 GB |
| Collection name | Letters, digits, `-` and `_`, up to 40 characters |

## Files (`scava.files`)

| What | Limit |
|---|---|
| Size of one file | 25 MB |
| Files per app | 100,000 |
| Bytes of uploaded files per app | 50 GB |

## Rates for normal use

| What | Limit |
|---|---|
| Changes per person and app (entries and files) | 300 in 10 minutes |
| Exports of the data of an app | 10 per app and hour |

Limits against abuse exist besides these. Normal use never reaches them. When one is reached, the request is refused with a message and Scava is warned.

## Groups

| What | Limit |
|---|---|
| Groups per account | 100 |
| Members per group | 1,000 |
| Names | Lowercase letters, digits, `-` and `_`, up to 40 characters |

## Server code

These limits are per account and month, for all apps of the owner together, unless the line says per call or per app. At 80 percent and at 100 percent the owner gets an email. At 100 percent of calls or compute time the server part of the apps pauses until the month ends. At 100 percent of emails the apps cannot send more, and at 100 percent of heavy work no more runs start. Pages and data keep working.

| | Starter | Team | Business |
|---|---|---|---|
| Calls of server code per month | 200,000 | 2,000,000 | 10,000,000 |
| Compute time per month | 60 min | 600 min | 3,000 min |
| Compute time per call | 1,000 ms | 5,000 ms | 30,000 ms |
| Calls to outside services per request | 50 | 100 | 500 |
| Schedules per app | 5 | 20 | 50 |
| Shortest interval of a schedule | 15 min | 5 min | 1 min |
| Webhooks per app | 5 | 20 | 50 |
| Emails sent by apps per month | 500 | 3,000 | 10,000 |
| `ai()` calls per app and day | 500 | 2,000 | 10,000 |
| Heavy work per month | 300 min | 1,500 min | 6,000 min |
| Longest heavy run | 120 s | 600 s | 1,800 s |

Other server code limits:

| What | Limit |
|---|---|
| Memory of server code | 128 MB per call |
| Addresses in one `env.SCAVA.mail()` call | 50 |
| Script, input and output of one heavy run | 20 MB |
| Heavy runs at the same time | 2 per account |

## What happens at a limit

- A write beyond a size limit or the storage fails with a message that says which limit.
- A rate limit answers with a message to try again later.
- A monthly limit of server code stops what it covers until the month ends (the server part, sending email or heavy work) and sends the owner an email.
- Publishing a version beyond the limits of the plan, for example more schedules than allowed, is refused with the reason.
