Skip to content
SPECIFICTION
Get listed

Goose vs SchemaHero

Goose

pressly.github.io

SchemaHero

schemahero.io

Side by side

FigureGooseSchemaHero
Price fromFree—
Free planYes—
Free trial——
Open source——
Web—Yes
WindowsYesYes
macOSYesYes
LinuxYesYes
APIYes—
Self-hostedYesYes
Plans published10
Spec score · Database Migration Tools8.3 (#8)7.4 (#24)
Database supportThe documented CLI drivers include ClickHouse, MSSQL, MySQL, PostgreSQL, SQLite, Turso, Vertica, and YDB.Supported database engines listed by SchemaHero are PostgreSQL, MySQL, CockroachDB, TimescaleDB, Cassandra, SQLite and RQLite.
LicenseThe GitHub repository states that Goose is licensed under the MIT License.The GitHub repository is licensed under Apache-2.0.
PurposeGoose is a database migration tool for managing database schemas with incremental SQL changes and/or Go functions.SchemaHero is an open-source database schema migration tool that converts schema definitions into migration scripts.

Plans

Goose

  • GooseFree

Goose pricing →

SchemaHero

No plans published.

SchemaHero pricing →

In their own words

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.

Visit pressly.github.io

SchemaHero

SchemaHero has no write-up on Specifiction yet; its figures are above.

Visit schemahero.io