Skip Navigation
Show nav
Heroku Dev Center
  • Get Started
  • Documentation
  • Changelog
  • Search
  • Get Started
    • Node.js
    • Ruby on Rails
    • Ruby
    • Python
    • Java
    • PHP
    • Go
    • Scala
    • Clojure
  • Documentation
  • Changelog
  • More
    Additional Resources
    • Home
    • Elements
    • Products
    • Pricing
    • Careers
    • Help
    • Status
    • Events
    • Podcasts
    • Compliance Center
    Heroku Blog

    Heroku Blog

    Find out what's new with Heroku on our blog.

    Visit Blog
  • Log inorSign up
View categories

Categories

  • Heroku Architecture
    • Dynos (app containers)
    • Stacks (operating system images)
    • Networking & DNS
    • Platform Policies
    • Platform Principles
  • Command Line
  • Deployment
    • Deploying with Git
    • Deploying with Docker
    • Deployment Integrations
  • Continuous Delivery
    • Continuous Integration
  • Language Support
    • Node.js
    • Ruby
      • Working with Bundler
      • Rails Support
    • Python
      • Background Jobs in Python
      • Working with Django
    • Java
      • Working with Maven
      • Java Database Operations
      • Working with the Play Framework
      • Working with Spring Boot
      • Java Advanced Topics
    • PHP
    • Go
      • Go Dependency Management
    • Scala
    • Clojure
  • Databases & Data Management
    • Heroku Postgres
      • Postgres Basics
      • Postgres Performance
      • Postgres Data Transfer & Preservation
      • Postgres Availability
      • Postgres Special Topics
    • Heroku Redis
    • Apache Kafka on Heroku
    • Other Data Stores
  • Monitoring & Metrics
    • Logging
  • App Performance
  • Add-ons
    • All Add-ons
  • Collaboration
  • Security
    • App Security
    • Identities & Authentication
    • Compliance
  • Heroku Enterprise
    • Private Spaces
      • Infrastructure Networking
    • Enterprise Accounts
    • Enterprise Teams
    • Heroku Connect (Salesforce sync)
    • Single Sign-on (SSO)
  • Patterns & Best Practices
  • Extending Heroku
    • Platform API
    • App Webhooks
    • Heroku Labs
    • Building Add-ons
      • Add-on Development Tasks
      • Add-on APIs
      • Add-on Guidelines & Requirements
    • Building CLI Plugins
    • Developing Buildpacks
    • Dev Center
  • Accounts & Billing
  • Troubleshooting & Support
  • Heroku Architecture
  • Dynos (app containers)
  • Dyno Types

Dyno Types

English — 日本語に切り替える

Last updated 17 August 2020

Table of Contents

  • Dyno feature support
  • Mixing dyno types
  • Default scaling limits
  • Setting dyno types

Heroku offers a variety of dyno types to support apps of all sizes, from hobbyist side projects to high-traffic production services. Memory, CPU share, and other differentiating characteristics for each Common Runtime dyno type are listed below:

Dyno Type Memory (RAM) CPU Share Compute Dedicated Sleeps
free 512 MB 1x 1x-4x no yes
hobby 512 MB 1x 1x-4x no no
standard-1x 512 MB 1x 1x-4x no no
standard-2x 1024 MB 2x 4x-8x no no
performance-m 2.5 GB 100% 12x yes no
performance-l 14 GB 100% 50x yes no

These figures show expected performance based on 99 percent of historical system loads. The performance of apps running on free, hobby, and standard dyno types can vary somewhat based on available system resources. Note that your app’s performance can also vary significantly based on its implementation.

For information about pricing, see Usage & Billing.

Apps running in Private Spaces or Shield Private Spaces have different sets of available dyno types. See this article for information on these enterprise-specific dyno types.

Dyno feature support

All dyno types support the following features:

  • Deploying with Git and Docker
  • Specifying custom domains
  • Pipelines
  • Automatic OS patching
  • Regular and timely updates to language version support

Hobby-tier dynos and above also support the following:

  • Free SSL and automated certificate management for TLS certs
  • Application metrics
  • Heroku Teams

Standard-tier dynos and above also support the following:

  • Horizontal scalability
  • Preboot
  • Language runtime metrics

Performance-tier dynos also support the following:

  • Autoscaling for web dynos
  • Dedicated compute resources

Mixing dyno types

If an app uses free dynos, it can use only free dynos for all of its process types.

If an app uses hobby dynos, it can use only hobby dynos for all of its process types.

Apps that use only Production-tier dynos (standard and performance) can use different Production-tier dyno types for different process types as long as all the dyno types are available on the Production tier. For example, an app can run its web process type on performance-m dynos while running workers on standard-1x dynos.

Default scaling limits

Apps running on free or hobby dynos can have only one dyno running per process type. Additionally, apps running on free dynos are limited to a maximum of two concurrently running dynos.

By default, applications are limited to 100 total dynos across all process types. Additionally, a single process type that uses performance dynos can’t be scaled to more than 10 dynos.

Submit a request to raise this limit for your application.

Concurrent one-off dyno limits

Unverified accounts

With an unverified account, the following limits exist per app:

  • You can run 1 free one-off dyno
  • You cannot create one-off hobby, standard or performance dynos

Verified accounts

With a verified account, the following limits exist per app:

  • 1 free one-off dyno
  • Up to 50 concurrent one-off hobby dynos
  • Up to 50 concurrent one-off standard-1x dynos
  • Up to 50 concurrent one-off standard-2x dynos
  • Up to 5 concurrent one-off performance-m dynos
  • Up to 5 concurrent one-off performance-l dynos

Submit a request to raise this limit for your application.

Setting dyno types

Setting a new dyno type will restart all affected dynos.

From the Heroku CLI

You can use the Heroku CLI to scale or resize the dynos for any process type. The following command scales the number of web dynos to 3 (while preserving the current dyno type):

$ heroku ps:scale web=3

The following command changes the worker dyno type to standard-2x (while preserving the current scale):

$ heroku ps:type worker=standard-2x

The following command changes the dyno type for all of an app’s process types to standard-1x (again, while preserving the current scale):

$ heroku ps:type standard-1x

If you’re resizing to a larger dyno type, you might also want to scale down the number of dynos. See Optimizing Dyno Usage for guidance.

To view the current dyno type for each process type, use the ps command:

$ heroku ps
=== web (standard-2x): `bundle exec puma -C config/puma.rb`
web.1: up 2015/03/27 14:27:58 (~ 6h ago)
web.2: up 2015/03/27 14:47:04 (~ 6h ago)
web.3: up 2015/03/27 15:08:23 (~ 5h ago)

=== worker (standard-1x): `bundle exec rake worker:job`
worker.1: up 2015/03/27 14:39:04 (~ 6h ago)
worker.2: up 2015/03/27 15:08:24 (~ 5h ago)
worker.3: up 2015/03/27 14:30:55 (~ 6h ago)

From the Heroku Dashboard

You can scale and resize your app’s dynos from the app’s Resources page on the Heroku Dashboard:

  1. Select the app you want to modify from your apps list.
  2. Navigate to the app’s Resources tab.
  3. Above your list of dynos, click Change Dyno Type.
  4. Select the dyno size you would like to switch to (Free, Hobby, or Standard/Performance).
  5. Click Save.

To further resize Professional/Performance dynos:

  1. Complete the steps above to make sure the current dyno type is set to Standard/Performance.
  2. Click the hexagon shape next to the process type you want to resize.
  3. Choose an option from the drop-down menu (Standard-1X, Standard-2X, Performance-M or Performance-L).
  4. Click Confirm.

Professional and Performance dyno types can also be scaled from the Heroku Dashboard.

Setting one-off dyno types

You can set the dyno type for memory-intensive one-off dynos. To learn more, see One-Off Dynos.

Scheduler

The Scheduler add-on uses one-off dynos, and as such it supports all one-off dyno types that your app can provision.

Keep reading

  • Dynos (app containers)

Feedback

Log in to submit feedback.

Scaling Your Dyno Formation Free Dyno Hours

Information & Support

  • Getting Started
  • Documentation
  • Changelog
  • Compliance Center
  • Training & Education
  • Blog
  • Podcasts
  • Support Channels
  • Status

Language Reference

  • Node.js
  • Ruby
  • Java
  • PHP
  • Python
  • Go
  • Scala
  • Clojure

Other Resources

  • Careers
  • Elements
  • Products
  • Pricing

Subscribe to our monthly newsletter

Your email address:

  • RSS
    • Dev Center Articles
    • Dev Center Changelog
    • Heroku Blog
    • Heroku News Blog
    • Heroku Engineering Blog
  • Heroku Podcasts
  • Twitter
    • Dev Center Articles
    • Dev Center Changelog
    • Heroku
    • Heroku Status
  • Facebook
  • Instagram
  • Github
  • LinkedIn
  • YouTube
Heroku is acompany

 © Salesforce.com

  • heroku.com
  • Terms of Service
  • Privacy
  • Cookies