Sign inDemoInstall


Package Overview
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies



Implements (based on process.hrtime).

Version published
Weekly downloads
decreased by-1.5%
Install size
11.8 kB
Weekly downloads

Package description

What is performance-now?

The performance-now npm package provides a high-resolution timestamp, similar to what you would get from in a web browser. This is particularly useful for accurately measuring execution times in Node.js applications, where such precision is necessary for performance analysis and optimization.

What are performance-now's main functionalities?

High-resolution timing

This feature allows you to measure the time it takes to execute operations with high precision. The code sample demonstrates how to use performance-now to calculate the execution time of some operations in milliseconds.

const now = require('performance-now');
let start = now();
// Some time-consuming operations
let end = now();
console.log(`Execution time: ${end - start} milliseconds`);

Other packages similar to performance-now



performance-now Build Status Dependency Status

Implements a function similar to (based on process.hrtime).

Modern browsers have a window.performance object with - among others - a now method which gives time in milliseconds, but with sub-millisecond precision. This module offers the same function based on the Node.js native process.hrtime function.

Using process.hrtime means that the reported time will be monotonically increasing, and not subject to clock-drift.

According to the High Resolution Time specification, the number of milliseconds reported by should be relative to the value of performance.timing.navigationStart.

In the current version of the module (2.0) the reported time is relative to the time the current Node process has started (inferred from process.uptime()).

Version 1.0 reported a different time. The reported time was relative to the time the module was loaded (i.e. the time it was first required). If you need this functionality, version 1.0 is still available on NPM.

Example usage

var now = require("performance-now")
var start = now()
var end = now()
console.log(start.toFixed(3)) // the number of milliseconds the current node process is running
console.log((start-end).toFixed(3)) // ~ 0.002 on my system

Running the now function two times right after each other yields a time difference of a few microseconds. Given this overhead, I think it's best to assume that the precision of intervals computed with this method is not higher than 10 microseconds, if you don't know the exact overhead on your own system.


performance-now is released under the MIT License. Copyright (c) 2017 Braveg1rl


Last updated on 19 Feb 2017

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.


Related posts

SocketSocket SOC 2 Logo


  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.

  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc