node package manager
Easy collaboration. Discover, share, and reuse code in your team. Create a free org »



Build Status Slack Channel

Use this package to easily convert various time formats to milliseconds.


ms('2 days')  // 172800000 
ms('1d')      // 86400000 
ms('10h')     // 36000000 
ms('2.5 hrs') // 9000000 
ms('2h')      // 7200000 
ms('1m')      // 60000 
ms('5s')      // 5000 
ms('1y')      // 31557600000 
ms('100')     // 100 

Convert from milliseconds

ms(60000)             // "1m" 
ms(2 * 60000)         // "2m" 
ms(ms('10 hours'))    // "10h" 

Time format written-out

ms(60000, { long: true })             // "1 minute" 
ms(2 * 60000, { long: true })         // "2 minutes" 
ms(ms('10 hours'), { long: true })    // "10 hours" 


  • Works both in node and in the browser.
  • If a number is supplied to ms, a string with a unit is returned.
  • If a string that contains the number is supplied, it returns it as a number (e.g.: it returns 100 for '100').
  • If you pass a string with a number and a valid unit, the number of equivalent ms is returned.

Caught a bug?

  1. Fork this repository to your own GitHub account and then clone it to your local device
  2. Link the package to the global module directory: npm link
  3. Within the module you want to test your local development instance of ms, just link it to the dependencies: npm link ms. Instead of the default one from npm, node will now use your clone of ms!

As always, you can run the tests using: npm test