PlanetScale is a serverless MySQL database built on Vitess, the sharding layer that powered YouTube's scale. The Hobby tier is free forever (for now), and the real differentiator is database branching: create a schema branch like you'd branch code, test changes in isolation, then merge with zero downtime and no table locks. If your deployment process revolves around "how do we avoid locking tables during migrations," PlanetScale has already solved that.
Who PlanetScale Suits
Teams running MySQL workloads that ship schema changes regularly. If your current process involves maintenance windows, emergency rollbacks, or coordinating with your database team before touching the schema, PlanetScale eliminates that friction. It works well for early-stage startups that want serverless scale without managing infrastructure, and for teams using Prisma or Drizzle who want migrations to feel like part of the normal development flow. The Hobby plan supports single production databases up to 5 GB, so it's viable for hobby projects and small MVPs.
Where It Falls Short
Foreign key constraints are not enforced by the database (a Vitess limitation), so referential integrity is your responsibility. You'll enforce it in code or via your ORM, which adds complexity. PlanetScale is a database and nothing else: no auth, no file storage, no edge functions. If you need a complete backend platform, you're building the rest yourself or reaching for Supabase. The free Hobby tier has been removed and restored before, so its long-term future is uncertain if PlanetScale's business model shifts. Write-heavy workloads become expensive quickly once you exceed the included row write limits on paid plans.
Alternatives Worth Considering
Supabase bundles PostgreSQL with built-in auth, file storage, and real-time listeners, making it a full platform rather than just a database. Neon offers PostgreSQL branching (no table locks during migrations either) and sits at a similar price point for comparable workloads. Both enforce foreign keys natively, which matters if you want database-level data integrity.