Skip to content
whichdevtool?
Categories ▾

Frameworks and UI

Frontend and full-stack frameworks Backend frameworks UI component libraries

Hosting

VPS and cloud servers App hosting and PaaS

Data

Managed databases File and object storage ORMs and database toolkits

AI

AI model APIs

Email

Transactional email APIs Email marketing and newsletters

Payments

Payments and billing

Domains and edge

Domain registrars CDN, DNS and edge security

Operations and identity

Monitoring, uptime and error tracking Auth and identity Background jobs, queues and workflows
Stacks Directory
Ctrl K

Search directory
Menu
StacksDirectory Pricing changes Glossary
VPS and cloud servers App hosting and PaaS Managed databases Transactional email APIs Email marketing and newsletters Domain registrars CDN, DNS and edge security Monitoring, uptime and error tracking Auth and identity Frontend and full-stack frameworks Backend frameworks UI component libraries AI model APIs File and object storage Payments and billing Background jobs, queues and workflows ORMs and database toolkits
  1. Home
  2. ORMs and database toolkits
  3. Tortoise ORM
TO

Async Python ORM with a Django-like API · by Tortoise (community project)

Tortoise ORM

Async-native Python ORM with a Django-style model and query API, built-in migrations since 1.0, and drivers for SQLite, PostgreSQL, MySQL, SQL Server and Oracle.

Visit tortoise.github.io ↗ Alternatives Open source Open source Self-hostable
tortoise.github.io
Tortoise ORM homepage
§1

Overview

Tortoise ORM has been developed since 2018 as an asyncio ORM inspired by Django. Models inherit from tortoise.models.Model with fields such as CharField and ForeignKeyField, and queries look like Django's: await Tournament.filter(name__startswith='x').prefetch_related('events'). It supports CPython 3.10 and later with SQLite, PostgreSQL (asyncpg or psycopg), MySQL (aiomysql or asyncmy), SQL Server and Oracle.

Version 1.0.0, released on 8 February 2026, was a breaking release. It added a native migrations framework (tortoise makemigrations, migrate, sqlmigrate, downgrade) with RunPython and RunSQL data migrations, replacing the separate Aerich tool, which the docs now call legacy. It also moved all ORM state into a TortoiseContext, removed the old unittest-based test helpers in favour of pytest fixtures, and made timezone-aware datetimes the default.

The project publishes benchmarks against other Python ORMs and ships integrations for FastAPI, Starlette and other frameworks. Releases continued through 1.1.7 in March 2026. If you already know Django's ORM, most concepts carry over directly; the main differences are that every call is awaited and that setup happens through Tortoise.init or a framework integration rather than Django settings.

§2

Pricing and plans

Plan Price What you get
Tortoise ORM $0 Apache 2.0 licence

Free and open source under the Apache 2.0 licence; there is no paid product.

Source: github.com/tortoise/tortoise-orm · prices as published, excluding tax.

§3

What it does

Async-native queries
Every query is awaitable; no thread pools or greenlet bridges.
Django-style API
Models, fields, filter lookups with double underscores, prefetch_related and aggregation similar to Django's ORM.
Built-in migrations
Autodetects model changes and writes reversible migrations with a CLI, since 1.0.
PostgreSQL full-text search
TSVectorField, SearchVector, SearchQuery and GIN/GiST index support added in 1.0.
Framework integrations
Helpers for FastAPI (RegisterTortoise), Starlette and others, plus Pydantic model generation.
§4

Strengths and limitations

Strengths

  • Natural fit for async frameworks without sync-to-async bridges
  • Familiar to anyone who has used Django's ORM
  • Migrations are now part of the library
  • Supports SQL Server and Oracle as well as the usual open-source databases

Limitations

  • 1.0 introduced breaking changes: context-based state, removed test base classes and use_tz defaulting to True
  • Async only, so it is awkward in synchronous scripts; multiple asyncio.run() calls need explicit context handling
  • Smaller community than SQLAlchemy or Django, with hundreds of open issues
  • Type checking of queries is weaker than SQLAlchemy 2.0's typed mappings
§5

Who it suits

Good for

  • FastAPI or Starlette services that want a Django-like ORM
  • Teams moving from Django to async Python

Look elsewhere if

  • Synchronous applications (SQLAlchemy, Peewee or Django fit better)
  • Projects needing the widest database or dialect coverage
§6

Pricing history

  • 8 Feb 2026

    Tortoise ORM 1.0 with built-in migrations

    Tortoise ORM 1.0.0 added a native migrations framework (makemigrations/migrate) replacing Aerich, a context-based architecture, and made timezone-aware datetimes the default. Source ↗

§7

Alternatives to Tortoise ORM

Tool From Free option Stages
EF
Entity Framework Core .NET ORM
— Open source
Bu
Bun (Go ORM) SQL-first Go ORM
— Open source
GO
GORM Full-featured Go ORM
— Open source
SQLAlchemy Python SQL toolkit and ORM
— Open source
SQ
SQLModel Python ORM on SQLAlchemy and Pydantic
— Open source
KJ
Knex.js JavaScript SQL query builder
— Open source

All ORMs and database toolkits →

§8

Questions

Does Tortoise ORM have migrations?

Yes. Since 1.0 it ships a native migration framework with makemigrations and migrate commands; Aerich is now the legacy option.

Is Tortoise ORM async?

Yes, it is built for asyncio and every query is awaited.

Which databases does Tortoise ORM support?

SQLite, PostgreSQL, MySQL, Microsoft SQL Server and Oracle.

Sources read for this page

  • https://github.com/tortoise/tortoise-orm
  • https://github.com/tortoise/tortoise-orm/releases/tag/1.0.0
  • https://tortoise.github.io/migration_guide.html
  • https://tortoise.github.io/migration.html
  • https://tortoise.github.io/cli.html
Spec sheet
From
Open source
Free tier
Free to self-host
Stages
HobbyIndieStartupScale-upEnterprise Suits hobby, indie, startup
Language
Python (asyncio)
Approach
Full ORM, Django-style
Databases
SQLite, PostgreSQL, MySQL, SQL Server, Oracle
Migrations
Yes, built-in makemigrations/migrate since 1.0
Open source
Yes
Self-host
Yes
EU data
Not stated
Category
ORMs
Visit tortoise.github.io ↗

To report an out-of-date price or limit, use the correction form.

whichdevtool?

Developer and cloud tools compared on price, free tier and limits, each with its source. For side projects, solo developers and small teams.

Categories

  • VPS and cloud servers
  • App hosting and PaaS
  • Managed databases
  • Transactional email APIs
  • Email marketing and newsletters
  • Domain registrars
  • CDN, DNS and edge security
  • Monitoring, uptime and error tracking
  • Auth and identity
  • Frontend and full-stack frameworks
  • Backend frameworks
  • UI component libraries
  • AI model APIs
  • File and object storage
  • Payments and billing
  • Background jobs, queues and workflows
  • ORMs and database toolkits

Research

  • Directory
  • Stacks by project
  • Developer news
  • Pricing changes
  • Glossary

Site

  • About and methods
  • How we make money
  • Suggest a tool or fix
  • Privacy
© 2026 whichdevtool.com Prices change. Each tool page links to its source. We may earn a commission when you sign up through links on this site. How we make money