---
title: Limits
description: Every numeric cap on the platform in one table -- email, device login, sherpage bundles, sherserve uploads, the unlock flow, and sherbase's SQL and pooler limits.
---

# Limits

One lookup table for every limit documented elsewhere on this site.
Each row links back to the page that's the source of truth for it.

| Limit | Value | Page |
| --- | --- | --- |
| Email sends | 10 per account per rolling 24 hours, master-key only | [rate limits and quotas](/concepts/rate-limits-and-quotas) |
| Device-login poll interval | Starts at 3 seconds, grows on `slow_down`, capped at 30 seconds | [rate limits and quotas](/concepts/rate-limits-and-quotas), [device login](/getting-started/device-flow-login) |
| Device code lifetime | 10 minutes (`expires_in: 600`) | [device login](/getting-started/device-flow-login) |
| sherpage bundle: files per bundle | 100 | [publishing](/sherpage/publishing) |
| sherpage bundle: size per file | 10 MB | [publishing](/sherpage/publishing) |
| sherpage bundle: total bundle size | 50 MB | [publishing](/sherpage/publishing) |
| sherserve upload: reverse-proxy body cap | 520 MB | [content types and limits](/sherserve/content-types-and-limits) |
| sherserve upload: per-object cap | 500 MB | [content types and limits](/sherserve/content-types-and-limits) |
| Unlock cookie lifetime (password-gated pages/files) | 12 hours | [unlock flow](/sherserve/unlock-flow) |
| Unlock password-guess rate limit | 10 attempts per 15 minutes per resource | [unlock flow](/sherserve/unlock-flow) |
| `base_run_sql`: statements per call | 1 (multi-statement bodies rejected) | [sherbase limits](/sherbase/limits) |
| `base_run_sql`: SQL text length | 100,000 characters | [sherbase limits](/sherbase/limits) |
| `base_run_sql`: statement timeout | 5 seconds | [sherbase limits](/sherbase/limits) |
| Transaction-mode pooler (port 6543) | No prepared statements — use the session-mode pooler (port 5432) instead | [sherbase limits](/sherbase/limits), [connection strings](/sherbase/connection-strings) |

## Next

[Error codes](/reference/error-codes) — what exceeding one of these
looks like on the wire.
