Table of Contents
Heroku calculates billing based on wall-clock usage. This article explains the billing calculations.
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.
All costs are prorated to the second.
All dynos in your application that are scaled above 0 will accrue usage–regardless of whether they’re actually receiving or processing requests.
Databases and add-ons are prorated to the second based on their applicable monthly fee.
When executing a one-off dyno with
heroku run, a dyno will be provisioned for your command, and the time spent executing the command will accrue usage.
For more information about the different dyno types, refer to the Dyno Types article.
Billing cycle & current usage
Heroku charges based on usage, which means that in any given month the bill you receive will be for the previous month of use, not the current one (similar to the way phone services work).
If you wish to see or keep track of your balance for the current month, look for the Current Usage item on your account page. It is updated on a nightly basis, so it will be current to the previous day (up to 00:00:00 UTC time).
Heroku usage is computed from wall-clock time, not CPU time. This means that usage accumulates over time as long as dynos or add-ons are enabled, regardless of traffic or activity.
For example, if you scaled your web dynos to one
standard-1x dyno on 2012-01-01 00:00:00 and then scaled your web dynos to zero on 2012-01-01 01:15:30 you would have accrued 01:15:30 dyno hours of usage, represented as 1.2583 once converted to a decimal value.