Tinybird has limits on certain operations and processes to ensure the highest performance.

Workspace limits

Description Limit
Number of WorkspacesDefault 90 (soft limit; ask to increase)
Number of seatsDefault 90 (soft limit; ask to increase)
Number of Data SourcesDefault 100 (soft limit; ask to increase)
Number of Tokens100,000 (soft limit; ask to increase)
Number of secrets100

See Rate limits for JWTs for more detail specifically on JWT limits.

Ingestion limits

Description Limit
Data Source max columns2,048
Full body upload8MB
Multipart upload - CSV and NDJSON500MB
Multipart upload - Parquet50MB
Max file size - Parquet1GB
Max file size (uncompressed) - Build plan10GB
Max file size (uncompressed) - Pro or Enterprise plan32GB
Kafka topicsDefault 5 (soft limit; ask to increase)
Max parts created at once - NDJSON/Parquet jobs and Events API12

Ingestion limits (API)

Tinybird throttles requests based on the capacity. So if your queries are using 100% resources you might not be able to run more queries until the running ones finish.

DescriptionLimit and time window
Request size - Events API10MB
Response size100MB
Create Data Source from schema25 times per minute
Create Data Source from file or URL*5 times per minute
Append data to Data Source*5 times per minute
Append data to Data Source using v0/events1,000 times per second
Replace data in a Data Source*5 times per minute

*Note that the quota for "Create Data Source from file or URL", "Append to Data Source", and "Replace data in Data Source" is shared. That is, you cannot do 5 requests of each type per minute, for a total of 15 requests. You can do at most a grand total of 5 requests of those types combined.

If you exceed your rate limit, your request will be throttled and you will receive HTTP 429 Too Many Requests response codes from the API. Each response contains a set of HTTP headers with your current rate limit status.

Header NameDescription
X-RateLimit-LimitThe maximum number of requests you're permitted to make in the current limit window.
X-RateLimit-RemainingThe number of requests remaining in the current rate limit window.
X-RateLimit-ResetThe time in seconds after the current rate limit window resets.
Retry-AfterThe time to wait before making a another request. Only present on 429 responses.

Snowflake & BigQuery Connector limits

The import jobs are run in a pool, with capacity for up to 2 concurrent jobs. If more scheduled jobs overlap, they are queued.

DescriptionLimit and time window
Maximum frequency for the scheduled jobs5 minutes
Maximum rows per append or replace (exports that exceed this number of rows will be truncated to this amount)50 million rows

Query limits

Description Limit
SQL length8KB
Result length100MB
Query execution time10s

Publishing limits

Materialized Views limits

No numerical limits, certain operations are inadvisable when using Materialized Views.

Sink limits

Sink Pipes have the following limits, depending on your billing plan:

PlanSink Pipes per WorkspaceExecution timeFrequencyMemory usage per queryActive jobs (running or queued)
Pro330sUp to every 10 min10 GB3
Enterprise10300sUp to every minute10 GB6

Copy Pipe limits

Copy Pipes have the following limits, depending on your billing plan:

PlanCopy Pipes per WorkspaceExecution timeFrequencyActive jobs (running or queued)
Build120sOnce an hour1
Pro330sUp to every 10 minutes3
Enterprise1050% of the scheduling period, 30 minutes maxUp to every minute6

Next steps