Best Node.js logging libraries
Libraries for writing logs from Node.js applications. pino leads with about 77.2M real installs a week, followed by consola with about 65.1M.
| package | real installs / week | npm / week | noise | last release | confidence |
|---|---|---|---|---|---|
| 1. pinosuper fast, all natural json logger | 77.2M | 77,203,233 | under 1% | Oct 2026 | high |
| 2. consolaElegant Console Wrapper | 65.1M | 65,144,584 | under 1% | Mar 2025 | high |
| 3. winstonA logger for just about everything. | 36.6M | 36,596,306 | under 1% | Dec 2025 | high |
| 4. loglevelMinimal lightweight logging for JavaScript, adding reliable log level methods to any available console.log methods | 33M | 32,990,459 | under 1% | Sep 2024 | high |
| 5. morganHTTP request logger middleware for node.js | 17.6M | 17,579,875 | under 1% | Sep 2026 | high |
| 6. log4jsPort of Log4js to work with node. | 9M–9.01M | 9,005,795 | under 1% | Mar 2023 | high |
| 7. bunyana JSON logging library for node.js services | 5.41M | 5,412,036 | under 1% | Jan 2021 | high |
Ranked by real installs. That measures use, not quality: read the notes below before choosing. Mirror spikes and crawlers removed. CI and dependency installs still count, so this is not a head count. Noise: the share of npm's count that mirror spikes and crawlers account for. What remains still includes CI and dependency installs. Rows are refreshed in rotation, the oldest here on Nov 6, 2026.
How do they differ?
Pino writes JSON with low overhead. Winston is known for its configurable transports. Bunyan is an older JSON logger. log4js follows the log4j style. Morgan is different: it is HTTP request logging middleware for Express. loglevel also works in the browser, and Consola is aimed at CLI tools.