Umzug
Umzug is a free, MIT-licensed, framework-agnostic migration tool for Node.js that runs and rolls back tasks.
What Umzug is
Umzug is a free, MIT-licensed, framework-agnostic migration tool for Node.js that runs and rolls back tasks. Its API lists pending or executed migrations, applies pending work, and reverts migrations. A built-in CLI can apply, revert, list, and create migrations. Migration files may use JavaScript or TypeScript, while custom resolvers can support formats such as SQL. History can be stored in JSON, memory, Sequelize, MongoDB, or a custom implementation, and Umzug is not tied to Sequelize. Written in TypeScript, it includes built-in typings and IDE autocomplete. Type-safe events are available before and after migration and command operations. FileLocker provides filesystem-based locking through beforeAll and afterAll events. Failed migrations become MigrationError objects containing metadata and the original error. File migrations sort lexicographically by path by default. The README reports testing with Sequelize v6 and notes that lower-version compatibility may vary. It is self-hosted.
Good
- Free MIT-licensed project
- Applies and reverts migrations
- JavaScript and TypeScript migration files
- Multiple migration-history storage options
- Built-in CLI and TypeScript typings
Watch out
- Self-hosted deployment
- Lower Sequelize-version compatibility may vary
- v3 CLI is described as new
- File ordering defaults to lexicographic paths
Who it suits
Umzug suits Node.js developers who need self-hosted migrations with rollback, multiple storage choices, and JavaScript or TypeScript files. It also fits projects wanting CLI and API access without coupling to Sequelize.
Verdict
Umzug provides migration execution and rollback through both API and CLI, with flexible formats and storage. Its self-hosted setup and noted compatibility and CLI caveats deserve attention before adoption.
Plans and prices
From Umzug's own pricing page, checked 9 Oct 2026.
| Plan | Price | What it gives you |
|---|---|---|
| Umzug | Free | MIT-licensed Node.js migration library |
The facts
Each one read from Umzug's own pages, with the date it was checked.
What it does
- CLI
- The built-in CLI can apply, revert, list, and create migrations.checked 9 Oct 2026
- CLI maturity
- The README describes the v3 CLI as new and invites feedback through GitHub Discussions.checked 9 Oct 2026
- Database integration
- Umzug is not coupled to Sequelize, though it supports Sequelize storage and MongoDB storage.checked 9 Oct 2026
- Error handling
- Migration failures are rethrown as MigrationError objects containing migration metadata and the original error.checked 9 Oct 2026
- Events
- Type-safe events are available before and after migration and command operations.checked 9 Oct 2026
- Execution
- Its API can list pending or executed migrations and apply or revert migrations.checked 9 Oct 2026
- File locking
- The FileLocker class provides a simple filesystem-based locking mechanism using beforeAll and afterAll events.checked 9 Oct 2026
- Language support
- It is written in TypeScript and includes built-in typings and IDE autocomplete.checked 9 Oct 2026
- License
- The public repository identifies the project license as MIT.checked 9 Oct 2026
- Migration formats
- Migration files can use JavaScript or TypeScript, and custom resolvers can support other formats such as SQL.checked 9 Oct 2026
- Ordering
- File-based migrations are sorted lexicographically by path by default, and the documentation recommends names that sort in the intended run order.checked 9 Oct 2026
- Purpose
- Umzug is a framework-agnostic migration tool for Node.js that runs and rolls back tasks.checked 9 Oct 2026
- Storage options
- Migration history can be stored in JSON, memory, Sequelize, MongoDB, or a custom storage implementation.checked 9 Oct 2026
- Version compatibility
- The README says the library has been tested with Sequelize v6 and may or may not work with lower versions.checked 9 Oct 2026
Alternatives to Umzug
- 1

Atlas
Free planOpen sourceWebAPILinuxmacOS8.3From $39 a month - 2
DeepFilterNet
Free planOpen sourceAPILinuxmacOSSelf-hosted7.6Free plan - 3
pgroll
Free planOpen sourceLinuxmacOSSelf-hostedWindows7.3Free plan - 4

Skeema
Free planLinuxmacOSWindows6.9From $649 a year - 5

Bytebase Enterprise
Free planWebAPISelf-hosted6.8From $20 a month - 6
Sqitch
Free planLinuxmacOSSelf-hostedWindows6.7Free plan
