Quick answer

You can't move an existing Neon project to a new region in place. Instead, create a new project in the target region, copy the schema and data using pg_dump and pg_restore (or logical replication for larger datasets), update your connection strings, then delete the old project. The whole process takes minutes for small databases and is the same workflow for AWS-to-AWS as for AWS-to-Azure.

Step-by-step migration

1. Create the new project in the target region

In the Neon Console, click New Project, then set the cloud provider, region, and Postgres version. Use the same Postgres major version as the source project to avoid version compatibility issues.

From the CLI:

neon projects create --name myproject-us-east-1 --region-id aws-us-east-1

For the full list of supported region IDs (AWS and Azure), see Regions. Pass the ID with --region-id, for example aws-us-east-1. Full command reference: neon projects create.

2. Dump the source database

Use an unpooled connection string for pg_dump. Pooled connections through PgBouncer don't support dump operations.

pg_dump -Fc -v -d "postgresql://[user]:[password]@[old-host]/[dbname]" -f neon_dump.bak

For large databases, add -j 4 to parallelize, and -Z 1 for light compression. See Advanced pg_dump options.

3. Restore into the new project

pg_restore -v --no-owner -d "postgresql://[user]:[password]@[new-host]/[dbname]" neon_dump.bak

The --no-owner flag avoids errors from ALTER OWNER statements, which neon_superuser cannot execute. See Database object ownership considerations.

4. Switch your applications over

Copy the new connection string from the Connect button on the new project's dashboard and update environment variables in your deployment platform. Verify the application is healthy on the new database before going to the next step.

5. Delete the old project

Once you've confirmed the cutover, delete the old project from Project Settings → Delete to stop accruing storage costs.

Plan around the migration window

Writes to the source database during the dump and restore won't appear in the new project. Either accept a brief read-only window for the cutover, or use logical replication to keep the target current until you switch traffic. See the Import Data Assistant for databases under 10 GB and Migrate to another Neon region for larger datasets.

What about data transfer costs?

Egress between Neon regions counts as public network transfer. Check the Pricing page for the current per-GB rate. The Free plan includes 5 GB per project per month, which is usually enough for a one-off migration.

Compare migration paths

The region migration guide compares the Import Data Assistant, dump and restore, and logical replication.