Search the VMware Knowledge Base (KB)
View by Article ID

Timekeeping best practices for Windows, including NTP (1318)

  • 113 Ratings


This article presents best practices for achieving accurate timekeeping in Windows Guest operating systems. These recommendations include a suggested configuration for time synchronization in the guest and on the host.


For achieving accurate timekeeping in Windows guest operating systems, there are two main issues to consider: correctly configuring time synchronization and avoiding excessive CPU and memory overcommitment. Time synchronization utilities are necessary to correct time drift introduced by hardware time drift and guest operating system timekeeping imprecision. Excessive overcommitment can cause timekeeping drift at rates that are uncorrectable by time synchronization utilities. This best practices document covers time synchronization recommendations.

Time Synchronization

Use either w32time or NTP as the primary time synchronization utility.

Note: w32time is the time synchronization utility that ships with Windows.

NTP (the Network Time Protocol daemon) is available for Windows through a variety of 3rd party ports to Windows.
Windows Version Recommended Time Sync Utility
Windows 2008 w32time or NTP
Windows Vista w32time or NTP
Windows 2003 w32time or NTP
Windows XP NTP
Windows 2000 NTP

Configuring w32time

When using w32time, there are a number of configuration parameters that can be changed. The table below describes the relevant parameters and gives a recommended value. All of the parameters are stored in the registry. Some of them can also be modified via the w32tm utility instead of directly editing the registry. This best practices guide covers running w32time in NTP mode. w32time can also use the windows domain hierarchy as time servers, which is not covered in this best practices guide.

After changing w32time's settings it is necessary to restart w32time. Either reboot the virtual machine, runnet stop w32time && net start w32time from the command line, or stop and start the w32time service. After restarting the w32time service, run the commandw32tm /resyncto force w32time to resync the time.
Key Details
Recommended Value: 900
Description: This parameter controls how often w32time will poll the time server to check whether time on the client needs to be corrected. The parameter is specified as number of seconds to wait between polling. The recommended value of 900 specifies that the time server should be polled once every 15 minutes.
Recommended Value:,0x1,0x1,0x1
Type: REG_SZ

: This parameter specifies the time servers to use. It is specified as a string of space separated servers. Specifying ",0x1" after the server name indicates that the server should be contacted at the frequency specified by the SpecialPollInterval setting.

Note: Modify the recommended value to point to the ntp servers available in your environment.

w32tm Command:
w32tm /config "/manualpeerlist:,0x1,0x1,0x1"

Note: Modify the command to use the ntp servers available in your environment.
Recommended Value: NTP
Type: REG_SZ
Description: This parameter specifies the mode that w32time should use. A value of NT5DS indicates that w32time should use the Windows domain hierarchy as its time servers rather than the NTP servers specified in the NtpServer key.
w32tm Command:
w32tm /config /syncfromflags:

VMware Tools Time Synchronization and Configuration

When using w32time or NTP in the guest, disable VMware Tools periodic time synchronization.

To disable VMware Tools periodic time sync, use one of these options:

  • Settools.syncTime = "0"in the configuration file ( .vmx file) of the virtual machine.


  • Deselect Time synchronization between the virtual machine and the host operating system in the VMware Tools toolbox GUI of the guest operating system.


  • Run theVMwareService.exe -cmd "vmx.set_option synctime 1 0"command in the guest operating system. VMwareService.exe is typically installed inC:\Program Files\VMware\VMware Tools.


  • Run the VMwareToolsd.exe  timesync {enable|disable} command from the guest operating system and located in  c:\Program Files\VMware\VMware Tools\VMwareTools

These options do not disable one-time synchronizations done by VMware Tools for events such as tools startup, taking a snapshot, resuming from a snapshot, resuming from suspend, or VMotion. These events synchronize time in the guest operating system with time in the host operating system even if VMware Tools periodic time sync is disabled, so it is important to make sure that the host operating system's time is correct. For more information about ESX 4/ESXi 4 or Workstation 7, seeTimekeeping in VMware Virtual Machines. For vSphere 5, Workstation 8 or Fusion 4, see

To ensure the host operating system’s time is correct for VMware ACE, VMware Fusion, VMware GSX Server, VMware Player, VMware Server, and VMware Workstation run time synchronization software such as NTP or w32time in the host. For VMware ESX, run NTP in the service console. For VMware ESXi, run NTP on the VMkernel.

Necessary Patches

Time runs too fast in a Windows virtual machine when the Multimedia Timer interface is used (1005953)describes a known issue that may cause problems when running Windows in a virtual machine. This issue is addressed in recent VMware products. The table below specifies the actions required to ensure that you are using a product version that contains the fix:
ESX 3.5 and later
No action required
ESX 3.0.3
Ensure patchESX303-200910401-BGis applied
ESX 3.0.2
Ensure patchESX-1002087is applied
ESX 3.0.1
Ensure patchESX-1002082is applied
ESX 3.0.0
Ensure patchESX-1002081is applied
ESX 2.5.x and earlier
Upgrade to ESX 3.0.0 or later
Fusion 2.0 and later
No action required
Fusion 1.x
Upgrade to Fusion 2.0 or later
Player 2.0 and later
No action required
Player 1.x
Upgrade to Player 2.0 or later
Workstation 6.0 and later
No action required
Workstation 5.x
Upgrade to Workstation 6.0 or later
Additional Information

  • If the windows virtual machine is not on the domain, run this command to ensure that the Windows and the Domain Controller time are in sync after a reboot:

    sc triggerinfo w32time start/networkon stop/networkoff

  • Using Windows Group Policy to set the NTP settings for the virtual machines will decrease the administration required for time synchronization.
For information regarding setting up an NTP server on an ESX host see Guide to configure NTP on ESX servers(1003063).
For more information on configuring an authoritative time server in Windows, see these Microsoft Knowledge Base articles:
  • Windows 2000 – 216734
  • Windows XP – 314054
  • Windows Server – 816042

    : The preceding links were available as of September 10, 2010. If you find the links to be broken, provide feedback on the article and a VMware employee will update the article as necessary.
For information on Linux systems see Timekeeping best practices for Linux guests (1006427). 
For translated versions of this article, see:


configuring-ntp  ntp-time  timekeeping-windows  timekeeping-linux

Update History

3/26/2012 - Added note regarding time sync when a domain controller is involved.

Request a Product Feature

To request a new product feature or to provide feedback on a VMware product, please visit the Request a Product Feature page.


  • 113 Ratings

Did this article help you?
This article resolved my issue.
This article did not resolve my issue.
This article helped but additional information was required to resolve my issue.

What can we do to improve this information? (4000 or fewer characters)

Please enter the Captcha code before clicking Submit.
  • 113 Ratings