Review Editorially reviewed

Heroku Review

Worth it for a git-push app with a Postgres add-on. A weak default once the web process outgrows the smallest always-on dyno.

Independently researched. No pay-for-placement. 5 alternatives covered
TL;DR

Heroku is worth it in 2026 when a small team wants git-push deploys and a managed Postgres add-on, and will pay for an always-on dyno. Eco is $5 for 1,000 shared dyno hours a month and sleeps after 30 minutes idle, verified on Heroku's pricing page in September 2026. Basic, the always-on size, maxes at $7 per dyno.

A production web dyno with metrics is Standard-1X and still only 0.5 GB of RAM. Team apps cannot use Eco at all, so a company account starts on the always-on size. The closest replacements are Render, Railway, Fly.io, DigitalOcean App Platform, and Northflank.

Heroku product screenshot
Founded2007
ParentSalesforce
Cheapest dynoEco, 1,000 hours
Best forGit-push apps with Postgres

Heroku is still the platform a Rails or Node team means when they say the app should go live from a git push, and in 2026 that habit has a floor price. Eco is a paid hour pool, not a free dyno, and the always-on size bills even when nobody is hitting the app. A personal project can sleep and a Team app cannot, which is the split in this purchase.

This review prices Cedar dynos, Postgres, and the Private Space that Fir requires, then sets them next to Render, Railway, Fly.io, DigitalOcean App Platform, and Northflank. Stay if the Procfile and the add-on invoice are the workflow you want. Leave if you need more memory than the smallest metrics dyno.

Toolradar data: the September 2026 hosting and deployment ranking evaluated 297 tools, and 230 of them offer a free or freemium plan. Heroku is in that catalog and sits outside the top 10. A dyno that stays awake is a paid line on day one.

How we compared: vendor pricing and product pages read on September 24, 2026. Dyno and data prices are Heroku's published monthly maximums for a resource that runs the whole month. Eco is the exception, a flat subscription whether you use the hours or not. No vendor paid for a place in this review.

What is Heroku?

Heroku is Salesforce's platform as a service, acquired in 2011, which is why Enterprise features and a Salesforce sync sit behind a contract rather than a self-serve switch. You push code, Heroku builds it, and runs each process type in a dyno, so the bill follows process count, not a single app price.

The common runtime is Cedar, where Eco, Basic, Standard, and Performance dynos live, along with Postgres, Key-Value Store, and Kafka. Fir is the Kubernetes generation, and every Fir dyno requires a Private Space, so those shapes are not a cheaper Basic.

Heroku Connect syncs Postgres with Salesforce, and the Demo edition starts free, enough to see the mapping and not enough for production data. Enterprise and Shield editions are limited to Heroku Enterprise customers, so a production sync is a contract.

Managed Inference sits on the same pricing page, with token rates rather than a seat fee, so you pay only when a model is called.

How Heroku works

The everyday loop is a git push and a Procfile, which is the habit you are paying for. The web process and a worker are separate formations, so both running is two dynos, not a bundled app fee.

One-off commands, including Heroku Scheduler, provision a dyno for the length of the command and that time is billed, so a short nightly task is not free.

Eco is only for personal apps, meaning apps that are not in a Heroku Team or an Enterprise Team. The plan is a fixed hour pool for the month, shared by every Eco dyno, review app, and Heroku CI run on that account, so a pull request and the live app spend the same hours.

A web dyno sleeps after 30 minutes without requests, and sleep does not consume hours, so idle time stays inside the pool. A worker-only Eco app does not sleep, because it never sees web traffic, and it can burn the pool around the clock.

When the account hits the full pool, every Eco dyno is forced to sleep until the next month, and Heroku does not sell extra Eco hours. The documented move for an app that must stay up is Basic, roughly $0.01 an hour.

Standard-1X adds metrics, threshold alerts, preboot, and horizontal scale, and the RAM does not increase with those features, so you pay for a safer deploy rather than a larger process. Performance dynos are limited to accounts with an established payment history, so a new team cannot use them as the first production size.

Heroku key features

Cedar dynos, from Eco to PerformanceEssential
Eco is a flat monthly pool for personal apps only, and an idle web dyno sleeps so it stops drawing on that pool. Basic stays up and allows 10 process types, which a Team app has to buy. Standard adds metrics, preboot, and horizontal scale, but the first Standard size does not add RAM. Performance dynos are dedicated compute for larger workloads.
Postgres, Key-Value, and Kafka add-onsEssential
Essential-0 Postgres is 1 GB of disk, 20 connections, and a 4-hour monthly downtime ceiling on shared RAM, so treat it as a prototype. Standard-0 is the first dedicated database, with 4 GB of RAM, 64 GB of disk, and rollback of up to 4 days. Premium-0 adds high availability on that same footprint, a standby rather than more memory. Key-Value Mini is 25 MB, and it runs out once the key set grows.
Fir dynos inside a Private Space
Fir sizes such as dyno-1c-4gb run only in a Fir-generation Private Space, so a Basic app never sees them. The space itself is a separate Elements charge, starting near $1.389 an hour, and the dynos inside are billed on top, so the space fee starts before any Fir dyno does.
Review apps and pipelines
Review apps and Heroku CI draw from the app owner's Eco hour pool when the app is personal, so a busy pull-request week can empty the hours production also needs. Collaborators do not have their own pool: usage lands on the owner, and a teammate's CI run can sleep those dynos for the rest of the month.
Managed Inference
Nova Lite and Claude Opus 4.8 are listed per million tokens, in US and EU, rather than as a seat you pay whether you call them or not, so an unused model adds nothing. MCP tool calls can run as one-off dynos, which means an agent loop pays dyno time on top of the tokens.
Heroku Connect
Connect syncs rows between Heroku Postgres and Salesforce, and Demo is the free start, enough to try the mapping and not enough for production data. Enterprise and Shield Connect are sold only to Heroku Enterprise customers, so a startup on Basic cannot turn the production sync on from the dashboard.

Heroku pricing

Heroku bills dynos on wall-clock time, not CPU time. Anything scaled above zero accrues usage whether or not requests arrive, prorated to the second, except Eco, which is a flat fee for the month you are subscribed. A dyno left scaled up still costs the full month, traffic or not.

A Basic dyno that runs the whole month is the always-on common-runtime size. A Standard-1X web dyno plus a Standard-1X worker is two of those $25 lines, and the database is a third line.

Essential-0 Postgres matches the Eco monthly fee, with a 4-hour downtime ceiling and shared RAM, which fits a side project and fails if that outage would wake a customer, and the dedicated step up is Standard-0.

High availability is Premium-0 at $200, still on the same RAM and disk, with rollback out to 7 days and a 15-minute downtime ceiling.

Kafka's cheapest plan, Basic 0, is $100 a month, often a larger line than the web dyno.

Render's always-on Starter matches that Basic monthly maximum, and its free web instance spins down after 15 minutes inside a 750-hour pool. Railway Pro is $20 per workspace with a matching usage credit and unlimited seats, plus the per-vCPU and per-GB rates in the table.

Fly.io's shared-cpu-1x is $2.02 a month in Ashburn and Amsterdam, and $2.43 in San Jose, so the city is part of the price. App Platform's smallest shared container matches Eco's monthly rate, and a development database is another line at Basic's monthly maximum. Northflank's nf-compute-10 is $2.70 a month for a container you can leave running.

Prices below were verified on each vendor's pricing page in September 2026. Heroku Enterprise, Render Enterprise, Railway Enterprise, and Northflank Enterprise are quotes. Fly.io support is a separate purchase from the machine price.

PlanPriceBest for
Heroku Eco$5 for 1,000 hoursPersonal apps only. Sleeps after 30 idle minutes. Pool does not expand.
Heroku Basic$7/dyno/mo maxAlways on, 10 process types. About $0.01/hour.
Heroku Standard-1X$25/dyno/mo maxMetrics, preboot, horizontal scale. Still 0.5 GB, so extra RAM is a larger dyno.
Heroku Standard-2X$50/dyno/mo maxFirst common-runtime dyno with 1 GB of RAM.
Heroku Performance-M$250/dyno/mo max2.5 GB dedicated. Requires an established payment history.
Heroku Postgres Essential-0Same monthly fee as Eco1 GB disk, 20 connections, 4-hour downtime ceiling, shared RAM.
Heroku Postgres Standard-0$50/mo maxDedicated 4 GB RAM, 64 GB disk, rollback up to 4 days.
Heroku Postgres Premium-0$200/mo maxHigh availability on the same 4 GB. Rollback up to 7 days.
Heroku Key-Value Mini$3/mo max25 MB, 20 connections.
Heroku Kafka Basic 0$100/mo maxSmallest Kafka plan. 3.73 GB, one week retention.
Heroku Private SpaceFrom ~$1.389/hourSpace fee on Elements. Dynos inside are extra. Fir requires a space.
Heroku Fir dyno-1c-4gb$80/dyno/mo max1 vCPU, 4 GB. Private Space only.
Heroku Nova Lite$0.06 / $0.24 per 1M tokensInput / output. US and EU on the pricing page.
Heroku Claude Opus 4.8$5.50 / $27.50 per 1M tokensInput / output. US and EU.
Render Free web$0Spins down after 15 idle minutes. 750 free instance hours a month.
Render Starter webMatches Basic512 MB, 0.5 CPU. Billed while the instance is on.
Render Pro workspace$25/moUnlimited seats. 25 GB bandwidth, then $0.15/GB.
Render Postgres Basic-256mb$6/moFree Postgres expires 30 days after creation.
Railway HobbyFee equals its usage creditSame monthly number as Eco. Stopped services cost nothing.
Railway Pro$20/workspace/moIncludes a matching usage credit. Seats are unlimited.
Railway memory$10 per GB-monthCPU is $20 per vCPU-month past the credit. Egress is $0.05/GB.
Fly.io shared-cpu-1x, Ashburn$2.02/mo256 MB, markup 1. San Jose is $2.43. Card required.
Fly.io volume$0.15/GB/moBilled even if the Machine is stopped. Rootfs on a stopped Machine is the same rate.
DigitalOcean App PlatformSmallest shared container matches Eco512 MiB, 50 GiB transfer. Scalable 1 GiB size is $12/mo.
DigitalOcean dev databaseMatches Basic, per 512 MBExtra outbound transfer is $0.02/GiB. Free tier is static sites only.
Northflank nf-compute-10$2.70/mo0.1 shared vCPU, 256 MB. Egress is $0.06/GB.
Northflank SandboxNo-cost services2 services, 1 database, 2 cron jobs. They do not sleep.

Heroku pros and cons

What we like

  • A sleeping web dyno on Eco does not spend the hour pool, so a quiet personal app can last the month.
  • Standard-1X adds preboot, metrics, and horizontal scale without leaving the common runtime.
  • Essential-0 Postgres, Key-Value, and Kafka share the dyno invoice.

What could be better

  • Team and Enterprise apps cannot use Eco, so the cheapest always-on dyno is Basic.
  • Standard-1X is still 0.5 GB, so the 1 GB common-runtime size is Standard-2X at $50.
  • An empty Eco pool sleeps every Eco dyno for the rest of the month, and extra hours are not for sale.

Who Heroku is for

Heroku fits a small team that wants a Procfile, a Postgres add-on, and a bill made of named dynos rather than a cloud calculator. Personal projects can live on Eco if idle sleep is acceptable. A customer-facing app on a Team starts at Basic, because Eco is refused there, and it should move to Standard once you want preboot and metrics.

It is the wrong default when the process needs more memory than the smallest metrics dyno and you are not ready to step up, or when high availability on Postgres means the Premium plan. Fir and network isolation add a Private Space before the first Kubernetes-shaped dyno, so isolation is a platform fee.

If the workload is a VM you SSH into, read VPS hosting for developers and the DigitalOcean review.

If it is a container you run yourself, the self-hosting tools list is the other path, and it pays off only when someone will patch the host.

Skip Heroku when the front end is the product. A Next.js app is usually a closer call on the Vercel review and the serverless platforms roundup, because an always-on dyno is the wrong meter for a page.

Managed Postgres you want to shop on its own is the Postgres hosting page, with Supabase if the database should be the platform. Pipelines that outgrow review apps belong with the CI/CD tools list.

A monitor that pings an Eco app every minute will keep it awake and spend the hour pool, which is the same failure mode Heroku documents for uptime checks. Production alerts belong on the monitoring tools list, not on a cron that defeats sleep.

Dyno price changes show up in the Devshot brief. Subscribe free if you want that note in the inbox.

Best Heroku alternatives

If Heroku is not the right fit, these are the closest options.

ToolBest forStarts at
HerokuSmall teams that will pay for an always-on dyno and a Postgres add-on.Eco $5 for the hour poolVisit →
RenderTeams that want web, worker, and Postgres services with a free instance for trials.Starter web matches BasicVisit →
RailwayBackends where a stopped service should drop to zero compute.Pro $20/workspace/mo with a matching usage creditVisit →
Fly.ioLong-running Machines placed in a specific region, billed while started.shared-cpu-1x 256MB is $2Visit →
DigitalOcean App PlatformGit deploys when the rest of the stack is already on DigitalOcean.Smallest shared container matches EcoVisit →
NorthflankPreview environments and containers, including a sandbox that stays up.From $2Visit →
Render
A service catalog close to Heroku's, with a free web instance that sleeps and a paid Starter that stays up.
Visit →
Railway
Per-second CPU and memory, with a workspace credit so a stopped service drops the compute line.
Visit →
Fly.io
Firecracker Machines priced by region markup, for a team that cares which city the process runs in.
Visit →
DigitalOcean App Platform
DigitalOcean's PaaS: per-container sizes, a static-only free tier, and a dev database at a flat monthly rate.
Visit →
Northflank
Git-push containers and previews, with a sandbox that stays awake and per-second compute once you outgrow it.
Visit →

The bottom line

Heroku is worth paying for when the workflow you want is a Procfile, review apps, and Postgres on one invoice, and someone will watch dyno count. Eco is a reasonable personal sandbox if sleep is fine.

A Team app should budget Basic at minimum and Standard-1X once metrics matter, and it should not expect the smallest RAM to carry a real worker, because that worker is a second dyno.

Choose Render when you want that service list with a free instance that sleeps on a timer. Choose Railway when a stopped process should cost nothing and seats should not multiply the fee.

Choose Fly.io when the region price is the point.

Choose App Platform when the account is already DigitalOcean, and Northflank when previews and a non-sleeping sandbox matter more than the Heroku add-on catalog.

A cluster, rather than a dyno, is the Kubernetes tools decision.

The Devshot brief is the short version of this bill. Subscribe free if you want the next dyno change in the inbox.

Cite this: Devshot, "Heroku Review 2026", September 2026.

Frequently asked questions

Is Heroku worth it in 2026?
Yes, when the team wants git-push deploys, review apps, and a Postgres add-on on one bill, and will pay for an always-on dyno. Eco is a paid hour pool on personal apps and sleeps when the web process is idle, which suits a portfolio and fails a customer URL. It is a weak default for a Team account, which cannot use Eco, and for any process that needs more than 0.5 GB. The metrics tier keeps that same RAM, and high-availability Postgres jumps to Premium-0 at $200.
How much does Heroku cost?
Eco is a $5 flat subscription for 1,000 dyno hours on personal apps only, so a Team account cannot start there. Basic maxes at $7 per dyno for a full month, Standard-1X at $25, and Standard-2X at $50, all prorated to the second if you scale down. Essential-0 Postgres uses the same monthly fee as Eco, Standard-0 matches that Standard-2X monthly maximum, and Premium-0 is $200. A Private Space starts near $1.389 an hour before the dynos inside it. Prices were verified on Heroku's pricing page in September 2026.
Does Heroku have a free plan?
There is no free dyno, and Eco bills for the month even if you use none of the hour pool, so an abandoned personal app still costs money. Heroku Connect's Demo edition is free, and Managed Inference has no seat fee, but both sit beside dyno charges once an app is running. When the hour pool runs out, dynos sleep until the next month rather than switching you to a paid overage. Render, by contrast, still offers a $0 web instance.
How does Heroku compare with Render?
Both bill a small always-on instance at the Basic monthly maximum, about 512 MB, and Heroku calls that size Basic with no $0 dyno. Render's free web instance spins down after 15 minutes and draws on 750 free instance hours, while Heroku Eco sleeps after 30 minutes inside a paid hour pool. Render's free Postgres expires 30 days after creation, so a trial database is not a long-term store. Heroku Essential-0 does not expire on a timer, and it states a 4-hour monthly downtime ceiling.
What is the difference between Cedar and Fir?
Cedar is the common runtime, home to Eco, Basic, Standard, and Performance, and it is the menu a normal app should stay on. Fir is the Kubernetes generation, with sizes such as dyno-1c-4gb at $80, and it only runs inside a Private Space. The space is its own hourly charge on the Elements listing, billed on top of the dyno, so Fir is a network-isolation purchase rather than a cheaper big dyno. Performance dynos on Cedar also require an established payment history, which blocks a new account from jumping to dedicated compute.
Related guides

Get the Devshot brief

Free daily newsletter, read in 5 minutes.

Subscribe free