The fastest Postgres change data capture

The fastest Postgres change data capture

The fastest Postgres change data capture

Stream data from Postgres directly to Kafka, Redis, and more. Replace complex tools like Debezium and consolidate workflows.

Stream data from Postgres directly to Kafka, Redis, and more. Replace complex tools like Debezium and consolidate workflows.

Capture every insert, update, and delete

Capture every insert, update, and delete

Works with any Postgres database:

Works with any Postgres database:

Real-time sink to streams, queues, and more:

Real-time sink to streams, queues, and more:

Built-in backfills, filters, and transforms

Built-in backfills, filters, and transforms

Open source, MIT license

Open source, MIT license

YAML

CLI

API

databases:

- name: "sequin-playground"

username: "postgres"

password: "postgres"

hostname: "sequin_postgres"

database: "sequin_playground"

port: 5432

slot_name: "sequin_slot"

publication_name: "sequin_pub"

tables:

- table_name: "accounts"

table_schema: "public"

sort_column_name: "updated_at"

sinks:

- name: "kafka-sink"

database: "sequin-playground"

table: "public.accounts"

destination:

type: "kafka"

hosts: "kafka1.example.com:9092"

topic: "accounts-topic"

username: "kafka-user"

password: "kafka-password"

sasl_mechanism: "plain"

Performance

Performance

Performance

Industry-leading performance

Industry-leading performance

Sequin is tuned to Postgres to provide industry-leading performance. If your database can handle the transaction, Sequin will deliver it with minimal overhead. Read more on our benchmarking page →

Sequin is tuned to Postgres to provide industry-leading performance. If your database can handle the transaction, Sequin will deliver it with minimal overhead. Read more on our benchmarking page →

40,000+

messages per second

40+ MB/s

bandwidth throughput

55ms

average latency

Real-time CDC

Postgres to Kafka

Latency at 10,000 operations / second

6.8x

Sequin · 55 ms

AWS MSK Debezium · 253 ms

Fivetran · 5 min

AirByte · 1+ hours

Use cases

Streamline your use case

Sequin is designed to power every change data capture use case. No need to master a new piece of infrastructure.

Trigger

Workflows

Create

Audit logs

Replicate

Tables

Maintain

Caches

// Automatically log all database changes with Sequin
async function logDatabaseChange(change) {
  await db.query(`
    INSERT INTO audit_logs (
      event_id,
      table_name,
      record_id,
      action,
      old_values,
      new_values
    ) VALUES ($1, $2, $3, $4, $5, $6)
  `, [
    change.id,
    change.metadata.table_name,
    change.record.id,
    change.action,
    JSON.stringify(change.changes),  // Previous values
    JSON.stringify(change.record)    // New values
  ]);
}

// Example: Capture an order status change
await logDatabaseChange({
  id: "evt_123",
  action: "update",
  metadata: { table_name: "orders" },
  record: { id: "order_123", status: "shipped" },
  changes: { status: "pending" }
});

Create an Audit Log

Sequin captures the full history of modifications to your data, letting you meet compliance requirements, debug issues, and build powerful user features like activity feeds - all without modifying your application code.

Features

Features

Features

Setting a higher standard

Setting a higher standard

Change data capture typically requires adding complicated dependencies, endless configuration, and blackbox runtimes. Sequin is tailored to Postgres to cut out the complexity and deliver helpful features.

Change data capture typically requires adding complicated dependencies, endless configuration, and blackbox runtimes. Sequin is tailored to Postgres to cut out the complexity and deliver helpful features.

SQL filters

Use WHERE clauses to route changes to your sinks.

Use WHERE clauses to route changes to your sinks.

Use WHERE clauses to route changes to your sinks.

function onRow(r) {
  switch (r.status) {
    case 'active': return JSON.stringify('running');
    case 'pending': return JSON.stringify('waiting');
    default: return JSON.stringify('unknown');
  }
}
function onRow(r) {
  switch (r.status) {
    case 'active': return JSON.stringify('running');
    case 'pending': return JSON.stringify('waiting');
    default: return JSON.stringify('unknown');
  }
}

Transforms

Transform messages.

Web Console

A rich web console to easily manage and observe sinks as you build.

A rich web console to easily manage and observe sinks as you build.

Trace every row from capture through to delivery.

Backfill

Backfill at any time.

Observable

Trace every row from capture through to delivery

Trace every row from capture through to delivery

Trace every row from capture through to delivery.

Integrations

Integrations

Integrations

Drop into your stack

Works with your framework

Sequin works with any Postgres database (version 14+) and supports a growing list of sinks to queues and streams. Sequin even supports native sinks (Webhooks and HTTP) so you can get started without any other infrastructure.

Sequin works with any Postgres database (version 14+) and supports a growing list of sinks to queues and streams. Sequin even supports native sinks (Webhooks and HTTP) so you can get started without any other infrastructure.

Any

Postgres

Stream & Queue

Sinks

Warehouse & DB

Sinks

Testimonials

Testimonials

Testimonials

Loved by developers

Loved by developers

"Sequin allows us to capture millions of product changes in our database and replicate them to Typesense, ensuring perfectly accurate user searches. Set it up once and forget it—highly recommend!"

Matheus L.

CTO

"Sequin has become our central event source, reliably streaming database changes to power our Slack alerts, Resend emails, and in-app notifications. Having one dependable source has streamlined our entire architecture."

Johannes K.

CTO

"Sequin’s deliverability guarantees provide an abstraction of an entire class of problems for us. If there’s been an insert, update, or delete - we know our dependent services will get the event."

Mathew N.

Technical Lead

"Every database change must trigger our AI workflows - our customers depend on it. Sequin delivers, giving us a rock-solid foundation for streaming database changes across our entire service."

Honza K.

Founding Engineer

"Sequin was quick to set up and easy to use. It reduced the infrastructure maintenance on AWS and requires virtually no configuration, which saved us days of work."

Cédric C.

Founder

Read more…

"Sequin allows us to capture millions of product changes in our database and replicate them to Typesense, ensuring perfectly accurate user searches. Set it up once and forget it—highly recommend!"

Matheus L.

CTO

"Sequin has become our central event source, reliably streaming database changes to power our Slack alerts, Resend emails, and in-app notifications. Having one dependable source has streamlined our entire architecture."

Johannes K.

CTO

"Sequin’s deliverability guarantees provide an abstraction of an entire class of problems for us. If there’s been an insert, update, or delete - we know our dependent services will get the event."

Mathew N.

Technical Lead

Read more…

"Sequin allows us to capture millions of product changes in our database and replicate them to Typesense, ensuring perfectly accurate user searches. Set it up once and forget it—highly recommend!"

Matheus L.

CTO

"Sequin has become our central event source, reliably streaming database changes to power our Slack alerts, Resend emails, and in-app notifications. Having one dependable source has streamlined our entire architecture."

Johannes K.

CTO

"Sequin’s deliverability guarantees provide an abstraction of an entire class of problems for us. If there’s been an insert, update, or delete - we know our dependent services will get the event."

Mathew N.

Technical Lead

Read more…

Pricing

Pricing

Pricing

Plans and pricing

Plans and pricing

Sequin itself is built on Postgres to provide the most efficient, cost effective change data capture on the market.

Sequin itself is built on Postgres to provide the most efficient, cost effective change data capture on the market.

Free

For individuals and hobby projects

$0

/mo

per month

Self-host Sequin on your infra with community support

The fastest CDC from Postgres to streams and queues

The fastest CDC from Postgres to streams and queues

Docker container to run Sequin

Full-featured with transforms, backfills, CLI, and web console

Full-featured with transforms, backfills, CLI, and web console

Community Discord support

Community Discord support

Cloud

For teams scaling Sequin

Starting at

per month

$30

/mo

per month

Get started right away with a perfectly tuned deployment. Pay-as-you-grow.

Includes 2 GB / month throughput, then pay-as-you-go.

High-availability with autoscaling

High-availability with autoscaling

Organization with multi-region accounts

Organization with multi-region accounts

Dedicated support channels

Managed

For enterprise and mission critical

Tailored

A single-tenant deployment of Sequin within your cloud with full support & SLAs.

A custom plan tailored to your requirements

White-glove implementation support

SAML, SSO, and compliance

24 x 7 production support with SLAs

24 x 7 production support with SLAs

Join the community

Join the community

Join the community

Open source, in production

Open source.
In production.

Open source, in production

Sequin makes change data capture easier than ever. See what developers are saying and join the community to get started.

Sequin makes change data capture easier than ever. See what developers are saying and join the community to get started.

Blog

Read about how we're building Sequin, shipping features, and pushing Postgres

Discord

Join the Sequin Discord server to chat with contributors, get support, and discuss your use case.

GitHub

GitHub

You can view all the projects we have developed as open source on our GitHub page.