Let's say I own the domain saas.com and want to build a SaaS product. The idea is that users log into a dashboard, customize options (like contact details), and click "Create My Website" to deploy a site to their own domain. The website is the same for every user, except for personalized details like contact info. In fact, 90% of the content of the site IS in fact their personal details. The only thing that'll be the same across all of them is the booking form.
I'm building this with Next.js and using Vercel for deployment. The problem is, I don’t want to create a new Vercel project for every user’s domain because that would be too expensive. I’m looking for a way to deploy all users’ sites without paying for separate Vercel projects, and I specifically want to avoid using subdomains (e.g., usersite.mysaasapp.com). Each user will already have their own domain.
For the backend, I'm using Postgres, Auth0 for authentication, and Cloudflare R2 for file storage. The dashboard and all user domains will retrieve data from the same database. The dashboard will also show live updates, like when a user’s visitor makes a booking.
My main goal is to save money on deployment. Any suggestions?