heroku / heroku/roadmap

Add a Heroku Postgres Eco Tier

Open
#132 9 comments 13 reactions 1 assignee Assigned to @jbrown-heroku View on GitHub
Data Pricing Proposed
Dominant language
No language data
Stars
225
Forks
19
PR merge metrics
No merged PRs in 30d

Description

### Required Terms

- [X] I agree to follow this project's [Code of Conduct](https://github.com/heroku/roadmap/blob/main/CODE_OF_CONDUCT.md)
- [X] I have read and accept the [Salesforce Program Agreement](https://www.salesforce.com/company/program-agreement/)

### What service(s) is this request for?

Postgres

### Tell us about what you're trying to solve. What challenges are you facing?

The switch to Heroku `Eco` dynos seems to be a nice compromise between free and paying $7/month for each app you have. This is especially true when the app(s) is for prototypes/staging/personal usage. For me personally, I can easily stay within the `Eco` tier limitations for the few personal apps I run for myself and am happy to spend $5 for what Heroku is providing.

However, when it comes to using a database, the pricing is not as "friendly". Since using a DB is basically a necessity, especially when using Heroku because of the ephemeral filesystem, this essentially means each app costs an additional $5. In this case, for me personally, this doesn't seem worth it. When I'm storing `100s` of rows, `< 50MBs` of data, and really only running the dynos the database is attached to for `< 15` hrs/month, it is difficult for me to justify to myself the $5/app price. It is difficult to justify because for each app I am running like this, I am barely using the DB resources I am paying for. But because it is a per app price, I end up having to buy another database plan and waste most of the available resources.

I don't know how many other people are in a similar situation as I am. But I would think there are various situations where it would be great to pool your database plan limits across multiple DBs, similar to how `Eco` dynos work. Rather than a pool of hours, you would get a pooled row limit, storage capacity, etc. This way each database would still be completely separate and conveniently attached to a specific app, but from Heroku's perspective users couldn't abuse DB usage like with the previous free tier offering. If the `Mini` plan's specs were used for an `Eco` database plan, that would work well for me. And if a particular DB got too big, I could then pay to bump it up to the "normal" tier where it has its own set of specs/resources, again similar to how Heroku has setup dyno plans.

I would love to keep using Heroku Postgres because it works well, I like that it is managed, and I don't mind paying for it. It just seems silly to me to pay for something that I am essentially barely using. I would personally rather pay a fixed cost for a plan and know that I can run multiple databases within its limits. For example, I find the idea of using DigitalOcean's Managed Postgres appealing because it doesn't cost more if I create more DBs. There are tradeoffs, but it is a very compelling option for my use case. If Heroku were to offer something like this, for me, the limits of the `Mini` plan are fine. I would be curious what others think about this. And I'm sure Heroku has data around how much of the DB limits people are actually using, so I would be curious what someone from Heroku thinks as well.

I realize this is only going to be useful for a certain group of people, like myself, who are not running anything big and are not generating any money with an app (if I was I wouldn't mind paying for that app). But I hope there are enough people that do fit this bill that it could be worthwhile for Heroku to look into and perhaps even offer!

Thanks!

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.