Tenant isolation is part product decision, part compliance story. Many B2B tools start with a shared schema, a `tenant_id`, and strong row-level discipline—because it is the fastest path to a coherent product.
Pattern trade-offs
- Shared schema: lowest ops cost, highest need for query discipline
- Schema-per-tenant: better noisy-neighbor control, heavier migrations
- Database-per-tenant: strongest isolation narrative, highest ops burden
What must not be improvised
Migrations must be boring at scale. Automate rollout and rollback testing. Backup and restore stories differ per pattern—design disaster recovery with your legal and sales promises in mind, not only with what is convenient for engineering this quarter.