In the Overview workspace of the PowerSync Dashboard, you will be prompted to create your first instance:
If you’ve previously created an instance in your project, you can create an additional instance by navigating to Manage instances and clicking Create new instance:
You can also create an entirely new project with its own set of instances. Click on the PowerSync icon in the top left corner of the Dashboard or on Admin Portal at the top of the Dashboard, and then click on Create Project.
Give your instance a name, such as “Testing”.
[Optional] You can change the default cloud region from US to EU, JP (Japan), AU (Australia) or BR (Brazil) if desired.
Note: Additional cloud regions will be considered on request, especially for customers on our Enterprise plan. Please contact us if you need a different region.
[Optional] You can opt in to using the Next version of the Service, which may contain early access or experimental features. Always use the Stable version in production.
Each database provider has their quirks when it comes to specifying connection details, so we have documented database-specific and provider-specific instructions below:
Select your Postgres hosting provider for steps to connect your newly-created PowerSync instance to your Postgres database:
From your Supabase Dashboard, select Connect in the top navigation bar:
In the Direct connection section, copy the complete connection string (including the [YOUR-PASSWORD] placeholder)
Back in the PowerSync Dashboard, paste the connection string into the URI field. PowerSync will automatically parse this URI to populate the database connection details.
Update the Username and Password fields to use the powersync_role and password you created when configuring your Supabase for PowerSync (see Source Database Setup).
Note: PowerSync includes Supabase’s CA certificate by default, so you can use verify-full SSL mode without additional configuration.
Your connection settings should look similar to this:
Verify your setup by clicking Test Connection and resolve any errors.
Click Next.
PowerSync will detect the Supabase connection and prompt you to enable Supabase auth. To enable it, copy your JWT Secret from the Supabase Dashboard’s API settings and paste it here:
Click Enable Supabase auth to finalize your connection settings.
PowerSync will now create an isolated cloud environment for your instance. This typically takes a minute or two.
You can update your instance settings by navigating to the Manage instances workspace, opening your instance options and selecting Edit instance.
Supabase is configured with a maximum of 4 logical replication slots, with one often used for Supabase Realtime.
It is therefore easy to run out of replication slots, resulting in an error such as “All replication slots are in use” when deploying. To resolve this, delete inactive replication slots by running this query:
Copy
select slot_name, pg_drop_replication_slot(slot_name) from pg_replication_slots where active = false;
Complete the remaining fields: “Name”, “Host”, “Port”, “Database name”, “Username”, “Password” and “SSL Mode” are required. You can paste a connection string into the “URI” field to simplify this.
“Name” can be any name for the connection.
“Port” is 5432 for Postgres databases.
“Username” and “Password” maps to the powersync_role created in Source Database Setup.
PowerSync has the AWS RDS CA certificate pre-configured — verify-full SSL mode can be used directly, without any additional configuration required.
If you want to query your source database via the PowerSync Dashboard, enable “Allow querying data from the dashboard?”.
Click “Test Connection” and fix any errors.
Click “Save”.
PowerSync deploys and configures an isolated cloud environment for you, which can take a few minutes to complete.
If you get an error such as “IPs in this range are not supported”, the instance is likely not configured to be publicly accessible. A DNS lookup on the host should give a public IP, and not for example 10.x.x.x or 172.31.x.x.
Fill in your connection details from Azure.
“Name”, “Host”, “Port”, “Database name”, “Username”, “Password” and “SSL Mode” are required. You can also paste a connection string into the “URI” field to simplify data entry.
“Name” can be any name for the connection.
“Port” is 5432 for Postgres databases.
“Username” and “Password” maps to the powersync_role created in Source Database Setup.
PowerSync has the Azure CA certificate pre-configured — verify-full SSL mode can be used directly, without any additional configuration required.
If you want to query your source database via the PowerSync Dashboard, enable “Allow querying data from the dashboard?”.
Click “Test Connection” and fix any errors.
If you encounter the error "must be superuser or replication role to start walsender", ensure that you’ve followed all the steps for enabling logical replication documented here.
Click “Save”.
PowerSync deploys and configures an isolated cloud environment for you, which can take a few minutes to complete.
Fill in your connection details from Google Cloud SQL.
“Name”, “Host”, “Port”, “Database name”, “Username”, “Password” and “SSL Mode” are required. You can paste a connection string into the “URI” field to simplify data entry.
“Name” can be any name for the connection.
“Port” is 5432 for Postgres databases.
“Username” and “Password” maps to the powersync_role created in Source Database Setup.
The server certificate can be downloaded from Google Cloud SQL.
If SSL is enforced, a client certificate and key must also be created on Google Cloud SQL, and configured on the PowerSync instance.
If you want to query your source database via the PowerSync Dashboard, enable “Allow querying data from the dashboard?”.
Click “Test Connection” and fix any errors.
Click “Save”.
PowerSync deploys and configures an isolated cloud environment for you, which can take a few minutes to complete.
“Name”, “Host”, “Port”, “Database name”, “Username”, “Password” and “SSL Mode” are required. You can paste a connection string into the “URI” field to simplify data entry.
“Name” can be any name for the connection.
“Port” is 5432 for Postgres databases.
“Username” and “Password” maps to the powersync_role created in Source Database Setup.
Note that if you’re using a self-signed SSL certificate for your database server, click the “Download Certificate” button to dynamically fetch the recommended certificate directly from your server.
Also note if you get any error such as server certificate not trusted: SELF_SIGNED_CERT_IN_CHAIN, click “Download Certificate” to attempt automatic resolution.
If you want to query your source database via the PowerSync Dashboard, enable “Allow querying data from the dashboard?”.
Click “Test Connection” and fix any errors.
Click “Save”.
PowerSync deploys and configures an isolated cloud environment for you, which can take a few minutes to complete.
Fill in your connection details from Fly Postgres.
“Name”, “Host”, “Port”, “Database name”, “Username”, “Password” and “SSL Mode” are required. You can paste a connection string into the “URI” field to simplify data entry.
“Name” can be any name for the connection.
“Port” is 5432 for Postgres databases.
“Username” and “Password” maps to the powersync_role created in Source Database Setup.
Note that if you’re using a self-signed SSL certificate for your database server, click the “Download Certificate” button to dynamically fetch the recommended certificate directly from your server.
Also note if you get any error such as server certificate not trusted: SELF_SIGNED_CERT_IN_CHAIN, click “Download Certificate” to attempt automatic resolution.
If you want to query your source database via the PowerSync Dashboard, enable “Allow querying data from the dashboard?”.
Click “Test Connection” and fix any errors.
Click “Save”.
PowerSync deploys and configures an isolated cloud environment for you, which can take a few minutes to complete.
For other providers and self-hosted databases:
Fill in your connection details.
“Name”, “Host”, “Port”, “Database name”, “Username”, “Password” and “SSL Mode” are required. You can paste a connection string into the “URI” field to simplify data entry.
“Name” can be any name for the connection.
“Port” is 5432 for Postgres databases.
“Username” and “Password” maps to the powersync_role created in Source Database Setup.
Note that if you’re using a self-signed SSL certificate for your database server, click the “Download Certificate” button to dynamically fetch the recommended certificate directly from your server.
Also note if you get any error such as server certificate not trusted: SELF_SIGNED_CERT_IN_CHAIN, click “Download Certificate” to attempt automatic resolution.
If you want to query your source database via the PowerSync Dashboard, enable “Allow querying data from the dashboard?”.
Click “Test Connection” and fix any errors.
Click “Save”.
PowerSync deploys and configures an isolated cloud environment for you, which can take a few minutes to complete.
Copy your cluster’s connection string and paste it into the PowerSync instance URI field. PowerSync will automatically parse this URI to populate other connection details.
The format should be mongodb+srv://[username:password@]host/[database]. For example, mongodb+srv://admin:<db_password>@cluster0.abcde1.mongodb.net/powersync
Enter your database user’s password into the Password field. See the necessary permissions in Source Database Setup.
“Database name” is the database in your cluster to replicate.
Click “Test Connection” and fix any errors. If have any issues connecting, reach out to our support engineers on our Discord server or otherwise contact us.
“Host” and “Database name” is the database to replicate.
“Username” and “Password” maps to your database user.
Click “Test Connection” and fix any errors. If have any issues connecting, reach out to our support engineers on our Discord server or otherwise contact us.