Skip to content
SPECIFICTION
Get listed

pgstream

xata.io

Free plan macOSLinuxSelf-hosted
Visit xata.io
Spec score 7.9 #11 of 23 in Change Data Capture Software

What it is

pgstream is a free, open-source tool for moving PostgreSQL data and schema changes to other systems. Run it as a command-line program or embed it as a Go library; it is self-hosted and requires PostgreSQL. Destinations include PostgreSQL, Elasticsearch or OpenSearch, Kafka, and webhooks. It can take an initial or on-demand snapshot for bulk loads and point-in-time copies, and tracks schema changes so receiving systems can reflect table updates. During replication, column values can be transformed with greenmask, neosync, go-masker, or custom transformers, including to mask production data headed for development or staging. Kafka support includes schema-based partitioning. Installation options include a Go binary, building from source, and Homebrew on macOS or Linux. The project uses the Apache License 2.0 and costs nothing. Its initial release has constraints: one Kafka topic, the wal2json PostgreSQL plugin, no row-level filtering, and a primary-key or unique non-null column requirement. Community questions and issues go through GitHub issues.

Spec sheet

Purpose
pgstream is an open-source CDC tool for replicating PostgreSQL data and DDL schema changes to targets.Read 4 Oct 2026 · xata.io
Deployment
pgstream can run as a standalone CLI or be embedded as a Go library, and requires PostgreSQL as a dependency.Read 4 Oct 2026 · xata.io
Security
The product page describes built-in anonymization for masking production data as it is replicated to development or staging.Read 4 Oct 2026 · xata.io
Support
The project README directs users with questions or issues to open a GitHub issue for community assistance.Read 4 Oct 2026 · github.com
License
The project is licensed under Apache License 2.0.Read 4 Oct 2026 · github.com
Anonymization
Column values can be transformed during replication using greenmask, neosync, or go-masker integrations.Read 4 Oct 2026 · xata.io
DDL tracking
It tracks and replicates schema changes alongside data changes so downstream targets can follow table changes.Read 4 Oct 2026 · xata.io
Deployment dependency
The product page says pgstream requires PostgreSQL as its only dependency and does not require ZooKeeper or Kafka.Read 4 Oct 2026 · xata.io
Installation
The project provides a Go binary and Docker image, and its repository documents installation with Go, source builds, and Homebrew on macOS or Linux.Read 4 Oct 2026 · github.com
Intended use
The product page describes using pgstream to keep staging databases in sync with production and to bootstrap targets with snapshots.Read 4 Oct 2026 · xata.io
Interfaces
pgstream can run as a standalone CLI tool or be embedded as a Go library.Read 4 Oct 2026 · xata.io
Kafka support
Kafka support includes schema-based partitioning.Read 4 Oct 2026 · xata.io
Limitations
The README lists single Kafka topic support, wal2json-only Postgres plugin support, no row-level filtering, and a primary-key or unique non-null column requirement as limitations of the initial release.Read 4 Oct 2026 · github.com
Maker founded
Xata says it formed in 2021.Read 4 Oct 2026 · xata.io
Maker security
Xata states that it is SOC 2, HIPAA, and GDPR compliant; this statement describes Xata and does not specify pgstream as a separately certified product.Read 4 Oct 2026 · xata.io
Schema changes
It tracks and replicates schema changes alongside data changes.Read 4 Oct 2026 · xata.io
Snapshots
It supports initial and on-demand PostgreSQL snapshots for bulk loads or point-in-time copying without continuous replication.Read 4 Oct 2026 · xata.io
Targets
Built-in targets include PostgreSQL, Elasticsearch/OpenSearch, Kafka, and webhooks.Read 4 Oct 2026 · xata.io

Plans and prices

pgstream Free Open-source CDC CLI and Go library · Apache 2.0 license Read 4 Oct 2026 · xata.io

Every pgstream plan and price →

Strong points and limits

Strong points

  • Replicates data and schema changes together
  • Supports four built-in target types
  • Offers initial and on-demand snapshots
  • Column transformations can mask replicated data
  • Free under Apache License 2.0

Limits

  • Supports only one Kafka topic
  • Uses only the wal2json PostgreSQL plugin
  • No row-level filtering
  • Requires a primary key or unique non-null column

Who it suits

pgstream suits teams that need to replicate PostgreSQL data and schema changes to downstream systems or keep staging databases synchronized. It also fits developers who want a Go library or a self-hosted CLI with snapshot and masking options.

Verdict

pgstream combines change replication, schema tracking, snapshots, and column transformation in a self-hosted CLI or Go library. Check its Kafka, plugin, filtering, and key-column limits against the workload before adopting it.

Where Specifiction places it

Alternatives to pgstreamAll alternatives →