Procfile

What is a .procfile file?

Heroku-style declaration of which processes run your app — `web`, `worker`, `release`. Read by Heroku, foreman, and dev-workflow tools.

Safe format
Type Code
By Heroku
MIME text/plain

Drop any file to identify it

No upload. No signup. No sending your file halfway across the internet.
We tell you what it is, right here in your browser.

What is it

Procfile originated at Heroku as a simple way to declare what processes constitute an app. Format: one line per process type, like `web: bundle exec puma` or `worker: bundle exec sidekiq`. Heroku's dyno formation (the units of deployed compute you pay for) is built around the process types declared here — `heroku ps:scale web=2 worker=1` scales the named processes independently.

Beyond Heroku, the Procfile became a de facto standard. The `foreman` gem (Ruby) and `overmind` (a foreman replacement) read Procfile to launch your full local dev stack with one command — Rails server, Sidekiq worker, asset watcher, all colour-coded in one terminal. Newer alternatives like `mprocs` or `docker-compose` solve the same problem with different trade-offs.

Many projects keep two Procfile files: `Procfile` (production process types) and `Procfile.dev` (dev-only processes like asset watchers and debuggers). Foreman switches with `-f Procfile.dev`. The format is intentionally minimal — no environment variables, no health checks, no resource limits. For richer process management you graduate to systemd, Kubernetes, or Heroku-style PaaS dyno configuration.

Technical details
Full Name
Procfile
MIME Type
text/plain
Developer
Heroku
Magic Bytes
N/A
Safety
.procfile is a known, safe format.
What opens it
Any text editor
FREE All
VS Code
FREE All
FAQ
What's the difference between Procfile and Procfile.dev?
Convention, not enforced anywhere. Most projects use `Procfile` for production process declarations (what Heroku runs) and `Procfile.dev` for local development (asset watchers, debuggers, dev-only services). Foreman picks the file via `-f Procfile.dev`.
Do I need a Procfile if I'm not using Heroku?
Only if a tool you use reads it — foreman, overmind, render.com, fly.io, and a few other PaaSes recognise it. If you're on Kubernetes, Docker Compose, or a custom deploy, you almost certainly don't need a Procfile.
Related formats