Skip to content
SPECIFICTION
Get listed

Sqitch

sqitch.org

Free plan WindowsmacOSLinuxSelf-hosted
Visit sqitch.org
Spec score 7.9 #13 of 32 in Database Migration Tools

What it is

Sqitch is a database change management application for deploying and tracking database changes. It is a standalone system, not tied to a framework, ORM, database engine, or development environment. Changes are written as scripts native to the chosen database, and can declare dependencies—including changes in other Sqitch projects—to establish execution order. A plan file and Merkle tree pattern support deployment integrity without requiring numbered change names. Sqitch can deploy and revert changes, report status and history, and run optional verification scripts. Its manual lists PostgreSQL, YugabyteDB, CockroachDB, SQLite, MySQL, MariaDB, Oracle, Firebird, Vertica, Exasol, Snowflake, and ClickHouse. Connecting and executing scripts requires the database's native command-line client and connector libraries. Installation options include source, Docker, Linux distribution packages, macOS Homebrew, and Windows instructions. Sqitch is free, with a license permitting use and distribution, and is available for Linux, macOS, Windows, and self-hosted use.

Spec sheet

Purpose
Sqitch is a database change management application for framework-free development and dependable deployment.Read 9 Oct 2026 · sqitch.org
License
The manual grants permission to use, modify, publish, distribute, sublicense, and sell the software subject to its stated condition, and provides it without warranty.Read 4 Oct 2026 · sqitch.org
Community support
The community offers GitHub Discussions, a users mailing list, Stack Overflow questions tagged sqitch, and a GitHub issue tracker for bugs and feature requests.Read 9 Oct 2026 · sqitch.org
Credential security
Sqitch intentionally has no command-line password option because command-line passwords can be recorded in shell history or exposed to other users.Read 9 Oct 2026 · sqitch.org
Database prerequisites
Sqitch requires a database-native command-line client and connector libraries to execute change scripts and connect to the database.Read 4 Oct 2026 · sqitch.org
Database support
Sqitch supports PostgreSQL, YugabyteDB, CockroachDB, SQLite, MySQL, MariaDB, Oracle, Firebird, Vertica, Exasol, Snowflake, and ClickHouse.Read 9 Oct 2026 · sqitch.org
Dependencies
Changes can declare dependencies on other changes, including changes in other Sqitch projects, to determine execution order.Read 9 Oct 2026 · sqitch.org
Deployment and verification
Sqitch can deploy and revert database changes, report deployment status and history, and run optional verification scripts during deployment.Read 9 Oct 2026 · sqitch.org
Deployment integrity
Sqitch uses a plan file and a Merkle tree pattern to manage changes and dependencies and ensure deployment integrity.Read 9 Oct 2026 · sqitch.org
Framework independence
Sqitch is a standalone system that is not tied to a framework, ORM, database engine, or development environment.Read 9 Oct 2026 · sqitch.org
Framework independent
Sqitch is a standalone system not tied to a framework, ORM, or platform.Read 4 Oct 2026 · sqitch.org
Install options
The download page lists source, Docker, Red Hat, Ubuntu/Debian, macOS Homebrew, and Windows Strawberry Perl installation options.Read 4 Oct 2026 · sqitch.org
Installation
The project provides source and Docker installation options, Linux distribution packages, a macOS Homebrew installation, and Windows installation instructions.Read 9 Oct 2026 · sqitch.org
Iterative development
Deployment scripts can be modified during development until the project is tagged and released.Read 9 Oct 2026 · sqitch.org
License and warranty
The manual grants software use and distribution rights free of charge and states that the software is provided without warranty.Read 9 Oct 2026 · sqitch.org
Maintainer
The manual names David E. Wheeler as the author.Read 4 Oct 2026 · sqitch.org
Native scripts
Database changes are implemented as scripts native to the selected database engine.Read 9 Oct 2026 · sqitch.org
Revert and verify
Sqitch provides commands to revert database changes and verify deployed changes.Read 4 Oct 2026 · sqitch.org
Runtime dependencies
Sqitch requires a database-native command-line client and connector libraries for the database engine it uses.Read 9 Oct 2026 · sqitch.org
Security and privacy
The site states that it uses no tracking or analytics services.Read 4 Oct 2026 · sqitch.org

Plans and prices

Sqitch Free Database change management application · software license permits use, copying, modification, merging, publishing, distribution, and sale Read 9 Oct 2026 · sqitch.org

Every Sqitch plan and price →

Strong points and limits

Strong points

  • Uses scripts native to the selected database
  • Tracks dependencies across Sqitch projects
  • Supports deploy, verify, and revert operations
  • Supports twelve listed database engines
  • Free and self-hosted

Limits

  • Requires a database-native command-line client
  • Requires connector libraries for the target database
  • Software is provided without warranty

Who it suits

Sqitch suits database teams that want script-based change management independent of a framework or ORM. It can fit workflows that need deployment, verification, status reporting, and rollback.

Verdict

Sqitch offers framework-independent change management with deployment, verification, and rollback. Its database client and connector prerequisites are important to plan for.

Where Specifiction places it

Alternatives to SqitchAll alternatives →