DEV Community 👩‍💻👨‍💻

David Babalola
David Babalola

Posted on

Free Alternatives to Heroku

Given the recent news about Heroku bringing an end to free dynos and PostgreSQL databases, what other free platforms can I use to host Django (Python) powered web applications for free.

Top comments (62)

Collapse
 
jnv profile image
Jan Vlnas • Edited on

Services which come closest to Heroku's convenience with free tiers are Fly and Render. Render seems to offer Postgres on a free plan. Another option is Railway which AFAICT doesn't have a free tier, but basic usage is quite cheap.

Check out this list for more services with free tiers (not just PaaS like Heroku): github.com/ripienaar/free-for-dev

Collapse
 
katafrakt profile image
Paweł Świątkowski • Edited on

Bear in mind that free databases on Render are deleted after 90 days. That's not 90 days of inactivity, just 90 days after creation. They say it's a temporary measure and the are going to change it in the future (which I hope for), but for now it's not really a viable alternative for Heroku.

Collapse
 
jnv profile image
Jan Vlnas • Edited on

Good point! So it may be better to look at external DBaaS providers. For Postgres/relational databases there's aforementioned CockroachDB, and some others like PlanetScale, ElephantSQL, and YugabyteDB (Managed).

Collapse
 
kissu profile image
Konstantin BIFERT

Damn, thanks for the tip! 👌🏻

Collapse
 
tnypxl profile image
tnypxl

AFAICT = As far as I can tell

Because it took me longer that it should have to figure that out.

Collapse
 
amanuelabay profile image
Amanuel

good tips

Collapse
 
willnode profile image
Wildan Mubarok • Edited on

I've been working on my own cloud platform since 2 years ago because none cloud services (even heroku) is good enough to me. It has a free option (1GB storage) for everybody and it support Django and/or other languages.

Collapse
 
pahosler profile image
pahosler

signed up, but there is an error setting up ssl

There were too many requests of a given type :: Error creating new order :: too many certificates already issued for: domcloud.io: see https://letsencrypt.org/docs/rate-limits/
Ask for help or search for solutions at https://community.letsencrypt.org. See the logfile /var/log/letsencrypt/letsencrypt.log or re-run Certbot with -v for more details.
Enter fullscreen mode Exit fullscreen mode

also can you update rust or allow access to rustup?

thanks

Collapse
 
willnode profile image
Wildan Mubarok

That SSL error means the static files path aren't adjusted properly in NginX. I should write docs for that. Fire up an email if you need help to solve that.

Rust can be installed with SSH/without sudo: webinstall.dev/rustlang/

Thread Thread
 
pahosler profile image
pahosler

ah ok, thanks!

Thread Thread
 
pahosler profile image
pahosler

and nope, had already tried that, but rust is already installed, and rustup isn't available.

Collapse
 
sokhavuth profile image
Sokhavuth TIN • Edited on

You could try Vercel.com. It supports Node.js, Python, Go, Ruby. And you can add your own preferred language if you want. It is very similar to Heroku. You could follow the link below to setup and deploy Django to Vercel.
devmaesters.com/blog/15

Collapse
 
allobrox profile image
Tamas Rigoczki

I don't know anything Python related, but I have 2 database suggestions:

  • Supabase, it has a very generous Postgres free tier

  • CockroachDb Serverless, it also has a generous free tier. It is a NoSQL database with SQL query language, very similar to Postgres. I think it is worth a try.

Collapse
 
guithomas profile image
Guilherme Thomas

Saw a lot of recommendations of Supabase on reddit. Gotta give a try.

Collapse
 
kostjapalovic profile image
Kostja

Hey, David.

Specifically for Django, check out appliku.com/.

Builds are super fast for Django.
PostgreSQL, Redis.

A whole year of free hosting with AWS Free tier. As far as I know, GCP also offers a free tier.

It works with any cloud provider, so you can pick Hetzner later and save an insane amount of money compared to AWS, DO, and others.

I started working on Appliku 3 years ago and posted the story here dev.to/kostjapalovic/tired-of-depl....

Collapse
 
daveson217 profile image
David Babalola Author

Thank you. I would look into it.

Collapse
 
jmfayard profile image
Jean-Michel Fayard 🇫🇷🇩🇪🇬🇧🇪🇸🇨🇴

The question that you should not overlook:

Will the currently free alternatives to Heroku will stay free?

I think the problem is the business model free and "Pedos, Crypto and Nazis"

Heroku is removing the free tier

That sucks especially for students who owed heroku to have a simple way to show their work to the world

Where can I find free heroku alternatives?

I understand the rush to ask this question, but this ignores the structural issue which is the dark side of the internet:

Pedos, Crypto and Nazis

Every free tier offering, every free CI service, every free cloud service, every free storage situation, ... is being targeted by people highly motivated to let the free tier offering do their super illegal things, super morally répréhensible things and super wasteful "proof of work" "get rich quick" bitcoin shit.

So your alternative which is free today might well take the same decision tomorrow.

The other important question is "how do people offering free stuff make money in the long run?".

There is no way around this question and it's especially difficult if you also have to waste a lot of resources fighting pedos, crypto and Nazis.

Collapse
 
agonzales profile image
Alexandre Gonzales

You have a real point here. Fighting illegal content is a problem.
At Qoddi we solved it by a strict scoring using anti-fraud API + by requesting a credit card on file to use our free tier along with automated and human moderation.
It's not perfect but we think free tier are very important for two types of people:
1/ future paying users that want to try Qoddi before using paid ressources,
2/ Students and people that wants to learn code and don't want to pay for non-production apps.

I think being able to provide a free tier for those two types of users is very important.

It costs money sure, but we provide ressources that are in line with those two usages: limited amount of RAM, shared CPU and no custom domains. If you need more you probably have a production app and our first size costs only $6 a month.

Offering a free tier is cheaper than spending a lot on Google Adwords for users that will not be able to test our service before moving prodution ressources to us, in my opinion it's worth it and we don't have any plan to suspend or remove our free plan in the future.

Alex.

Collapse
 
sokhavuth profile image
Sokhavuth TIN • Edited on

By browsing this GitHub repository github.com/ripienaar/free-for-dev, I found out that this web hosting Deta offers free hosting service and unlimited applications & database. However, at the present time, it supports only Node.js and Python with micro-frameworks such as Express, Bottle.py, Flask, FastAPI etc. I did not try it yet. It is people from Germany who are building this Deta platform.

Collapse
 
jnv profile image
Jan Vlnas

Deta is nice, but you need to specifically design your app around their platform, like their serverless containers (Micros) and NoSQL database (Base). So Django and Postgres from the original question are nonstarters.

Collapse
 
sokhavuth profile image
Sokhavuth TIN • Edited on

I just want to give some clue for people who want a free alternative to Heroku, not just to host Django and Postgres.

Talking about Deta Micros, it just two lines of code, that is it.

# to create a project locally and on Deta platform
deta new --python myproject

# to deploy the updated project to Deta
deta deploy
Enter fullscreen mode Exit fullscreen mode

The rest is the regular Python language and framework.

For Deta NoSQL database, there are only 6 methods to interact with the database.

put – Stores an item in the database. It will update an item if the key already exists.
insert – Stores an item in the database but raises an error if the key already exists. (2x slower than put).
get – Retrieves an item from the database by its key.
fetch – Retrieves multiple items from the database based on the provided (optional) filters.
delete – Deletes an item from the database.
update – Updates an item in the database.

Data entry in Deta Base is JavaScript object called "document" like in many other NoSQL databases.

Collapse
 
ironcladdev profile image
IroncladDev

If you're looking to host python apps quick and easy, I'd suggest replit.com for that. If you would like a more secure and powerful environment in terms of uptime, I'd suggest qovery.com for putting your app on AWS and hosting it in the cloud

Collapse
 
lukeecart profile image
Luke Cartwright

You could use Netlify which will create a static site?

answers.netlify.com/t/can-i-deploy...

Collapse
 
elonsalfati profile image
Elon Salfati • Edited on

I'm actually working on a new project that's mostly desgin to support scaling products on more traditional cloud vendors. If that's the case you can check Nopeus

I'm also planning on releasing Nopeus Cloud as a vendor with a free tier soon. I would love to learn more if you have specific requirements.

Collapse
 
arjundev profile image
Arjun

My team and I were in search of an answer for this question few months back. Being a startup, most options available out there were either too simple (not scalable) or too complicated (requires a dedicated DevOps engineer). Our search ended up in the creation of Patr.

What Patr has achieved is simplicity and scalability at an affordable price. In your case, It would hardly take you a minute to deploy your Django application on Patr. The free plan offers a multitidue of benefits ranging from free databases, static sites, deployments to RBAC and DDOS Protection. We are also working on including Buildpacks in our In-house CI.

That being said, we are still at beta and are open to feedbacks and feature suggestions.

Collapse
 
paulonteri profile image
Paul Onteri • Edited on

How to Set Up Your Own Heroku-like Cloud (PAAS) in 10 Minutes

When building new projects, it’s usually annoying to repeatedly set up stuff like web servers, databases, etc. It’s often expensive or tedious to set up and manage. That’s where open-source PAASs came in. They are free and often have an easy to use app/database deployment & web server manager.

paulonteri.com/thoughts/how-to/set...

Collapse
 
sebbelese profile image
Sébastien Blaise • Edited on

Just wanted to share my django migration experience from Heroku to qoddi.com and Fly.io free tiers. They both need a credit card but free tier can be used for small applications.

qoddi.com

Probably the easiest way to migrate a django project from heroku:

Good

  • supports django-heroku, very easy migration, only needed to update allowed hosts
  • automatic deployment when pushes are made to github repository
  • included postgresql database
  • apps do not sleep

Less good

  • no custom domain for free tier. This was a showstopper for me.
  • I do not think that there is a CLI. We can add collectstatic and migrate in the Procfile, but I do not know how to do e.g. createsuperuser. Maybe I missed something.
  • no community/tutos

Fly.io

More complicated to setup, lacking doc/tutorials as compared with Heroku. But has all the features that I used with Heroku free tier with ssl as a bonus.

Good

  • included postgresql database
  • apps do not sleep
  • free use of custom domain
  • free ssl, easy to setup

Less good

  • migration from Heroku a bit more complex (I used Docker which helps)
  • lacking django doc/community

My app is now on fly.io and I am quite happy

Collapse
 
dasheck0 profile image
Stefan Neidig

When it comes to databases I'd like to point out that serverless becomes a thing. There is a serverless MongoDB (they also have a free tier) and a serverless Aurora DB (from AWS) which costs $0.22 per 1 million requests. It is not free, so it might not be what you are looking for but it's the next best thing. Hope this helps

Collapse
 
rophilogene profile image
Romaric P.

If you are looking to move out of Heroku for AWS - then Qovery is the best option out there with more than 200 hundreds companies that have moved out of Heroku for AWS with Qovery.

ps: I am co-founder of Qovery.

What image format should you use in your next project? 🤔