Limits

Last updated 29 October 2026

View .md

Check these when you plan how many streams to create and how fast to write and read them: what one account, one stream, one append and one read can take.

Limits

LimitValue
Account
Streams per account10000, counted apart from the account’s databases. For more, write to sales@tonbo.io. A stream counts from its creation until its deletion completes, so a stream being deleted, or expired and not yet deleted, still counts.
RequestsAt least 50 per second for each account in each region, shared by its streams and databases (see What “at least” means). A 429 carries Retry-After.
Open tailsAt least 16 long-polls and SSE reads at once for each account in each region, shared with its databases (see What “at least” means).
Stream
Name1 to 83 lowercase letters, digits, dots, underscores and hyphens, starting and ending with a letter or digit, without .., not starting with m., vol., s., session. or proc. and not streams or new. It is unique among the account’s streams and cannot be changed.
Content typeFixed at creation: one lowercase media type such as application/json, type/subtype without parameters, at most 127 bytes, not under application/vnd.ursula.
ExpiryAt least 60 seconds after the creation, and fixed. The stream is deleted within a minute after it passes.
ProducersUp to 4,096 per stream. A producer that has not appended for 7 days is forgotten.
Append
One request body8 MiB. A larger append answers 413, so split it into several.
Read
One read answer8 MiB. A longer read stops short; read on from its Stream-Next-Offset.
One long-polltimeout_ms of at most 60,000; 1,000 when omitted.
One cacheable chunkUp to the next 4 MiB boundary of the stream.

What “at least” means

Each region serves an account through two gateways, and each counts the account’s requests and open tails on its own, so 50 requests a second and 16 open tails are what an account gets for sure, and it gets more when its requests spread across both. Every account has these values today. For higher ones, write to sales@tonbo.io.

How much one stream can take

A stream keeps everything appended to it until you trim or delete it, and you pay for what it keeps (see Pricing). Each append carries up to 8 MiB, and every append is a request against the account’s rate in the region, which its other streams and its databases share; a JSON array appends many messages in one request (see Batch messages). The number of readers has no limit of its own: each read is a request against the same rate, and each open tail counts toward the account’s open tails, so more live viewers than that read through a server of yours that holds one tail (see Tail). A stream’s name, region and content type are set when it is created (see Create a stream).