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

# Limits

> The sizes, counts and rates the runtime enforces on scripts.

The runtime enforces these sizes, counts and rates on scripts. The last column
says where each one applies or what happens at the limit.
Limits for a single call, such as `rb.system.exec` output or the HTTP timeout,
are on that call's page.

| Limit | Value | Where it applies |
| - | - | - |
| Luau heap | 8 MB, or `memory_limit_mb` | per script; exceeding it raises a memory error |
| Execution budget | 20,000,000 calls, returns and loop iterations per entry into the script, with a 10 second ceiling | raises `script execution budget exceeded (possible infinite loop)` or `(blocked too long)` |
| Sustained tick time | a smoothed average above 50 ms for 5 ticks in a row | stops the script with `Script terminated: runaway tick time (<n>ms avg)`; move heavy work into `rb.run` with `rb.sleep` between steps |
| `tick_rate` | 1 to 8,000 | modeline |
| Streamed macro delay or hold | up to 1,000,000,000 ms | outside it, `play` falls back to the host and `stream` raises |
| Streamed macro move or scroll step | up to 1,000,000 | same |
| Streamed macro speed | 0.001 to 1,000 | `play` only |
| Host macro scroll step | -127 to 127 | clamped |
| `rb.math.humanize`, `rb.math.glide` | 10 minutes of mouse movement per call | longer input raises |
| `rb.ai` image | long edge 1,024 or 768 px within 1,500,000 bytes; each side padded to at least 280 px; a JPEG for `rb.ai.decide`, a PNG for `rb.ai.find` and `rb.ai.read` | the JPEG for `rb.ai.decide` needs `min_sdk=3.22.0` |
| `rb.ai.decide` `state` | 32,000 characters as JSON; tables nested 32 deep | |
| Server dispatch | serviced every 8th engine tick. Per tick, up to 32 UDP datagrams per socket and 32 HTTP requests per server share one 20 ms budget, UDP first; WebSocket events, up to 32 per server or connection, have their own 20 ms budget | the rest wait for the next tick |
| `rb.hid` hold warning | 10 s | one log line per hold |
| `rb.observe` session | 512 MB of log and images | one session at a time |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.