Salesforce Dictionary - Free Salesforce GlossarySalesforce Dictionary
DictionaryHHeroku
PlatformAdvanced

Heroku

Heroku is the cloud application platform that Salesforce acquired in 2010, now branded as Salesforce Heroku and positioned as the polyglot, container-based runtime that complements Salesforce''s declarative platform.

§ 01

Definition

Heroku is the cloud application platform that Salesforce acquired in 2010, now branded as Salesforce Heroku and positioned as the polyglot, container-based runtime that complements Salesforce''s declarative platform. Heroku runs Ruby, Node.js, Python, Java, Go, PHP, Scala, and Clojure applications on a managed PaaS, with Heroku Postgres as the default database, Heroku Connect as the bidirectional sync to Salesforce data, and a marketplace of add-ons (Redis, Apache Kafka, monitoring tools) that extend the runtime.

In the Salesforce ecosystem, Heroku is the answer when an integration or customer-facing application needs a runtime outside Apex governor limits. Common patterns include high-volume public web apps that read or write Salesforce data via Heroku Connect, machine-learning pipelines that train on Salesforce data and write predictions back, mobile app backends, and any custom code that cannot fit within the Apex/Visualforce/LWC trifecta. Heroku is licensed separately from Salesforce, with its own pricing model (dyno hours, database tiers, add-on subscriptions) and its own administration console (dashboard.heroku.com).

§ 02

Why Salesforce keeps Heroku in the portfolio

The Heroku PaaS model

Heroku is a managed Platform-as-a-Service. Developers push code via Git or the Heroku CLI, the platform builds a slug (the deployable artifact), and dynos (containers) run the slug. Scaling is horizontal (more dynos) or vertical (larger dyno sizes). The platform handles routing, SSL, log aggregation, and rolling deploys. No infrastructure work needed; the developer thinks only about the application.

Heroku Connect for bidirectional Salesforce sync

Heroku Connect is the killer feature for Salesforce customers. It maintains a bidirectional sync between Heroku Postgres tables and Salesforce objects. Insert a row in Heroku Postgres, and Heroku Connect creates the matching record in Salesforce within a few seconds. Update the Salesforce record, and the Postgres row updates. The sync supports custom and standard objects, custom field mappings, and bulk loads.

Heroku Postgres as the default database

Every Heroku app gets a Heroku Postgres database. The service is a managed Postgres instance with point-in-time recovery, automated backups, read replicas, and an integrated Heroku CLI for one-line database operations. Sizing ranges from a free hobby tier to multi-terabyte enterprise databases. Most Salesforce-connected applications use Heroku Postgres because of the native Heroku Connect integration.

Pricing model: dynos and add-ons

Heroku charges by dyno hour and by add-on subscription. A dyno is a container; an app might run two web dynos (handling HTTP requests) and three worker dynos (background jobs). Each dyno costs roughly $25 to $500 per month depending on size. Add-ons (Postgres, Redis, monitoring) layer on monthly subscriptions. The total monthly bill for a moderate production app typically lands in the $1,000-$10,000 range.

Salesforce Heroku integration patterns

Three patterns dominate. Pattern 1: customer-facing web app that reads Salesforce data via Heroku Connect (a customer portal showing order status). Pattern 2: high-volume processing job that exceeds Apex limits (nightly invoicing for a million orders). Pattern 3: machine-learning pipeline trained on Salesforce data and producing scored predictions written back via Heroku Connect. Each pattern uses Heroku Postgres as the sync layer and Salesforce as the system of record.

Heroku Private Spaces and compliance

Heroku Private Spaces are network-isolated runtime environments inside a specific region (US, EU, Asia-Pacific). They satisfy regulatory requirements (HIPAA-ready when configured under the Salesforce BAA, GDPR-compliant EU residency, PCI-compliant payment flows) that the standard Heroku Common Runtime cannot. Private Spaces cost more but unlock enterprise compliance use cases.

Salesforce Functions retirement and Heroku

Salesforce Functions, the serverless product launched in 2021 to run code outside Apex, was retired in 2024. The retirement note specifically pointed customers to Heroku as the replacement for the same workloads. Heroku is now the official Salesforce-blessed PaaS for any code that needs to run outside the Apex sandbox.

§ 03

Connect a Heroku app to Salesforce via Heroku Connect

The classic Heroku-Salesforce loop is provisioning Heroku Connect on an existing Heroku app and pointing it at a Salesforce org. The setup takes about an hour.

  1. Create or pick the Heroku app

    From dashboard.heroku.com, create the app or open an existing one. Confirm the app has Heroku Postgres provisioned.

  2. Provision Heroku Connect

    Click the Add-ons tab, search for Heroku Connect, pick a plan, and provision. The add-on appears in the resources list.

  3. Authorize a Salesforce org

    Open Heroku Connect, click Set Up Connection, OAuth into the target Salesforce org. The connection grants Heroku Connect access to read and write objects.

  4. Map objects and fields

    Pick the Salesforce objects to sync. For each, choose a Postgres schema and table name, pick the fields to sync, and pick the sync direction (Read Only, Read Write).

  5. Test the sync

    Insert a row in the Postgres table; verify the Salesforce record appears within seconds. Update the Salesforce record; verify the Postgres row updates. Diagnose any sync errors in the Heroku Connect logs.

  6. Deploy app code that uses the data

    Build your Heroku app to read and write the synced Postgres tables. The app never talks to the Salesforce API directly; Heroku Connect handles all the API traffic and rate limiting.

Gotchas
  • Heroku Connect counts against Salesforce API limits. A high-volume sync of a busy object can exhaust the daily API call quota; size Heroku Connect plans accordingly.
  • The Common Runtime is not HIPAA-ready. Healthcare and finance customers need Heroku Private Spaces; the upgrade is significant in cost.
  • Heroku dynos restart roughly every 24 hours. Apps must handle restart cleanly; in-memory state is lost on restart.
  • The 30-second request timeout on the routing layer is fixed. Long-running requests (data exports, complex reports) need to move to background workers or use streaming responses.
§

Trust & references

Sources

Cross-checked against the following references.

Official documentation

Straight from the source - Salesforce's reference material on Heroku.

Was this entry helpful?
Help us write better definitions. Quick reactions or detailed edit suggestions.

About the Author

Dipojjal Chakrabarti is a B2C Solution Architect with 29 Salesforce certifications and over 13 years in the Salesforce ecosystem. He runs salesforcedictionary.com to help admins, developers, architects, and cert/interview candidates sharpen their fundamentals. More about Dipojjal.

§

Test your knowledge

Q1. What does Heroku represent in the Salesforce Platform?

Q2. What architecture concept is Heroku an example of?

Q3. Who can benefit from understanding Heroku?

§

Discussion

Loading…

Loading discussion…