Every Neon project is tied to the Postgres major version you picked when you created it. To check which one you're on, run SELECT version(); from any SQL client, or read it from the Settings widget on the Project Dashboard in the Neon Console. neon projects get <project_id> --output json returns it in the pg_version field. Neon supports Postgres 14, 15, 16, 17, and 18 (version support).

Three ways to check

Run this from the Neon SQL Editor, psql, or any Postgres client:

SELECT version();

The result looks like this:

PostgreSQL 17.2 on x86_64-pc-linux-gnu, compiled by gcc ...

The first number is the major version. The second is the minor version, which Neon updates automatically.

Major vs minor versions

Neon manages minor version upgrades for you under the Postgres version support policy. A new minor version usually reaches Neon within a few days of the upstream Postgres release, and it's applied the next time your compute restarts, for example when it wakes from scale to zero. You can't pin an older minor version.

Neon doesn't upgrade major versions (16 to 17, 17 to 18, and so on) for you, because they can introduce incompatibilities, and pg_upgrade isn't supported. To upgrade, create a new Neon project with the target major version and migrate your data with the Import Data Assistant, pg_dump and pg_restore, or logical replication.

Major versions cannot be downgraded

You can't change the major version of an existing project, up or down. To run a different major version, create a new project and migrate. If you have strict compatibility requirements, check them before you create the project.

Plan an upgrade to a newer Postgres version

Walk through creating a new project, migrating data, and cutting traffic over to the new version.