Sequin is the fastest change data capture (CDC) tool to stream changes from your Postgres database to streaming platforms, queues, and other destinations.

To use Sequin, you’ll configure sinks for one or more tables in your database. Sequin will then stream changes to your chosen destinations like Kafka, SQS, Redis, or HTTP endpoints. You can backfill existing rows and stream new changes in real-time.

Use cases

Sequin works great for CDC use cases like:

Sequin is a Docker image you can run next to your Postgres database. Sequin itself is built on Postgres and uses Postgres to store sink state.

Get started

Connect to your database and start streaming changes in just a few minutes. Sequin supports the following sinks:

Run Sequin

Install and setup Sequin on your own infrastructure.

More coming soon

Tell us what sink you’d like to see next.

Killer features

  • Bring your database: Sequin is not an extension. It works with any Postgres database version 14+.
  • Never miss a change: Sequin ensures 100% delivery of database changes to sinks with strict ordering.
  • Filters: Write custom filters to exclude or include changes to sink.
  • Transforms: Transform message payloads by writing functions in low-latency Elixir.
  • Routing: Route messages to specific topics, endpoints, or indexes.
  • Exactly-once processing: Sequin ensures exactly-once processing of database changes using idempotency keys.
  • Backfills: Backfill sinks at any point in time. Run partial backfills to only replay specific rows.
  • Observability: Sequin exposes a metrics endpoint using Prometheus and comes with a Grafana dashboard.
  • End-to-end tooling: Start with the Sequin console, then use the CLI, sequin.yml and API to manage your sinks.

Why Sequin?

We all know Postgres is great for storing and querying data. But what about when you need to stream changes to other systems?

Postgres has limited support for change streaming. While Postgres supports logical replication, it’s ephemeral and doesn’t support features developers need like exactly-once processing, backfills, or delivery tracking.

Existing tools aren’t much better. Debezium is complicated to setup, requires Kafka to scale, and caps out at 20,000 changes per second. Other options like Airbyte and Decodable simply wrap Debezium. While ETL tools like Fivetran have limited support for operational destinations and write changes in batches, not in real-time.

Sequin provides the fastest, simplest experience for streaming data from Postgres. It streams changes in real-time and doesn’t require complex infrastructure to operate.

Getting help

Join our Discord

Chat with the Sequin team and get help from the community.

Join our Slack

Just like Discord, but for those who prefer Slack.

Open an issue

Report bugs or request features on our GitHub repository.

Schedule a call

Book a call to discuss your needs.