qeda-logo
COMPARISON

A Heroku Alternative That Can Actually Take Your Money.

Every replacement list assumes you hold a dollar-billable card. Here is what changes when you don't: mobile money, local currency, and no card at any point.

Chidi Okonkwo
Chidi OkonkwoSolutions Engineer · Qeda Cloud
HerokuMigrationComparison
7 min read

When Heroku removed its free tier, most developers shrugged and moved to Railway, Render or Fly. If you are building from Dakar, Lagos, Accra or Nairobi, that list quietly excluded you: every one of them bills in dollars against a card that most local banks do not issue.

So the real question is not "what replaces Heroku". It is "what replaces Heroku and can actually take my money". This article answers that, and shows what the move actually involves.

What you are actually looking for

Heroku's appeal was never raw power. It was that git push put an application online, with a database one command away and nothing to configure. Any replacement has to keep that, and add the thing Heroku never had: a way to pay that works where you live.

  • Push a Git repository, get a running application at an HTTPS URL
  • A managed database you do not administer yourself
  • Environment variables, logs and metrics without extra tooling
  • Billing you can settle from your phone, in your own currency

How Qeda compares

The deployment model is deliberately familiar. Connect a GitHub repository, Qeda detects the stack, builds the image and runs it — Node.js, Python, Go, PHP, Ruby, or anything with a Dockerfile. You get a public HTTPS URL with the certificate handled for you, and you can point your own domain at it.

Managed PostgreSQL, MySQL, MongoDB and Redis attach to a project and inject their connection details into your application as environment variables. You never write a host or a password into your code.

The familiar part: push, build, run — with logs and metrics in the same place.

What differs is underneath the billing. There is no monthly plan and no dyno. You top up a prepaid wallet, and the platform debits it hourly for the CPU and memory you have allocated. Stop the service and the debit stops.

The part the others cannot match

You top up with mobile money — Wave, Orange Money, MTN Mobile Money, Moov — or a local card, in your own currency. No international card, no dollar conversion, no bank declining a foreign merchant on your first deploy.

And prices are set per country rather than converted at checkout. The same base unit, 0.5 vCPU and 1 GB of RAM for a month, is 3,700 XOF in Senegal, 9,500 NGN in Nigeria, 950 KES in Kenya, 80 GHS in Ghana, 95 ZAR in South Africa — adjusted for local purchasing power, not translated from a price set for California.

The hardest part of shipping was never the deployment. It was the checkout page.

What you gain in the move

Two things Heroku never offered, both consequences of the prepaid model.

You stop paying the moment you stop running. There is no plan renewing in the background. A demo you deploy for a client on Monday and delete on Tuesday costs you one day of compute, not one month of subscription.

Your ceiling is a number you set. Hand a junior developer a project with a fixed balance and you know the exact maximum it can spend. That guarantee does not exist on any card-billed platform, where the limit is whatever the card allows.

And the familiar parts stay familiar: environment variables, streaming logs, a managed database one click away, and a public HTTPS URL with the certificate handled for you.

Moving an existing Heroku app

The work is usually smaller than expected, because a Heroku application is already built the way a container wants.

  • Your app already binds to $PORT — Qeda injects the same variable
  • Your config vars become environment variables in the Variables tab
  • Your Procfile start command goes in the service settings, or is detected
  • DATABASE_URL is injected the same way once you attach a PostgreSQL companion

The one step that needs care is the data. Export with pg_dump, create the companion, and restore into it before you switch your domain over. Do it in that order and the cutover is a DNS change.

$ pg_dump $OLD_DATABASE_URL > backup.sql
$ psql $NEW_DATABASE_URL < backup.sql

What it costs to try

During the beta, nothing — no card, local or international. When billing opens, beta members keep preferred rates, and you will be topping up a wallet rather than committing to a plan.

💡

Because the wallet is prepaid and debited hourly, an application you deploy to show a client on Monday and delete on Tuesday costs you one day, not one month.

Getting started

Create an account, choose the country you operate from — it sets your currency and price grid permanently — connect a repository and deploy. If the build fails, Qeda names the cause in plain language instead of handing you a log to decipher.

Ready to move off Heroku?

Connect your repository, attach a database, and pay from your phone.