Guides / When something already went wrong
Heroku deleted your app, or your account, and the database went with it.
Heroku has deleted inactive accounts since late 2022, and free Postgres plans ended the same year. If an old app has disappeared, this is usually why. Whether anything is recoverable depends on what tier the database was on and how long ago it happened.
What happened
Heroku treats an account as inactive when the owner has not logged in through the dashboard, CLI or API for 365 days and no paid resources were used in the last six months. Inactive accounts are deleted together with any unpaid apps and add-ons that belong only to them. Paid apps and add-ons are not deleted, though Heroku still asks you to log in periodically.
Heroku says that after an account is deleted for non-payment, database backups may still exist for Heroku Postgres Standard-0 and higher for up to ten days, provided the account had a positive payment history. There is no such statement for the smaller Essential and Mini plans, so assume nothing is kept for those.
What to do right now
- Account deleted within the last ten days and the database was Standard-0 or above: open a Heroku support ticket now and ask whether a backup still exists.
- The app is gone but the account is not: check the Heroku scheduled backups you may have had with
heroku pg:backups -a <app>; if the app no longer exists the backups went with it. Look for downloaded copies fromheroku pg:backups:downloadon old laptops and in CI artifacts. - Neither applies: Heroku has nothing. Search your own systems for the last export, migration dump or development copy.
So it does not happen again
Heroku's own pg:backups are a real logical backup (a pg_dump behind the scenes) but they live inside the app: delete the app or lose the account and they go too. Either download them on a schedule, or have the dump written somewhere Heroku cannot delete. Dumpling connects to the database's credentials from heroku pg:credentials:url, takes the dump on a schedule, verifies it, and stores it in a bucket you own. Note that Heroku rotates credentials on some maintenance events, so a failed-run alert is worth keeping on.
# restoring a Heroku dump anywhere createdb restored_db pg_restore --no-owner --no-acl -d restored_db heroku.dump
Scheduled, verified dumps into a bucket you own. One database with daily backups is free, no card.
Sources
Provider facts checked on 2026-09-18. Policies change; the pages below are the authority.
- Heroku help: What happens if I take no action on my inactive account?
- Heroku help: What criteria are used to determine if an account is inactive?
- Heroku help: What should I do if my Heroku account is deleted?
- Heroku Dev Center: Heroku PGBackups