Raff wins on fixed application tiers, $0 public egress, full Docker Compose import, first-party managed data services, and a spend cap enabled by default. Heroku wins on its mature add-on ecosystem, Pipelines and Review Apps, 12 published runtime-region choices across Common Runtime and Private Spaces, dedicated Performance dynos, and Salesforce enterprise integration. Choose Heroku when its established delivery workflow, Private Spaces, ecosystem, or Salesforce alignment are requirements; choose Raff when us-east, predictable service ceilings, Compose portability, and transfer simplicity fit the workload. Raff Apps starts at $3/month, while Heroku starts at $5/month for the Eco plan or $7/month for an always-on Basic dyno.
Heroku and Raff Apps are both managed application platforms, so this is a direct PaaS comparison rather than a PaaS-versus-VM comparison. Heroku packages applications around dynos, process types, buildpacks, Pipelines, Review Apps, add-ons, and its Common Runtime or Private Spaces. Raff Apps packages web services, private services, workers, cron jobs, previews, managed data, persistent volumes, and container workflows around published service ceilings and $0 public application egress.
Heroku vs Raff: which is right for you?
Choose Heroku when the application already depends on Heroku conventions or when its ecosystem reduces more engineering work than a lower infrastructure bill would save. Choose Raff when the team wants a smaller operating surface, clear service ceilings, Docker Compose portability, and fewer variable transfer costs.
| Decision factor | Choose Raff Apps | Choose Heroku |
|---|
| Entry app price | $3/month Micro ceiling | $5/month Eco or $7/month Basic |
| Billing preference | Per-second runtime to a published monthly ceiling | Wall-clock dyno usage; Eco uses a pooled 1,000-hour plan |
| Geography | One public us-east region fits | US/EU Common Runtime or one of 10 Private Spaces regions is required |
| Deployment artifact | Docker Compose, Dockerfile, image, GitHub, or buildpack portability matters | Procfile/buildpack conventions and Heroku-native workflows matter |
| Delivery workflow | Raff previews and immutable revisions are enough | Pipelines and mature Review Apps are central |
| Ecosystem | First-party Raff cloud products fit | Heroku add-ons reduce integration work |
| Public transfer | $0 public app egress matters | Heroku's 2 TB soft per-app bandwidth limit fits the workload |
A practical decision rule from Raff's product and customer work is to price the whole application stack, not one web process. Web services, workers, previews, databases, durable storage, outbound traffic, and platform-specific integrations usually explain more of the long-term cost than the smallest runtime card.
For the broader deployment decision, read Cloud VM vs App Platform for Startups.
Heroku overview
Heroku is a managed cloud application platform operated by Salesforce. Applications run in dynos, Heroku's managed application containers, and teams deploy through source-based build workflows or container-based paths depending on the runtime generation and application configuration.
Current Common Runtime pricing starts with Eco at $5/month for a shared pool of 1,000 dyno hours. Eco dynos have 512 MB RAM and sleep after 30 minutes of inactivity. Basic costs $7/month for an always-on 512 MB dyno. Production Common Runtime tiers include Standard-1X at $25/month, Standard-2X at $50/month, and Performance-M at $250/month with dedicated compute.
Heroku bills non-Eco dynos by wall-clock runtime and prorates usage to the second. A dyno accrues usage while scaled above zero whether or not the application is actively handling requests. Review Apps and one-off dynos also accrue usage while running.
Heroku's delivery workflow is one of its clearest strengths. Pipelines model development, review, staging, and production stages, while Review Apps can create disposable applications for pull requests. The platform also provides release history, rollback, logs, metrics on eligible tiers, add-ons, managed data products, and mature developer documentation.
Geography is another substantive advantage. Heroku currently lists 2 Common Runtime regions — United States and Europe — plus 10 Private Spaces regions: Dublin, Frankfurt, London, Montreal, Mumbai, Oregon, Singapore, Sydney, Tokyo, and Virginia. Private Spaces provide isolated network environments for enterprise workloads.
Heroku is also moving from its Cedar generation toward Fir. Fir Private Spaces are generally available, but generation-specific feature differences still matter during deployment and migration, so teams should verify whether an application depends on Cedar-only behavior before moving runtimes.
Raff overview
Raff Apps is Raff's managed application platform for deploying source code and containers without administering the operating system underneath the service. It supports GitHub push-to-deploy, buildpacks, Dockerfiles, existing container images, and full Docker Compose imports.
Raff Apps supports public web services, private services, long-running workers, timezone-aware cron jobs, one-off jobs, pull-request previews, persistent application volumes, immutable revisions, one-click rollback, and scale-to-zero behavior. Applications can connect to Raff Managed Databases for PostgreSQL, MySQL, Valkey, ClickHouse, and Kafka, along with object storage, VMs, Kubernetes, Functions, and private networking.
| Raff Apps tier | vCPU | RAM | Ephemeral disk | Monthly ceiling |
|---|
| Micro | 0.25 | 512 MB | 2 GB | $3.00 |
| Starter | 0.5 | 1 GB | 5 GB | $6.99 |
| Standard | 1 | 2 GB | 10 GB | $16.99 |
| Pro | 2 | 4 GB | 20 GB | $27.99 |
| Pro Max | 4 | 8 GB | 40 GB | $61.99 |
| Scale | 8 | 16 GB | 80 GB | $119.99 |
Runtime is billed per second against the published monthly ceiling. Public application egress costs $0, Apps team seats cost $0, and the spend cap is enabled by default.
Raff Apps currently exposes one public region, us-east. That is a real limitation versus Heroku for teams that require Europe, Asia-Pacific, Canada, or U.S. West placement.
Raff currently reports 3,000+ customers, 15,000+ production VMs, and a 99.9% platform SLA. On August 17, 2026, Raff's Trustpilot profile showed 4.5/5, while G2 showed 4.6/5.
Heroku pricing vs Raff pricing
Heroku and Raff price managed application runtime differently enough that the comparison should use buying positions rather than pretend the resource classes are identical.
| Buying position | Raff Apps | Heroku | Decision signal |
|---|
| Personal / intermittent app | Micro — $3 ceiling, 0.25 vCPU / 512 MB | Eco — $5 for 1,000 shared dyno hours / 512 MB | Raff has the lower paid ceiling; Heroku's pooled Eco hours can cover several sleeping personal apps |
| Small always-on app | Starter — $6.99 ceiling, 0.5 vCPU / 1 GB | Basic — $7 maximum / 512 MB | Similar monthly price; Raff publishes more memory and a vCPU allocation |
| Production baseline | Standard — $16.99 ceiling, 1 vCPU / 2 GB | Standard-1X — $25 maximum / 512 MB | Raff has the lower published ceiling; Heroku brings mature production workflow features |
| Larger service | Pro — $27.99 ceiling, 2 vCPU / 4 GB | Standard-2X — $50 maximum / 1 GB | Raff publishes more resources at a lower ceiling; compute classes are not performance-equivalent |
| Higher performance position | Pro Max — $61.99 ceiling, 4 vCPU / 8 GB | Performance-M — $250 maximum / 2.5 GB dedicated compute | Heroku wins on a documented dedicated-compute class; Raff has the lower general Apps ceiling |
Comparison class: these rows compare published buying positions, not matched performance. Heroku does not publish directly comparable vCPU allocations for its shared Common Runtime dynos, and Performance-M uses dedicated compute.
Heroku's non-Eco dynos are prorated based on wall-clock usage, with the listed monthly amount acting as the maximum for a dyno that runs continuously through the billing period. Eco is different: the $5 subscription provides 1,000 dyno hours shared across Eco apps in the account.
Raff Apps also prorates running services per second, but each tier exposes a monthly ceiling. That makes the upper bound visible for the selected app service before traffic arrives.
Preview and worker cost
Heroku Review Apps and one-off dynos consume billable runtime while active. A production architecture with web dynos, workers, review environments, scheduled jobs, and add-ons can therefore have several independently active resources.
Raff previews, web services, workers, cron jobs, and one-off workloads also need to be included in architecture cost. The key difference is the pricing presentation: Raff uses published service ceilings, while Heroku uses dyno runtime and separate attached services.
Data-service cost
Neither app-runtime price includes every production dependency. Heroku Postgres, Key-Value Store, and third-party add-ons have their own plans. Raff Managed Databases and object storage are also separate products.
Compare the application plus database, durable storage, backups, preview environments, and traffic rather than treating a single dyno or app service as the production bill.
Bandwidth and transfer policy
Raff Apps prices public application egress at $0. This removes a per-GB public application-transfer line item from the Apps runtime bill.
Heroku does not publish a standard per-GB egress price for ordinary dyno application traffic. Instead, Heroku currently documents a 2 TB soft network-bandwidth limit per app per month. Teams approaching or exceeding platform limits should review their architecture and Heroku requirements rather than treating the soft limit as an unlimited-transfer promise.
The connected data path still matters on both platforms. Add-ons, external databases, object storage, cross-region services, logging providers, backups, and third-party APIs can have their own transfer policies.
For Raff, $0 Apps public egress applies to the application platform. It should not be generalized to every connected product without checking that product's current pricing model.
Heroku's model is workable when application traffic stays within its operating limits and connected-service transfer is modest. Raff is simpler to forecast for applications where public response traffic is large or uneven and us-east already satisfies placement requirements.
Feature comparison: Heroku vs Raff
| Feature | Raff Apps | Heroku |
|---|
| Entry app price | $3/month ceiling | $5 Eco / $7 Basic |
| Billing model | Per second to fixed tier ceiling | Wall-clock dyno usage; pooled Eco hours |
| Public regions | 1 — us-east | 2 Common Runtime + 10 Private Spaces regions |
| Public app egress | $0 | No standard per-GB dyno rate; 2 TB soft bandwidth limit per app |
| Git deployment | Yes | Yes |
| Buildpacks | Yes | Yes |
| Dockerfile / image workflow | Yes | Yes, subject to runtime-generation workflow |
| Docker Compose | Full stack import | No direct whole-stack Compose execution model |
| Web and worker processes | Yes | Yes |
| Cron / scheduled work | Yes | Scheduler and related workflows |
| Pull-request previews | Yes | Review Apps |
| Release rollback | Immutable revisions / one-click rollback | Release history / rollback |
| Persistent application volumes | Yes | Dyno filesystem is ephemeral; durable state uses data/add-on services |
| Managed data | PostgreSQL, MySQL, Valkey, ClickHouse, Kafka | Heroku Postgres, Key-Value Store, add-on ecosystem |
| Dedicated app compute tier | No separate Apps class in this comparison | Performance dynos |
| Enterprise isolated runtime | Raff platform/private-networking model | Private Spaces and Shield options |
| Default spend cap | Yes | No equivalent default app-spend-cap positioning |
Heroku wins on geography, dedicated Performance dynos, Pipelines, Review Apps, Private Spaces, and add-on depth. Raff wins on fixed service ceilings, $0 public app egress, Docker Compose import, first-party managed data breadth, and default spend protection.
Features and reliability: Raff vs Heroku
This comparison contains 0 controlled Raff-versus-Heroku application benchmarks, so it does not declare either platform faster. A valid application benchmark would need matched runtime class, region, application image, database location, cache behavior, concurrency, persistent storage path, and repeated test windows.
Deployment and delivery workflow
Heroku Pipelines remain a mature continuous-delivery model. A pipeline can group development, review, staging, and production apps, and Review Apps can automatically create disposable environments for pull requests. This workflow is a genuine Heroku advantage for teams already standardized on it.
Raff provides pull-request previews, immutable revisions, and one-click rollback. Its differentiator is broader deployment-artifact portability: GitHub source, buildpacks, Dockerfiles, container images, and full Docker Compose imports can feed the same Apps workflow.
Runtime and scaling choices
Heroku provides several Common Runtime dyno classes and dedicated Performance dynos. Performance-M starts at $250/month and uses dedicated compute, which Raff Apps does not claim to match with a separately published dedicated application-runtime class.
Raff publishes explicit vCPU, memory, and ephemeral-disk ceilings from the $3 Micro tier through the $119.99 Scale tier. Scale-to-zero can reduce runtime cost for suitable services, but service cold-start behavior should be tested against the application's latency requirements.
Heroku is actively operating both Cedar and Fir platform generations. Fir Private Spaces are generally available, but some workflows and compatibility details differ from Cedar. Teams should evaluate generation-specific support for build, container, networking, compliance, and migration requirements rather than treating every Heroku runtime as identical.
Raff presents a smaller runtime surface. That reduces platform-generation choice but also removes one category of migration decision for teams that do not need Heroku's enterprise runtime options.
Persistent state and recovery
Heroku dyno filesystems are ephemeral. Durable state normally belongs in Heroku Postgres, Key-Value Store, an add-on, or an external service. Application release rollback does not restore database state.
Raff Apps supports persistent volumes plus first-party managed databases and object storage. Raff application revisions are also release controls rather than a substitute for database backups, object protection, or tested recovery procedures.
Geography and operating evidence
Heroku lists 12 runtime-region choices across Common Runtime and Private Spaces, versus Raff Apps' 1 public region. Heroku is the stronger choice when regional placement or enterprise network isolation is mandatory.
Raff publishes a 99.9% platform SLA and reports 3,000+ customers and 15,000+ production VMs. Its current Trustpilot profile is 4.5/5, with G2 at 4.6/5. Heroku has a much longer specialized PaaS operating history, which remains a genuine maturity advantage.
When you should choose Heroku over Raff
Choose Heroku when:
- Your application is already Heroku-native. Procfiles, buildpacks, add-ons, Pipelines, Review Apps, and release workflows can make migration cost more important than runtime price.
- The add-on ecosystem matters. Heroku's mature marketplace can reduce integration and procurement work.
- More regions are required. Heroku publishes 2 Common Runtime and 10 Private Spaces regions versus Raff Apps' single public
us-east region.
- Private Spaces are required. Heroku provides isolated enterprise runtime environments with network controls and multiple regional choices.
- Dedicated app compute matters. Performance dynos provide a documented dedicated-compute class.
- Salesforce alignment matters. Heroku operates inside Salesforce's enterprise product and procurement environment.
- Pipelines and Review Apps are established team standards. Replacing a mature delivery workflow can outweigh infrastructure savings.
When you should choose Raff over Heroku
Choose Raff Apps when:
- A lower published app ceiling matters. Raff starts at $3/month and Standard is $16.99/month for 1 vCPU and 2 GB RAM.
- Docker Compose is the source of truth. Raff can import a connected Compose stack rather than requiring each service to be remodeled around a Heroku application workflow.
- Public application transfer is material. Raff Apps prices public egress at $0.
- Cost protection should be on by default. Raff enables the Apps spend cap before a team has to react to an unexpected usage increase.
- First-party data services fit the architecture. Raff offers managed PostgreSQL, MySQL, Valkey, ClickHouse, and Kafka alongside Apps.
us-east is sufficient. Heroku's regional advantage has less value when one eastern-U.S. region already meets latency and placement needs.
- Published resource allocations matter. Raff exposes vCPU and RAM directly across its Apps tiers.
Raff currently reports 3,000+ customers and 15,000+ production VMs. For adjacent app-platform decisions, compare Railway and Raff, Render and Raff, and DigitalOcean App Platform and Raff.
Migrating from Heroku to Raff
- Inventory the Heroku application. Record dyno types, Procfile processes, buildpacks, container settings, config vars, add-ons, databases, domains, Scheduler jobs, Pipelines, Review Apps, release-phase commands, regions, and external allowlists.
- Choose the Raff deployment path. Use GitHub/buildpacks for conventional source deployments, a Dockerfile or existing image for packaged services, or Docker Compose when the application already has a multi-service definition.
- Map process types and environments. Convert Heroku web processes to Raff web services, internal services to private services, workers to workers, scheduled tasks to cron jobs, and administrative commands to one-off jobs. Recreate development, preview, staging, and production behavior intentionally rather than assuming Pipeline semantics transfer automatically.
- Move configuration and integrations. Recreate secrets and environment variables, then replace Heroku-specific add-ons, callback URLs, log drains, trusted IP assumptions, and platform APIs where required. Gotcha: an add-on can look like a simple environment variable while hiding provider-specific networking or lifecycle behavior.
- Move persistent state. Export databases with engine-native tools and move uploaded files or other durable data to persistent volumes, managed databases, or object storage. Gotcha: the Heroku dyno filesystem is ephemeral and should never be treated as migration source-of-truth storage.
- Verify and cut over. Test builds, health checks, workers, cron jobs, previews, database connectivity, restore procedures, and external integrations on a temporary hostname. Lower DNS TTL to 300 seconds, perform the final data sync, switch DNS and callbacks, monitor production, and retain Heroku until the rollback window closes.
The most difficult part of a Heroku migration is usually not application source code. Add-ons, buildpack assumptions, Pipeline behavior, Review Apps, scheduled work, networking, and durable data require the most deliberate mapping.
About Heroku
Heroku is a Salesforce cloud application platform that runs applications in managed dynos and supports buildpacks, container workflows, Pipelines, Review Apps, managed data products, add-ons, Common Runtime regions, and enterprise Private Spaces. Heroku currently operates both Cedar and Fir platform generations, with Fir Private Spaces generally available.
Heroku pricing, runtime, region, Pipeline, and bandwidth claims in this comparison were rechecked against Heroku's official pricing and Dev Center documentation on August 17, 2026.
Conclusion: Heroku or Raff?
The Heroku-versus-Raff decision resolves across four measured axes: cost model, delivery ecosystem, geography/runtime choice, and deployment portability.
- Cost model: Raff Apps starts at $3/month with fixed service ceilings and $0 public egress; Heroku starts at $5 Eco or $7 Basic and bills active dynos by wall-clock runtime outside the Eco pool.
- Delivery ecosystem: Heroku has mature Pipelines, Review Apps, add-ons, and Salesforce enterprise integration; Raff provides a smaller first-party cloud surface with previews and immutable revisions.
- Geography and runtime choice: Heroku publishes 12 runtime-region choices across Common Runtime and Private Spaces and operates Cedar plus Fir; Raff Apps currently exposes one public
us-east region.
- Deployment portability: Raff supports full Docker Compose import along with source and container paths; Heroku is strongest when the application already follows Heroku process, buildpack, and add-on conventions.
Choose Heroku when regional choice, Private Spaces, dedicated Performance dynos, add-on depth, Pipelines, or Salesforce alignment are hard requirements. Choose Raff when us-east is sufficient and fixed service ceilings, $0 public egress, Compose portability, first-party managed data, and default spend protection make the application easier to budget and operate.
Raff currently reports 3,000+ customers, 15,000+ production VMs, Trustpilot 4.5/5, G2 4.6/5, and a 99.9% platform SLA.