DEV Community

Free Alternatives to Heroku

David Babalola on August 26, 2022

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.

Collapse
 
jnv profile image
Jan Vlnas • Edited

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

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

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).

Thread Thread
 
amyliumaiyi profile image
Amy Liu

Supabase is vanilla postgres and very generous free tier

Thread Thread
 
jnv profile image
Jan Vlnas

Thanks for the tip. I didn't consider Supabase for their managed database but I will check it out.

I don't consider Supabase as a Heroku-equivalent replacement, since it supports only short-lived database / edge functions and triggers. Heroku and the likes can run a “traditional”, persistent application server.

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
 
steve_val profile image
Steve_Val • Edited

can confirm Supabase is incredible.

  • Open Source
  • Huge and helpful community
  • Incredible support team

It ticks all the boxes

There is also a python client library for use with Django (or you can connect to it the same way you would any other PostgreSQL db since it's just vanilla pg under the hood)

Collapse
 
daveson217 profile image
David Babalola

Thank you for letting me know this.

Collapse
 
sokhavuth profile image
Sokhavuth TIN • Edited

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
 
jiachengteo profile image
Teo Jia Cheng

Vercel is very solid

Collapse
 
willnode profile image
Wildan Mubarok • Edited

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
 
Sloan, the sloth mascot
Comment deleted
Collapse
 
zernonia profile image
Zernonia

Agree! Supabase is 🔥

Collapse
 
monicakh profile image
Monica El Khoury • Edited

Supabase is indeed a fantastic choice! It provides a simple interface for working with Postgres database, and the free tier makes it an accessible option for developers of all skill levels ⚡️

Collapse
 
awalias profile image
awalias • Edited

Supabase ftw

Collapse
 
mildtomato profile image
Jonathan Summers-Muir

⚡️⚡️⚡️

Collapse
 
daveson217 profile image
David Babalola • Edited

Sounds interesting. I would look into it. Thanks a lot.

Collapse
 
sokhavuth profile image
Sokhavuth TIN • Edited

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

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
 
kostjapalovic profile image
Kostja Appliku.com

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

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
 
lukeecart profile image
Luke Cartwright

You could use Netlify which will create a static site?

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

Collapse
 
ironcladdev profile image
Conner Ow

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
 
supabase_io profile image
Supabase

Thanks for the shout-out @allobrox !

For those asking - yes Supabase is just Postgres, and you can connect directly using the pg connection string, so it works perfectly with all of your existing postgres tools and ORMs

Collapse
 
karbust profile image
António Carlos Silva

For a database, Supabase is a great alternative with a generous free tier, it has a 7 day suspension in case of inactivity (the project can be re-enabled manually in their dashboard). For other backend services I don't really know anything.

Collapse
 
amyliumaiyi profile image
Amy Liu

+1 for Supabase

Collapse
 
sebbelese profile image
Sébastien Blaise • Edited

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
 
paulonteri profile image
Paul Onteri • Edited

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
 
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
 
elonsalfati profile image
Elon Salfati • Edited

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
 
yeukfei02 profile image
Donald Wu

railway can free for 500 hours
I think use digitalocean is also a nice option for pay service.
If not I think use serverless, like aws lambda, digitalocean functions, google cloud functions or azure functions..these can reduce cost

Collapse
 
miachrist profile image
Mia Christ

The free-tier alternative to Heroku that I am using is Back4app Containers. I started using this platform when Heroku ended its free service and never looked back. It is not only about the free plan but running Docker files, PostgreSQL, Redis, and Node.js support also makes it a perfect PaaS solution for users.

Smooth UI and integration with GitHub repositories also make it a top-notch platform to run, deploy and host containerized applications. New developers can also utilize this CSP without having any particular skills.

Collapse
 
makvoid profile image
Michael King

HarperDB has a free tier available which allows you to store data, host custom Fastify-powered controllers (Custom Functions) and even host static HTML like a bundled web app. It's pretty great for full-stack projects as it can handle everything and really simplifies the project. You can also use it locally but the Cloud Instances they offer work well.

I've been using the free tier for a few months now and I don't have any complaints.

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.

Collapse
 
ada_pow profile image
Ada Powers • Edited

No one has mentioned convox.com

PaaS that automates your K8s based deployments with zero downtime, and stays free forever (for up to 2 workflows).

Only upgrade to a paid plan (predictable cost unlike Heroku) once you gain confidence in the system

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
 
alisdairbr profile image
alisdairbr

Koyeb is an alternative to Heroku for deploying Django web apps. You can deploy and 2 services with the monthly free credit.

You can sign up and start getting started here: app.koyeb.com/

Collapse
 
rophilogene profile image
Romaric P.

If you are looking for an alternative to Heroku Enterprise; then checkout Qovery which provides the Heroku-like experience on top of AWS.

Disclaimer: I am one of the Qovery co-founders.

Collapse
 
bscott profile image
Brian Scott
  • Fly.io
  • Supabase.io
  • Vercel
Collapse
 
darshanputtaswamy profile image
L0ny1ucif32
Collapse
 
touhidrahman profile image
Touhid Rahman

I like Digital Ocean App Platform. The other day I found Hostman but have not tried yet.

Collapse
 
rromanv profile image
Rodolfo Román

I use Coolify, Is a really cool and simple self hosted solution, I even use it with my college students.

Collapse
 
laweyez profile image
Bioga Allen

You could try Cyclic. What Vercel is to Next.js is what Cyclic is to Node.js. Just connect you github repo and press Deploy.

Collapse
 
fredysandoval profile image
Fredy Sandoval

Google Cloud free tier

Collapse
 
jacksonkasi profile image
Jackson Kasi

thanks for share with us :)

Collapse
 
beamerboi profile image
Ghassen Jemaî

I am sure that Azure and AWS offers a free plan too

Collapse
 
furkanulutasx profile image
Furkan

use Vercel.

Collapse
 
vulcanwm profile image
Medea

I recommend replit.com as it’s an IDE as well as somewhere where you can host websites for free.

Collapse
 
agonzales profile image
Alexandre Gonzales

qoddi.com is compatible with most of heroku buildpacks and our free tier includes 3 apps.

Collapse
 
x0rld profile image
x0rld

you can use alwaysdata

Collapse
 
bscott profile image
Brian Scott
Collapse
 
korostelevm profile image
Michael Korostelev • Edited

cyclic.sh - its like vercel but for backend

Collapse
 
stanciudragosioan profile image
StanciuDragosIoan

I can t believe no1 mentioned glitch.com/ .

Amazing service from them (and I don t get paid to say this :D)

Collapse
 
lukeecart profile image
Luke Cartwright

This also might be of use to you.
render.com/blog/migrate-django-fro...

Collapse
 
gebertdominik profile image
Dominik Gebert

I’ve done some research to find alternatives to heroku, and created an article based on that. If anyone interested: dmnk.hashnode.dev/free-heroku-alte...

Collapse
 
goldfinger profile image
Caleb

Serverless can help you utilize a free AWS tier significantly easier than using AWS directly.

Collapse
 
mattedwards profile image
Matt Edwards
Collapse
 
vyvyvi profile image
Vyvy-vi (Vyom Jain)
Collapse
 
jacksonkasi profile image
Jackson Kasi • Edited

why you can try deta.sh/

Collapse
 
tomzur profile image
Tomzur 🚀✌️

Kinsta is also a Heroku alternative, not free as the ones mentioned in the list but it comes with $20 free credit you can use to test the service.

Collapse
 
trymzet profile image
Michał Zawadzki

Dokku running on a VM from any cloud

Collapse
 
ruanbekker profile image
Ruan Bekker

deta.sh

Collapse
 
agonzales profile image
Alexandre Gonzales

qoddi.com is compatible with most of Heroku's buildpacks, we have databases and Django in our free tier, our apps never sleeps are not deleted. Let me know if you need help!

Collapse
 
fahari profile image
Kevin

You could try Dokku. An open source PAAS alternative to Heroku. Link: dokku.com/

Collapse
 
ceelsoin profile image
Celso Inácio

if you are looking for self hosted PaaS, tsuru is a good open source alternative to heroku tsuru.io

Collapse
 
pacdev profile image
pacdev • Edited

pythonanywhere is great and offers Django hosting app implemented (Flask as well).

Collapse
 
velocirraptora profile image
nikki

This service is also very nice! i don't know if they're still having free trials but for big application is cheaper than Heroku!
doprax.com/