Cheaper by the Thousand

A startup expects 20,000 small tenants, most of which send a few requests per day. It stores every tenant's records in the same tables with a tenant_id column and serves them all from one shared app tier. What is the primary tradeoff of this choice?

A

Per-tenant restore and per-tenant cost attribution become trivial, but request latency grows linearly with the number of tenants in the table

B

Encryption at rest becomes stronger, but schema migrations have to be applied once per tenant rather than once across the fleet

C

Cost and operations scale well because capacity is shared, but isolation now depends entirely on application and database correctness

D

Isolation is guaranteed by the tenant_id column itself, but each new tenant still requires provisioning a separate database instance to hold its rows