Learn how Heroku apps, dynos, releases and backing services fit together, including why persistent data belongs outside a dyno’s local filesystem.
Updated 8 September 2026What Heroku provides
Heroku is a platform for deploying and operating applications without managing the underlying servers directly. It builds application code into a deployable artifact and runs processes in dynos. A release combines that build with configuration, so changing a setting can be an operational change even without new source code.
For example, a small application can have a web process answering requests and a worker handling queued work. Those processes have different jobs and should be scaled according to their workload.
Dynos and persistent data
Heroku gives each dyno an ephemeral filesystem. Files written there are not shared automatically with other dynos and do not persist across restarts or new deployments. Databases, queues and external storage provide backing services for data that must outlive a process.
An upload that appears to work during a test can therefore disappear later if it is saved only to the web dyno. Test storage through a restart, not just through a second request to the same running process.
Postgres, Key-Value Store and Kafka
Heroku’s data services extend the platform beyond dynos. Heroku Postgres supplies a relational database, Heroku Key-Value Store supports cache and key-value workloads, and Apache Kafka on Heroku supports event streaming. These services store or move application data independently of a dyno’s disposable filesystem.
Add-ons and separate application processes
The add-on ecosystem connects applications to supporting services. An application can use separate process types for HTTP requests and background workers, allowing each workload to scale independently. A web process might accept an order while a worker handles a queued follow-up job; the persistent queue and database must remain available across process restarts.
Operating a Heroku application
Separate a deploy failure from a runtime failure. A build can succeed while the application fails to start because it lacks configuration or cannot reach a backing service. Logs, process status and release history answer different parts of that investigation.
When increasing capacity, examine the database and job queue too. More web processes can increase pressure on shared services. Plan configuration changes and database migrations so that old and new application processes can coexist during a rollout.
How DNSTrace.dev detects Heroku
Detection correlates independent public signals. A single match is reported as strong evidence; agreement between a response header and the announcing network is reported as confirmed.
via containing vegur— Vegur is the Heroku router's HTTP proxy, and it names itself in the via header.server: Heroku— Emitted by parts of the Heroku routing layer.CNAME targets under herokudns.com or herokuapp.com— The standard Heroku custom-domain mapping.AS16509— The Amazon autonomous system underneath most Heroku regions, which is why ASN alone cannot identify Heroku.
What a detection proves
The request passed through the Heroku router before reaching an application dyno.
What it does not prove
Which application language or framework runs in the dyno, or which AWS region hosts it. DNSTrace.dev reports the framework separately when the application declares one.
Common questions about Heroku
Can Heroku dynos store uploaded files permanently?
A dyno’s local filesystem is temporary and isolated from other dynos. Store durable uploads in an appropriate backing service rather than relying on files written inside the running dyno.
Why does a Heroku site show an Amazon ASN?
Heroku runs on AWS, so the address is announced by Amazon. The routing headers, not the network, identify Heroku.
Is vegur a reliable Heroku signal?
It is the router's own proxy name and is not used elsewhere in practice, so DNSTrace.dev treats a via header naming vegur as a Heroku signal.
Related platforms and technologies
Fly.io, Inc.
Frontend application platformVercel, Inc.
Frontend application platformNetlify, Inc.
Managed web platformPantheon Systems, Inc.
Check a domain
Run a full lookup to see the delivery layer, the detected application stack, live TLS and the announcing network side by side.
