← All articles

Drizzle ORM vs Prisma: the choice we make on new projects

22 October 20242 min read

Prisma stays the default, Drizzle has gained ground. When we pick which in 2024.

Prisma has been our default ORM for years. In the last 12 months Drizzle grew enough to be a serious option. Here is how we choose on new projects.

Prisma

Strengths:

  • Declarative schema (schema.prisma) as readable as DBML.
  • Automatic, robust migration generator.
  • Studio: visual data explorer.
  • Huge ecosystem: answers everywhere.

Limits:

  • A Rust binary engine dep, not always 100% edge-runtime compatible.
  • Heavy bundle for cold Lambdas.
  • Complex rich-typed queries can get verbose.

Drizzle

Strengths:

  • Pure TypeScript schema: types are the source of truth.
  • SQL-builder: queries close to native SQL, ideal for SQL-thinkers.
  • No binary engine: runs on edge runtime (Vercel Edge, Cloudflare Workers) cleanly.
  • Minimal bundle.

Limits:

  • Migration tool (drizzle-kit) matured but less robust than Prisma on complex scenarios.
  • No integrated Studio — great third-party tools (Drizzle Studio, TablePlus).
  • Younger ecosystem: fewer articles, fewer SO answers.

How we choose

CasePick
Standard Next.js app, mid teamPrisma
Edge-runtime-native app (Cloudflare, Vercel Edge)Drizzle
Workers/Lambda cold start, latency criticalDrizzle
Team living in SQL, complex queriesDrizzle
Fast onboarding, visual toolingPrisma

Current stance

For 70% of our projects, Prisma. For edge-native SaaS apps, Drizzle. No loser — two different picks for two different needs.