- Boot Sequin
- Connect to a sample playground database
- Configure a Pub/Sub topic to receive database changes
- See your changes flow in real-time
This is the quickstart for streaming Postgres to GCP Pub/Sub. See the how-to guide for an explanation of how to use the GCP Pub/Sub sink or the reference for details on all configuration options.
Prerequisites
- A Google Cloud project with Pub/Sub enabled
- A service account with Pub/Sub permissions
roles/pubsub.publisher
roles/pubsub.viewer
Create a Pub/Sub Topic
If you don’t already have a Pub/Sub topic:
- Navigate to the Pub/Sub Topics page in your Google Cloud Console
- Click “CREATE TOPIC”
- Enter a topic ID for this tutorial (e.g., “products”)
- Click “CREATE”
- Google Cloud project ID (e.g., “my-project-123”)
- Pub/Sub topic ID (e.g., “products”)
Run Sequin
The easiest way to get started with Sequin is with our Docker Compose file. This file starts a Postgres database, Redis instance, and Sequin server.
1
Create directory and start services
- Download sequin-docker-compose.zip.
- Unzip the file.
- Navigate to the unzipped directory and start the services:
Alternative: Download with curl
Alternative: Download with curl
Alternative: Clone the repository
Alternative: Clone the repository
2
Verify services are running
Check that Sequin is running using You should see output like the following:
docker ps
:Sequin, Postgres, Redis, Prometheus, and Grafana should be up and running (status:
Up
).Login
The Docker Compose file automatically configures Sequin with an admin user and a playground database.Let’s log in to the Sequin web console:
1
Open the web console
After starting the Docker Compose services, open the Sequin web console at http://localhost:7376:

2
Login with default credentials
Use the following default credentials to login:
- Email:
- Password:
View the playground database
To get you started quickly, Sequin’s Docker Compose file creates a logical database called
sequin_playground
with a sample dataset in the public.products
table.Let’s take a look:1
Navigate to Databases
In the Sequin web console, click Databases in the sidebar.
2
Select playground database
Click on the pre-configured 
sequin-playground
database:
The database “Health” should be green.
3
View contents of the products table
Let’s get a sense of what’s in the You should see a list of the rows in the We’ll make modifications to this table in a bit.
products
table. Run the following command:This command connects to the running Postgres container and runs a
psql
command.products
table:Create a Pub/Sub Sink
With the playground database connected, you can create a sink. This sink will send changes to the
products
table to your Pub/Sub topic:1
Navigate to Sinks
Click “Sinks” in the sidebar navigation, then click “Create Sink”.
2
Select sink type
Select “Google Cloud Pub/Sub” as the sink type and click “Continue”.
3
Note "Source" configuration
In the “Source” card, note that the 
sequin-playground
database is selected and all schemas and tables are included. Leave these defaults:
4
Setup a backfill
In the 
Inital backfill
card, select the public.products
table to initate a backfill when the sink is created.
5
Configure "Pub/Sub Configuration"
In the “Pub/Sub Configuration” card, enter your Pub/Sub details:
- Project ID: Your Google Cloud project ID
- Topic ID: The Pub/Sub topic to stream to (e.g., “products”)
- Service Account Credentials: Paste your service account JSON key file contents

6
Test the connection
At the bottom of the form, click the “Test Connection” button. If you provided proper credentials, it should succeed.
Sequin can connect to your Pub/Sub topic.
7
Create the sink
You can leave the rest of the defaults. As configured, the Pub/Sub topic will first receive a backfill of all rows currently in the
products
table. Then, it will receive all changes to the products
table in real-time.Click “Create Sink” to finish setting up your Pub/Sub sink.See changes flow to your Pub/Sub topic
On the new sink’s overview page, you should see the “Health” status turn green, indicating data is flowing to your Pub/Sub topic.Let’s confirm messages are flowing:
1
Messages tab
Click the “Messages” tab. You’ll see a list of the recently delivered messages:

Sequin indicates it backfilled the
products
table to your Pub/Sub topic.2
View in Pub/Sub Console
In the Google Cloud Console:
- Navigate to your Pub/Sub topic
- Click on the “MESSAGES” tab
- Under “Step 2”, select a Cloud Pub/Sub subscription
- Click “PULL” to see messages in the topic
read
events from the initial backfill of the products
table.Messages are flowing from Sequin to your Pub/Sub topic.
3
Make some changes
Let’s make some changes to the In the Pub/Sub Console, click “PULL” again to see the new message appear.Feel free to try other changes:
Each change will appear in your Pub/Sub topic within a few seconds.
products
table and see them flow to your topic.In your terminal, run the following command to insert a new row into the products
table:Update a product's price
Update a product's price
Change a product's name
Change a product's name
Delete a product
Delete a product
Great work!
- Set up a complete Postgres change data capture pipeline
- Loaded existing data through a backfill
- Made changes to the
products
table - Verified changes are flowing to your Pub/Sub topic