Multi-tenancy strategies and considerations
Background
I'm developing a ticketing system, and currently I have two customers. These customers are charged based on their resource usage.
I decided to treat one customer = one Supabase project for the following reasons:
I'm facing an authentication challenge because I'm using a single frontend. Each customer’s team members will log in using their email. Since Supabase Auth is built-in and cannot be customized across projects, users can only see their own tickets after login — but the login itself is tied to a specific Supabase project.
So based on this use case, what do you think is the best approach?
Should I continue using multiple Supabase projects (one per customer), or should I switch to a single project and separate tickets by customer_id?
My concerns are performance at high data volumes and billing separation.
I'm developing a ticketing system, and currently I have two customers. These customers are charged based on their resource usage.
I decided to treat one customer = one Supabase project for the following reasons:
- Isolated resources
- Per-project billing
I'm facing an authentication challenge because I'm using a single frontend. Each customer’s team members will log in using their email. Since Supabase Auth is built-in and cannot be customized across projects, users can only see their own tickets after login — but the login itself is tied to a specific Supabase project.
So based on this use case, what do you think is the best approach?
Should I continue using multiple Supabase projects (one per customer), or should I switch to a single project and separate tickets by customer_id?
My concerns are performance at high data volumes and billing separation.