Limits & errors

Every error is JSON with a stable code; limits exist per IP, per request, and per plan.

Error shape

{ "error": { "code": "rate_limited", "message": "…" } }
StatusCodeMeaning
400invalid_requestMalformed query, body, or parameter.
401unauthorized / invalid_credentials / invalid_grantMissing or bad token; wrong project; used refresh token.
403forbiddenRow-Level Security or role denied the operation.
404not_foundUnknown table, object, or project.
409conflict / email_takenUnique/foreign-key violation; bucket not empty.
413too_largeUpload over 50 MiB; realtime payload over 64 KiB.
422quota_exceededPlan storage quota would be exceeded.
429rate_limited / quota_exceeded / egress_exceededPer-IP rate limit; the project's request allowance; or its monthly egress allowance (on reads/downloads).
504timeoutStatement hit the 10-second timeout.

Per-IP rate limits

OperationLimit / minute
Auth signup5
Auth token (login/refresh)10
Storage uploads60
WebSocket connections60
Public/anon REST requests300
Realtime HTTP publishes600

Plan quotas

QuotaStarterProBusinessEnterprise
Projects per organization220100Custom
Data API requests / day50,0001,000,0005,000,000Custom
Storage per project100 MiB10 GiB100 GiBCustom
Realtime connections per project505002,000Custom
Egress per month5 GiB250 GiB2 TiBCustom
KV keys per project10,0001,000,00010,000,000Custom
KV storage per project10 MiB256 MiB2 GiBCustom

The daily request count is an anti-abuse ceiling; each plan also has a monthly request and egress allowance. Egress is the volume of response bytes sent to clients — REST reads and storage downloads, including public-bucket images. Once the monthly egress allowance is spent, reads and downloads are refused with 429 egress_exceeded while writes are never blocked; the dashboard warns at 80%. Paid plans can add prepaid request packs, and each pack lifts both the request and the egress allowance — buying one restores service immediately.

Plans scale from Starter to Enterprise; contact sales to get set up with the right fit for your workload. Daily request counts reset at midnight UTC.

Request limits

LimitValue
Rows per REST response1000 (limit parameter)
SQL statement timeout10 seconds
Storage object size50 MiB
Realtime message size64 KiB
KV value size256 KiB
KV key length512 bytes