drizzle-orm vs typeorm
drizzle-orm is downloaded 2.2× more often than typeorm (39,472,031 vs 18,073,696 per month), so it has the larger community and more answered questions online. drizzle-orm ships 94% less gzipped JavaScript (8.4 kB vs 146.6 kB), which matters if bundle size is a priority. Both projects are actively maintained.
| Metric | drizzle-orm | typeorm |
|---|---|---|
| Weekly downloads | 9,868,411✓ | 4,208,495 |
| Monthly downloads | 39,472,031✓ | 18,073,696 |
| GitHub stars | 34,626 | 36,520✓ |
| Minified size | 27.3 kB✓ | 692.3 kB |
| Minified + gzipped | 8.4 kB✓ | 146.6 kB |
| Dependencies | 0✓ | 10 |
| Open issues | 1,818 | 546✓ |
| Last commit | 2026-06-01✓ | 2026-05-28 |
| Latest version | 0.45.2 | 1.0.0 |
| License | Apache-2.0 | MIT |
When to choose which
drizzle-orm
Type-safe, SQL-like ORM with a tiny runtime.
Choose it when: Type-safe SQL with minimal abstraction and no codegen — great for serverless/edge where bundle size and cold starts matter.
- + Fully type-safe, no codegen
- + SQL-like & tiny
- + Edge/serverless friendly
- - Younger ecosystem
- - You work closer to raw SQL
typeorm
Decorator-based ORM, popular with NestJS.
Choose it when: Decorator/entity style (e.g. NestJS apps) where you want both Active Record and Data Mapper patterns.
- + Decorator entities
- + NestJS-friendly
- + Active Record + Data Mapper
- - Uneven maintenance history
- - Runtime/type edge cases
Feature comparison
| Feature | drizzle-orm | typeorm |
|---|---|---|
| Approach | ORM / query builder | ORM |
| Type safety | Inferred (no codegen) | Decorators |
| Built-in migrations | ✓ Yes | ✓ Yes |
| Databases | PostgreSQL / MySQL / SQLite | SQL + MongoDB |
| Pattern | SQL-like functional | Active Record / Data Mapper |
Related comparisons
Embed this comparison
A live badge for your README — it updates as the numbers change.
[](https://devcompare.dev/compare/drizzle-orm-vs-typeorm)Data from npm, Bundlephobia and GitHub. Last updated 2026-06-02.