Skip to content
WebVoyant.
All notes
EngineeringPostgres·Apr 12, 2026·9 min read

Why we left Prisma for Drizzle in 2026

A pragmatic write-up of the migration: what broke, what got faster, and the cases where we'd still pick Prisma.

Every studio has a default stack. Ours has been Next.js, Postgres, and Prisma for three years. Earlier this quarter we moved a client's production app to Drizzle. Here's the honest version.

Prisma is excellent until your query patterns leave its happy path. Once you need real SQL — recursive CTEs, window functions, partial indexes — you end up writing `$queryRaw` and losing type safety anyway.

Drizzle inverts that trade-off. You write SQL-ish TypeScript, and what you write is what runs. There is no engine binary, no shadow database, no migration script that surprises you at 2am.

We'd still pick Prisma for a CRUD-heavy admin panel where speed of authoring matters more than raw control. For everything that has to be production-grade past a year, we'd pick Drizzle now.

Building something this touches?

We’d love to hear about it. 30 minutes, no pitch deck.