Source: https://dinakar-pageloop-knowledge-base.docs-staging.pageloop.ai/reference/limits-and-quotas

# Limits and quotas

# Limits and quotas

> [!NOTE]
>
> Limits are enforced per account, not per API key. Adding keys does not add headroom.

## Rate limits

| Operation                   | Free                   | Team                   | Enterprise             |
| --------------------------- | ---------------------- | ---------------------- | ---------------------- |
| Publish (`POST /v1/events`) | 100 / min              | 1,000 / min            | 10,000 / min           |
| Reads (`GET` endpoints)     | 120 / min              | 600 / min              | 6,000 / min            |
| Bulk replay                 | 1 / subscription / min | 1 / subscription / min | 5 / subscription / min |

All limits are sliding windows measured over 60 seconds. A throttled request returns
`429 rate_limited` with `Retry-After`.

## Sizes

| Thing                             | Limit                                        |
| --------------------------------- | -------------------------------------------- |
| Event payload (serialized)        | 256 KB                                       |
| `streamKey` length                | 128 characters                               |
| Event type length                 | 128 characters, max 3 dot-separated segments |
| Patterns per subscription         | 25                                           |
| Deliveries queued per bulk replay | 10,000                                       |

## Retention

| Plan       | Events  | Delivery logs | Replay window |
| ---------- | ------- | ------------- | ------------- |
| Free       | 7 days  | 7 days        | 7 days        |
| Team       | 30 days | 30 days       | 30 days       |
| Enterprise | 90 days | 90 days       | 90 days       |

Retention is trimmed by a nightly job at 03:00 UTC. An event may survive a few hours past
its nominal expiry; do not depend on it.

## Plan ceilings

| Thing            | Free   | Team      | Enterprise |
| ---------------- | ------ | --------- | ---------- |
| Subscriptions    | 5      | 100       | Unlimited  |
| API keys         | 3      | 50        | Unlimited  |
| Team members     | 2      | 25        | Unlimited  |
| Events per month | 10,000 | 5,000,000 | Contract   |

> [!WARNING]
>
> Disabled subscriptions still count against the subscription ceiling. Delete the ones you
> are not coming back to.

## Timeouts and retries

| Behaviour                           | Value      |
| ----------------------------------- | ---------- |
| Endpoint response timeout           | 10 seconds |
| Retry attempts after the first      | 5          |
| Backoff base / cap                  | 2s / 32s   |
| Consecutive failures before disable | 20         |
| Signature replay tolerance          | 5 minutes  |
| Secret rotation overlap             | 24 hours   |
| Idempotency key window              | 24 hours   |
| Pagination cursor lifetime          | 1 hour     |

## Requesting more

Enterprise limits are contractual. Email support with your account id, the limit you are
hitting, and your expected peak — turnaround is typically two business days.
