Skip to content
Open beta — everything’s free right now, and your rate is locked when it ends.

Every limit in Tabla, in one honest table

All of it: file sizes, import ceilings, API rates, invitation caps, the million-record ceiling and the sanity caps behind it. Which numbers you might actually meet, which exist so nobody can break the box, and what has no limit at all.

Updated August 2026

Two kinds of numbers live on this page. Working limits you could meet in ordinary use — file sizes, batch sizes, rates. Sanity caps exist so that no script, stuck loop or hostile actor can degrade the service for everyone else; they sit far above legitimate use, and no meter anywhere shows you creeping toward one. Tabla doesn't do usage meters. Hitting any ceiling is a plain error naming the number, not an upgrade prompt.

Everything, in one place:

Limit Value
One attachment file 100 MB
Attachment storage 100 GB per account, across all its databases
Profile photo 5 MB
Import, CSV or TSV no limit — bounded only by the database's 1,000,000 records
Import, an Airtable base no limit — bounded by the same 1,000,000
Import, Excel, one run 20 MB file · 50,000 rows
Records per API write batch 100 — all-or-nothing
page_size on an API read up to 1,000 (default 100)
API requests, per key 600 a minute
API requests, no key 60 a minute per address
Attachment uploads 60 a minute per account
Invitation emails 20 an hour per sender
Records per database 1,000,000 — counted across all its tables
Records per account 2,000,000 — across all its databases
Databases per account 10
Tables per database 200
Tables per account 300
Fields per table 500
Choices in one select field 1,000
Trash retention deleted records and tables restorable for 7 days

Notes on the ones that repay a second look:

  • The million records is the one structural ceiling the site advertises, and it's identical on every plan, free included — a promise about capacity, not a meter that prices you. Live records only: the trash doesn't count against it. At the ceiling, writes refuse with the arithmetic spelled out and nothing half-written.
  • File storage is 100 GB per account today, for everyone — counted across every database the account owns, not per database. That's the enforced number in the running product. Files uploaded by someone you invited count against you, because the database is yours. Nothing already stored is ever touched by this: an account over the line keeps every file and simply can't add more until it's under. The published plans price storage differently for later — 5 GB of files on Solo, 100 GB on Team, per the pricing page — but no per-plan storage gate exists during the beta; see free and beta.
  • Rates are sliding windows, not monthly meters. 600 requests a minute per key, every minute, forever — there is no monthly API call cap to budget against. Over the line is a 429 with Retry-After in whole seconds; sleep it and continue. The wire-level detail, with real error bodies, is API errors and limits.
  • Databases, tables, fields and select choices are the sanity caps, and they come in two shapes: what one database may hold, and what one account may hold across all of them. Both matter because every Tabla table is a real Postgres table — ten databases of two hundred tables each would be two thousand of them, which bloats the catalog and the nightly backup for every tenant on the box, not just for whoever made them. Nobody reaches these by using a database. If a legitimate need ever hits one, the error says to contact support, and that's meant literally — the per-account ceilings can be raised for your account on request, without waiting for a release.
  • A CSV has no import ceiling, and neither does an Airtable base. The browser reads a CSV and streams its rows in batches; the Airtable importer pages a base straight into the database a hundred records at a time. Neither meets a row cap of its own — the million records per database is the only line. The Excel ceiling above is per run, not total — 50,000 rows at a time, as many runs as you need — see import a spreadsheet.

What has no limit

Worth stating as plainly as the table:

  • No monthly cap on API calls or webhook deliveries. Per-minute rates above are the only throttle; nothing counts your month.
  • No cap on members or viewers in a database — only invitation sends are rate-limited, because each is a real email.
  • No time limit. Nothing about a free database expires, quits at a row count, or starts nagging.
  • No per-plan differences. During the beta, nothing anywhere in the product checks what plan you're on — there's nothing to check.

Whole-database export is likewise unmetered. The zip inlines attachment bytes up to the same 100 GB that bounds storage itself, so an account inside its limits gets every file. Past it, files go in oldest first until the budget is spent and the rest are listed in attachments.csv with their metadata rather than their bytes, with the README inside naming how many stayed behind.

Tabla is the database we build these on.

A no-code database with real Postgres underneath: every feature on every plan, a million records per database, and your whole database back out in one file, any day.

More guides