Personal accounts are given a base of 550 free dyno hours each month. An additional 450 free dyno hours is available for all accounts verified with a credit card for a total of 1000 hours per month.
We calculate free dyno hours in the same way all other dynos are calculated (pro-rated to the second), however for free dyno hours the currency is time rather than money.
Free dyno hours are calculated whenever a free
web dyno is running and we stop calculating when the free
web dyno goes to sleep. (If a free web dyno doesn't receive a request for 30mins it will "sleep" so we will no longer count towards the quota until a request is made and the free
web dyno boots again.)
worker dynos (non-web) do not sleep (as they don't receive web requests), so they will run 24/7 so free
worker dynos will always use up the time quota as long as they're scaled to 1.
For a more in depth look at free dyno hours see: https://devcenter.heroku.com/articles/free-dyno-hours
Important note: The quota of free hours is divided amongst all the apps within an individual account, and not per application. Also, these limits cannot be circumvented by transferring an application to another account within the same month.
You can monitor your Free Dyno Hours quota and usage in your Heroku Dashboard or by using the Heroku CLI. Usage metrics are not live and may be delayed up to one day.
Using the Heroku Dashboard
Visit your Billing page: https://dashboard.heroku.com/account/billing
Using the Heroku CLI
Option 1: Show usage in hours
$ heroku ps -a app-name Free dyno hours quota remaining this month: 799h 43m (79%) Free dyno usage for this app: 200h 16m (20%)
Option 2: Show usage in seconds
$ heroku user:info . . . account_quota: 3600000 quota_used: 614439
Free tier dynos aren't available for use with Heroku Teams:
For cost savings, it's recommended to scale the dynos down when not in use. There are also add-ons available that may help to automate more complex availability requirements https://elements.heroku.com/addons/#dynos