# Sequin

> Postgres changes to queues and streams, exactly once

Sequin is an open-source CDC tool that streams PostgreSQL changes to queues, streaming platforms, and webhooks with strict ordering and exactly-once processing, shipped as a Docker image rather than a Postgres extension.

Website: https://sequinstream.com

## Use it when

- Application services, not just the warehouse, consume database changes: Kafka, SQS, SNS, Kinesis, Pub/Sub, Redis, NATS, and plain webhooks are all first-class sinks.
- Guarantees must be strong and simple: strict ordering and exactly-once processing through idempotency keys, stated plainly.
- Replays should be routine, not incidents; sinks backfill and individual rows replay on demand.
- The source is managed Postgres where extensions are off-limits; Sequin works against any Postgres 14+ from outside.

## Think twice when

- Sources other than PostgreSQL exist; there is no other path (Debezium is the multi-source answer).
- You want a hosted service with support; Sequin Cloud closed in 2025, leaving self-hosting only.
- Warehouse loading with schema management is the goal; messages carry rows as-is, and destination schema evolution is not the model.

## How it runs

One container beside a Postgres and Redis, against a source with wal_level=logical, a publication, and a replication slot. Filters, transforms, and routing are configured per sink; delivery is sub-second from commit. MIT-licensed and free, with a console, CLI, and API.

## Details

### General

| Attribute | Value |
| --- | --- |
| License | Open source (permissive) |
| SPDX identifier | MIT |
| Deployment | Self-hosted |
| Workload | Streaming |
| Operational complexity | Low |
| Pricing | Free |
| Language | Elixir |
| Repository | https://github.com/sequinstream/sequin |
| Documentation | https://sequinstream.com/docs |
| Stars | 2.2k |

### Change Data Capture

| Attribute | Value |
| --- | --- |
| Sources | PostgreSQL 14+ only |
| Source requirements | wal_level logical, plus a publication and replication slot |
| What you run | One container, with Postgres and Redis beside it |
| Initial snapshot | Backfill per sink; individual rows replayable |
| End-to-end lag | Sub-second: measured from commit to delivery at the sink |
| Delivery guarantee | Exactly-once: idempotency keys, strict ordering |
| Schema drift | Messages carry the row as-is; no destination schema to migrate |
| Transformations | Filters, transforms and routing, configured per sink |
| Destinations | Kafka, SQS, SNS, Kinesis, Pub/Sub, Redis, NATS, webhooks |
| Billing unit | None: Sequin Cloud closed in 2025; self-hosting only |

## Capabilities

- [Change Data Capture](https://matca.io/capabilities/change-data-capture)

---

Source: https://matca.io/sequin
Last updated: 2026-08-31T11:40:48.175Z
