node package manager
We need your input. Help make JavaScript better: Take the 2017 JavaScript Ecosystem survey »



Fetch package download counts for packages from the npm registry

Build Status


Note: the npm download counts are pretty dodgy for a number of reasons, you probably shouldn't pretend they are accurate.

const moment = require('moment')
    , downloadCounts = require('npm-download-counts')
    , pkg    = 'levelup'
    , start  = moment().subtract('months', 1).toDate() // start date for lookup 
    , end    = new Date()                              // end date for lookup 
  , start
  , end
  , function (err, data) {
      // `data` is an array of objects with `day` and `count` properties 
      // each element of the array represents a day in your date range 
      data.forEach(function (d, i) {
        console.log('On %s, %s was downloaded ~%d times',, pkg, d.count)

Gives you something like:

On 2013-06-15, levelup was downloaded ~91 times
On 2013-06-16, levelup was downloaded ~47 times
On 2013-06-17, levelup was downloaded ~57 times
On 2013-06-18, levelup was downloaded ~141 times


  • Rod Vagg [@rvagg] (
  • Dav Glass @davglass

Licence & copyright

Copyright (c) 2014 Rod Vagg and Contributors (above)

npm-download-counts is licensed under an MIT +no-false-attribs license. All rights not explicitly granted in the MIT license are reserved. See the included LICENSE file for more details.