Heroku to Scaleway in an hour.
Your data stays in Europe.
One command. An agent reads your repository and deploys it into the Scaleway project you already own - in EU data centres, outside US CLOUD Act reach.
“We migrated our whole staging environment with a single prompt. Production was a one-click clone of staging. Once the tests gave us confidence we moved DNS off Heroku - we have been running production on our own cloud with Qovery ever since.”
“We liked the Heroku experience, and we knew the cloud meant skills and effort we did not have spare - that is why we kept putting the migration off. We do not regret doing it with Qovery. Deployments that took me over two hours now take 30 minutes.”
Three steps, then the agent does it.
Your side takes about five minutes. Everything after that is automated.
- 01
An API key pair provisions the network and a Kapsule cluster in your own project - about twenty minutes, and nothing leaves your boundary. Qovery gets a role you can read, scope down or revoke. Talk to a migration engineer before you connect anything.
- 02
One command teaches your coding agent how to read the repository - a Procfile, a Dockerfile, a buildpack, a set of config vars - and describe the deployment in Qovery’s own terms. Nothing is deployed at this point. You are only giving the agent the vocabulary.
- 03
The agent detects every service, writes a Dockerfile where one is missing, maps your Heroku config vars to Qovery variables and secrets, and shows you the plan. You approve it before a single resource is created - and your Heroku Postgres stays where it is, connected over the network, so you validate against real data before migrating a byte.
- 04Optional
Take this first or last - some teams want it as step zero, before they connect anything. A Qovery staff solution engineer reviews the cluster setup and environment layout with your team, then goes through the practices that keep the estate cheap and quiet: node sizing and Spot policy, autoscaling thresholds, preview-environment lifetimes, secret scoping and how to promote the same artifact between stages.
- network
- your VPC, three fixed egress IPs
- cluster
- Kapsule, in your region
- access
- a role scoped to Qovery
Works with any coding agent that reads skills. Nothing is deployed at this point.
web Node.js 20 Dockerfile generated worker Node.js 20 detected from Procfile scheduler cron 2 jobs database PostgreSQL 15 connected remotely
Nothing has been created yet. You approve the plan first.
- cluster
- node sizing, Spot policy, autoscaling
- workflow
- stages, approval gates, preview TTLs
- access
- secret scoping, roles per environment
From there it is automatic. Your apps come up running and live on Scaleway, reachable on a public URL - while the Heroku stack keeps serving traffic untouched.
You pay Scaleway. Usually the lowest of the four.
Heroku charges you for dyno hours. Scaleway charges you for what you use, at European pricing, with a free Kapsule control plane where EKS bills per cluster hour. For teams leaving Heroku mainly on cost, this is usually the largest single reduction.
Moving a workload off Heroku onto Scaleway usually cuts infrastructure cost - up to 60% for the same workload that was running on Heroku.
* Depends on your dyno counts and sizes, add-ons, data volume and region. A migration engineer will model your estate against the equivalent Scaleway shape before you commit to anything.
Why teams pick Scaleway over the three hyperscalers.
Scaleway is chosen for two reasons that have nothing to do with feature breadth: who owns the company, and how little arithmetic the pricing requires.
French-owned, so no US CLOUD Act exposure
- AWS, Google Cloud and Azure are US-headquartered, which means data they hold can fall within the reach of the US CLOUD Act even when it is stored in an EU region. Scaleway is a French company operating EU data centres, so that particular exposure does not arise. For teams whose customers ask where the data lives and who can compel access to it, this is usually the whole decision.
Paris, Amsterdam or Warsaw
- Every region is inside the EU. There is no configuration mistake that quietly places a replica or a backup on another continent, because there is no other continent available. Residency stops being a policy you have to audit and becomes a property of the provider.
Flat pricing, no commitment to model
- The hyperscaler discount mechanisms - reservations, savings plans, committed use - all require you to forecast a year or three of consumption to reach a good rate. Scaleway publishes lower list prices instead, which for a team leaving Heroku means the cost comparison is a subtraction rather than a modelling exercise, and no one has to defend a three-year commitment to a CFO.
Our control plane. Your account, your bill.
Qovery sits above the infrastructure and never owns it. Every cluster, database and bucket is provisioned inside the Scaleway project you already hold - Scaleway invoices you directly.
- We do not take a cut of your Scaleway spend. A flat subscription, whether your bill is $2k or $200k.
- We push it the other way: idle nodes, oversized requests and preview environments left running get flagged so you stop paying for them.
- Heroku and the PaaS successors run all of this in their account. Qovery runs it in yours.
Not sure which Scaleway services fit your workload? A solution engineer will map it with you.
Stop paying Qovery and the stack keeps running - the manifests and qovery/qovery Terraform are already in your account.
Your first app on Scaleway,
live within the hour.
Paris, Amsterdam and Warsaw - EU-only by construction. Nothing you do here touches your existing Heroku stack until you decide to move the domain.
Heroku to Scaleway
Something not covered here? Talk to a migration engineer - they have done this on estates larger than yours.