Atlas vs Goose
Atlas
atlasgo.ioGoose
pressly.github.ioSide by side
| Figure | Atlas | Goose |
|---|---|---|
| Price from | $9/mo | Free |
| Free plan | Yes | Yes |
| Free trial | Yes | — |
| Open source | Yes | — |
| Web | Yes | — |
| Windows | Yes | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| API | Yes | Yes |
| Self-hosted | Yes | Yes |
| Plans published | 8 | 1 |
| Spec score · Database Migration Tools | 9.5 (#1) | 8.3 (#8) |
Plans
Atlas
- Atlas StarterFree
- Atlas StarterFree
- Atlas Pro (Team)$9 a month
- Atlas Pro (Team)$9 a month
- Atlas Schema Monitoring$39 a month
- Atlas Schema Monitoring Pro$39 a month
- Atlas Pipelines Pro$59 a month
- Atlas EnterprisePriced on request
In their own words
Atlas
Atlas is a language-independent tool for managing database schemas and migrations through declarative, versioned workflows. It compares a database's current state with a desired schema expressed in HCL, SQL, or an ORM format, then can generate and execute a migration plan. Teams can lint and validate migrations, run safety checks, and test schemas and migrations. The open version supports PostgreSQL, MySQL, MariaDB, SQLite, TiDB, and LibSQL; Pro adds drivers including SQL Server, Oracle, Snowflake, and Databricks. Atlas describes its core engine as open source under Apache 2.0, with advanced features in proprietary versions. Integrations include Kubernetes, Terraform, GitHub Actions, GitLab CI, CircleCI, Bitbucket Pipelines, Azure DevOps, and a Go SDK. Starter is free. Atlas Pro costs $9 per developer per month, plus usage-based pricing for CI/CD pipelines and databases; new users can try Pro for 30 days. Schema Monitoring costs $39 per monitored database per month. Enterprise pricing is custom.
Goose
Goose is a free, open-source database migration tool for managing schema changes through incremental SQL files and Go functions. It is available as both a command-line utility and a library. The CLI can apply, roll back, redo, reset, inspect, and version migrations, with documented drivers for ClickHouse, Microsoft SQL Server, MySQL, PostgreSQL, SQLite, Turso, Vertica, and YDB. SQL migration files use an up annotation and may include a down annotation; filenames can use timestamps or sequential numbers. Statements in a migration file run in one transaction by default, with an annotation for running them outside one. Go migration functions can use a transaction when given a transaction argument. Other listed capabilities include embedded and out-of-order migrations, data seeding, and environment variable substitution in SQL migrations. For library use, a provider accepts a database dialect, connection, migration filesystem, and optional configuration. The provider does not lock the database by default, so callers must arrange safe concurrent migrations or configure a session locker.