# xataio/pgroll

PostgreSQL zero-downtime migrations made easy

Repository: https://github.com/xataio/pgroll
Canonical: https://ross.abutalabs.com/products/pgroll
Homepage: https://pgroll.com
Language: Go
License: Apache-2.0
License Family: permissive
Topics: golang, migrations, postgresql, zero-downtime, hacktoberfest, postgres, schema
Last push: 2026-08-19T06:03:51+00:00

## Health v2 (maintenance only)
Score: 86/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 98, release rhythm 71, longevity 83
- inputs: {"age_days": 1168, "days_push": 14, "days_rel": 113, "gap_med": 38, "n_releases_24m": 16}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 6560, forks 154 (observed 2026-08-28T04:09:45.197603+00:00)

## What it is
pgroll is an open-source command-line tool for safe, reversible, zero-downtime schema migrations on PostgreSQL. It serves multiple schema versions simultaneously so client applications keep working during migrations, with automatic backfills and instant rollbacks.

## Use cases
- run zero-downtime schema migrations on postgres
- add a column to a large table without locking the database
- roll back a database schema change instantly
- migrate a production postgres schema while the app keeps running
- backfill column data automatically during a migration
- apply breaking schema changes safely to an existing database

## When to choose
- you run PostgreSQL 14+ in production and need schema changes without downtime or locks
- you want reversible migrations with instant rollback capability
- you need old and new schema versions to coexist during application rollout
- you work with managed Postgres like RDS or Aurora and need a dependency-free single binary

## When to avoid
- you use a database other than PostgreSQL
- you only need simple migrations on small databases where brief locks are acceptable
- you want a full ORM-integrated migration framework rather than a standalone CLI

## Facets
- artifact type: cli-tool
- maturity: active
- function: database, deployment, cli, developer-tools
- domain: databases, developer-tools
- platform: windows, cli, cross-platform
- tags: postgresql, schema-migrations, zero-downtime, database-migrations, expand-contract, backfill, devops, linux, macos

## Member repositories
- xataio/pgroll (main) score 86

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:09:45.197603+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T17:44:03.712164+00:00, confidence not recorded.
  - readme: https://github.com/xataio/pgroll (fetched 2026-08-28T04:09:45.197603+00:00, sha ee554ce4a771)
  - homepage: https://pgroll.com (fetched 2026-08-29T08:40:15.132756+00:00, sha 9fe7bfc8b6b1)
- Data as of 2026-08-30T08:39:29.467469+00:00.
