Sync system time automatically at Windows startup

Posted on June 19, 2021 Note that this post is older than 3 years and might contain out-of-date information. Tags: #windows #technology

Update: The Windows time sync service is not working reliably. It was working fine on my system for a few months but stopped syncing time properly eventually even though it is still being started automatically. Feel free to give it a try nonetheless but know that this seems to be another one of Windows’ great unreliable mysteries…

Unlike most other operating systems, Windows 10 doesn’t sync the time with an internet service at startup by default. This can become an issue, if your mainboard’s built-in clock provides a wrong time or uses a different time zone.

If the mainboard’s battery responsible for storing time dies, it can become an even more annoying problem, because Windows will always start with an ever-growing time skew, which can eventually result in web browsing become a problem due to Windows considering websites’ SSL certificates not yet valid - effectively rendering browsing the majority of web pages impossible!

This can be worked around by starting Windows’ time sync service automatically at startup. Below you’ll find instructions on doing this with the graphical Services console and PowerShell.

Services console

  1. Press Windows Key + r at the same time to open the Run dialogue
  2. Type services.msc and hit Run - the Services window opens Run dialog
  3. In the list, scroll to Windows Time (in german: Windows-Zeitgeber) and right-click on it, click Properties in the context menu
  4. In the Properties window change Startup type to Automatic, click Start and click OK to save Windows time service properties window

PowerShell

  1. Start PowerShell as admin
  2. Run the following command:
Set-Service -Name W32Time -Status running -StartupType automatic

If PowerShell complains about not finding a service with the specified name, you can run the following command to get a list of all available services - Microsoft might have changed the time service’s name.

Get-Service