Limits & Timeouts

Reference for function size limits, payload caps, timeout options, and runtime restrictions.

Timeout options

Set the timeout when deploying a function. If the function exceeds the limit, execution is terminated and the result is logged as timeout.

5s (Standard)5000ms

Default. Suitable for most functions — quick DB lookups, email sends, simple API calls.

10s (Extended)10000ms

For operations that take a little longer — processing queues, multi-step API calls.

30s (Long-running)30000ms

For heavy processing — data exports, batch operations, large file processing.

Timeout on triggers

Trigger executions that timeout are treated as failures and enter the retry queue. If your function consistently times out, increase the timeout or optimize the function logic.

Size and payload limits

Function code size1 MBMaximum size of the TypeScript code deployed to a function.
HTTP invoke payload1 MBMaximum request body size for HTTP invocations. Returns 413 if exceeded.
Retry queue payload512 KBMaximum payload size that can be stored in the retry queue for failed triggers. Oversized payloads go directly to DLQ.
Secret name length64 charsMaximum length of a secret name.
Secret value size64 KBMaximum size of a single secret value.

Runtime restrictions

Functions run on Deno 2.7.7 in an isolated subprocess with the following restrictions:

--deny-readNo access to the host file system. Cannot read local files.
--deny-writeNo access to the host file system. Cannot write local files.
--allow-netFull outbound network access. External API calls are permitted.
--allow-envEnvironment variable access for injected secrets.

Retry system limits

Max retries5Maximum number of automatic retries per failed trigger execution.
Retry backoff1/2/4/8/16 minExponential backoff schedule between retry attempts.
Worker interval30 secondsHow often the retry worker polls for due retries.
DLQ auto-refresh15 secondsHow often the dashboard Dead Letters tab auto-refreshes.