Dyno Types

Last Updated: 18 June 2015

dyno

Table of Contents

This article applies to the new dyno types on Heroku. If your application is still using the traditional dyno types, please refer to the Traditional Dynos article instead.The traditional dyno types offer different behavior than what is documented here.

This article does not apply to Heroku Enterprise accounts. Please see Heroku Enterprise Dyno Types and Usage Reporting for more information.

Available dyno types

Heroku offers many different dyno types. Each type offers different features and functionality. Their memory and CPU characteristics are listed in the table below.

Dyno Type Sleeps Professional Features Memory (RAM) CPU Share Multitenant Compute (1)
free minimum 6hrs / day no 512MB 1x yes 1x-4x
hobby no no 512MB 1x yes 1x-4x
standard-1x no yes 512MB 1x yes 1x-4x
standard-2x no yes 1024MB 2x yes 4x-8x
performance no yes 6GB 100% no 40x
  1. Overall, performance will vary significantly based on app implementation. These figures show expected performance based on 99 percent of historical system loads. Apps running free, hobby and standard dyno types will have a performance that will vary based on available system resources.

For information about pricing, see Usage & Billing.

Mixing dyno types

An application using a free dyno type can only use the free dyno type for the web and worker dynos. It can’t be mixed with other dyno types.

An application using a hobby dyno type can only use the hobby dyno type for the web and worker dynos. It can’t be mixed with other dyno types.

An application using standard-1x, standard-2x and performance dyno types can mix those dyno types. For example, it can run the web process type using the performance dyno type, and a worker on standard-1x.

Dyno sleeping

Only free dynos will sleep. For more information, see Dyno Sleeping.

Default scaling limits

The free and hobby dyno types only support a maximum of one dyno running per process type. Additionally, applications using a free dyno type are limited to a maximum of two concurrent running dynos.

By default, a process type can’t be scaled to more than 100 dynos for standard-1X or standard-2X sized dynos. A process type can’t be scaled to more than 10 dynos for performance dynos.

Contact sales to raise this limit for your application.

Concurrent one-off dyno limits

There are different limits that apply depending on whether the Heroku account is verified or not.

If the account is not verified, then it cannot have more than 3 one-off dynos of type free or hobby running concurrently. Accounts that aren’t verified can’t create one-off standard or one-off performance dynos.

For verified accounts, no more than 5 performance one-off dynos can run concurrently.

Contact sales to raise this limit for your application.

Setting dyno type

Choosing a new dyno type will restart all of the affected dynos.

CLI

Using the Heroku Toolbelt, you can resize and scale at the same time. The following command scales the number of web dynos to 3:

$ heroku dyno:type web=3

To just resize (in this case, to standard-2x):

$ heroku dyno:type worker=standard-2x

To resize all process types in the application:

$ heroku dyno:type standard-1x

If you’re resizing to a larger size, you may want to scale down the number of dynos as well. See Optimizing Dyno Usage for guidance.

To view the dyno size of a 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)

Dashboard

Use the app’s resources page on Dashboard to change the dyno types:

dashboard dyno size

One-off dynos

Memory intensive one-off dynos may also be sized. To learn more, see One-Off Dynos.

Scheduler

Scheduler supports all the new dyno types.