By default Windows 10/8/7 syncs your system time with Internet servers on a weekly basis. If you want to manually sync and update your system time with an Internet Time server like time.windows,com, you have to right-click on the Time in the taskbar > Adjust Time & date > Internet Time tab > Change settings > Update now.
Change Windows Internet Time Update Interval
But what if you want to sync your time automatically, with the servers more frequently – like say daily? You may have your reasons for wanting to change this to daily – or even on a monthly basis! Let us see how you can do it. Before we proceed, let’s learn a few things about how Time synchronization works on Windows.
Windows Time Service – W32Time.exe
The Windows Time Service or W32Time.exe maintains date and time synchronization on all clients and servers in the network. If this service is stopped, date and time synchronization will be unavailable. If this service is disabled, any services that explicitly depend on it will fail to start.
Many Registry entries for the Windows Time service are the same as the Group Policy setting of the same name. The Group Policy settings correspond to the registry entries of the same name located in:
Windows Time Service Tool – W32tm.exe
W32tm.exe or the Windows Time Service Tool can be used to configure Windows Time Service settings. It can also be used to diagnose problems with the time service. W32tm.exe is the preferred command line tool for configuring, monitoring, or troubleshooting the Windows Time service. TechNet throws more light on this.
To use this tool, you will have to open an elevated command prompt, type W32tm /? and hit Enter to get the list of all its parameters. When w32tm /resync is run, it tells the computer to synchronize its clock right away. When I ran this command I received the following error: The service has not been started. So the Windows Time service has to be started for this to work.
Using Task Scheduler
Now if you were to create a task using the Task Scheduler, to run the Windows Time Service and this sync command on a daily basis, as a Local Service with highest privileges, you would be able to make your Windows computer synchronize your system time every day.
You will have to open the Task Scheduler and navigate to Task Scheduler Library > Microsoft > Windows > Time Synchronization. Now you will have to click on the Create Task… link to create the task. This post will tell you in detail how to schedule a task using Task Scheduler.
Under Actions, you would have to choose Start a program %windir%\system32\sc.exe with arguments start w32time task_started. This will ensure that the Windows Time service is running. You may then set the second action to Start a program %windir%\system32\w32tm.exe with the argument /resync. The other settings you may choose as per your personal preferences.
Using Registry Editor
You can also see if this works for you. Open Windows Registry Editor and navigate to the following registry key:
This SpecialPollInterval entry specifies the special poll interval in seconds for manual peers. When the SpecialInterval 0x1 flag is enabled, W32Time uses this poll interval instead of a poll interval determined by the operating system. The default value on domain members is 3600.
The default value on stand-alone clients and servers is 604,800. 604800 seconds is 7 days. So you may change this decimal value to 86400 to make it sync every 24 hours.
There is also the easy way out!
This freeware tool from DougKnox.com lets you change the Internet Time Update interval from Weekly to Daily or Hourly. You will have to run the tool as an administrator.
This portable tool works on Windows XP, Windows Vista, Windows 7 & Windows 8. Not checked if it works on Windows 10.
Read: Check the accuracy of your system clock.
This post will help you if your Time Synchronization fails with the error – Windows Time Service not working.