---
title: "Heroku Postgres Upgrade Guide: Simplify Your Move to Version 17"
description: "Heroku Postgres 17 is now available, and the platform introduces a simplified, self-service path for upgrading managed databases. The new heroku pg:upgrade:* commands cover preparation, manual execution, cancellation, dry runs, and progress tracking, while email notifications report major stages and detected issues. Essential-tier databases can be upgraded directly with pg:upgrade:run; Standard-tier and higher databases can use a dry run, schedule an upgrade for the next maintenance window, or run it manually, with followers upgraded automatically. The in-place workflow uses an internal replica, leaves DATABASE_URL and other config vars unchanged, and typically reduces downtime to about five to ten minutes. The legacy heroku pg:upgrade command will be deprecated soon, although the traditional follower approach remains available."
---

# Heroku Postgres Upgrade Guide: Simplify Your Move to Version 17

[Heroku](https://yomu.fyi/company/heroku) · Kavya Premkumar · May 29, 2025

**Type:** Tutorial

## Summary

Heroku Postgres 17 is now available, and the platform introduces a simplified, self-service path for upgrading managed databases. The new heroku pg:upgrade:\* commands cover preparation, manual execution, cancellation, dry runs, and progress tracking, while email notifications report major stages and detected issues. Essential-tier databases can be upgraded directly with pg:upgrade:run; Standard-tier and higher databases can use a dry run, schedule an upgrade for the next maintenance window, or run it manually, with followers upgraded automatically. The in-place workflow uses an internal replica, leaves DATABASE\_URL and other config vars unchanged, and typically reduces downtime to about five to ten minutes. The legacy heroku pg:upgrade command will be deprecated soon, although the traditional follower approach remains available.

## Context

Postgres versions receive security updates, bug fixes, performance improvements, new features, and compatibility benefits. Heroku currently supports each major version for three years and automatically upgrades databases left on unsupported versions after the deprecation process.

## Approach / What changed

Heroku replaces multiple manual upgrade steps with an in-place workflow using an internal replica and five pg:upgrade:\* subcommands. Dry runs use a follower, while Standard-tier and higher upgrades can be scheduled for a maintenance window or run manually.

## Takeaways

- Essential-tier upgrades require no preparation step: pg:upgrade:run starts the upgrade, using the latest supported version unless --version is supplied.
- For Standard-tier and higher databases, pg:upgrade:dryrun tests a copy through a follower, while pg:upgrade:prepare schedules production work for the next maintenance window.
- Known data or schema issues trigger email remediation steps; unexpected issues can prompt a support ticket, and the upgrade may be automatically aborted for safety.

**Tags:** [Automation](https://yomu.fyi/topic/automation), [Postgres](https://yomu.fyi/topic/postgres)

- Source: [Heroku](https://www.heroku.com/blog/heroku-postgres-upgrade-guide-simplify-move-version-17)
- Source URL: https://www.heroku.com/blog/heroku-postgres-upgrade-guide-simplify-move-version-17
- Ingested by Yomu: 2026-09-10T04:03:16.934Z

[Read original post](https://www.heroku.com/blog/heroku-postgres-upgrade-guide-simplify-move-version-17)
