Heroku Postgres Version Support
Last updated October 29, 2024
Table of Contents
The PostgreSQL project releases new major versions on a yearly basis. Heroku Postgres supports each major version shortly after its release.
We release minor versions shortly after they’re available on Postgres. Users can’t update the minor versions themselves via pg:upgrade
. Instead, Heroku automatically updates the minor version after each database maintenance if a new minor version is available and the database isn’t on the latest minor version.
Version Support
While the PostgreSQL project supports a major version for five years after its initial release, Heroku supports a major version for three years on our platform. Heroku deprecates these versions to ensure no databases run on an unsupported major version of PostgreSQL. Heroku currently offers Postgres version 16 as the default. Currently supported versions include:
Version | Status | End-Of-Life Date |
---|---|---|
11 | Deprecated | November 9, 2023 |
12 | Deprecated | May 30, 2024 |
13 | Deprecated | October 29, 2024 |
14 | Available | Q3 2025 |
15 | Available | Q3 2026 |
16 | Available (Default) | Q3 2027 |
Users are required to upgrade roughly once every three years. We recommend upgrading your PostgreSQL version when a new one is available to gain the benefits of the latest version, such as security or performance enhancements.
We announce deprecations in the Changelog. Databases on deprecated versions are subject to forced upgrade attempts. End-of-life occurs six months after the deprecation date, and we start restricting database access and deleting databases for non-compliance.
To create a database on an older, supported PostgreSQL version use the –version flag with the addons:create
command.
To see what version of Postgres a database is running, run the pg:info
command.
Deprecation and Migration of Deprecated Databases
When we release a new major version, we deprecate the third major version released before it. For example, Heroku Postgres 14 deprecates when Heroku Postgres 17 releases.
- On the deprecation date, Heroku notifies customers via email about the deprecation process for their affected databases.
- Three months after the deprecation date, Heroku prevents provisioning new databases on the deprecated version. Creating forks and followers of existing databases is allowed.
- Five months after the deprecation date, Heroku schedules forced upgrades for databases that still run a deprecated version.
Heroku highly recommends that you perform the version upgrade before support ends so that you can test compatibility, plan for unforeseen issues, and migrate your database on your own schedule.
End-of-Life
The end-of-life date of each version occurs six months after its deprecation date. We start restricting database access and deleting databases, including follower databases, for non-compliance after this date.