24

I am having a serious problem with my computer. I simply can't sync the clock on my windows 10 running machine to the internet. When I go to "Date and time settings" and turn the "Set time automatically" switch off and then back on, it either loads extremely long or just immediately displays the wrong time. I searched the internet for so long, but nothing seems to work there. Even when I completely restore my windows, it still wont work. And whats really strange is, that the clock sometimes even runs backwards!

Can it be that there is a problem with my mainboard or something like that?

6
  • 1
    Make sure the Windows Time service is running (It's actual name must be similar to that), and make sure your timezone is properly set. That's the only two things that can possibly force the clock to sync incorrectly. Mar 1, 2016 at 18:07
  • Okay, I just checked if my Windows Time Service is running and it actually was (called "Windows Time") - but it's status type was "Manual", which I now changed to "Automatic". I also picked my timezone manually, and the clock just synced. I will keep an eye on it and if it runs further this well, my problem will be solved. Thanks man :)
    – Awusuwah
    Mar 1, 2016 at 18:19
  • I'll post my comment as an answer then. Please be sure to set it as the answer and I'm glad I was able to help. Mar 1, 2016 at 18:23
  • Let me guess! You used the Settings app? Don't use that if you're a power user and you want granular control over your PC. Use the traditional dialog box for time settings and you should be fine, or use the command line. Also, you don't want to use Microsoft's NTP server, because it never works. It didn't work properly from day one. You want to use NIST's NTP server.
    – Samir
    Mar 9, 2016 at 17:20
  • Try to enable and start Workstation service.
    – Biswapriyo
    Aug 31, 2017 at 13:09

7 Answers 7

20

First of all, this is more than a decade old Windows problem! This is nothing new! Windows has had problems syncing the system time against NTP servers for as long as I can remember.

If you must use the Internet to get an accurate system time, then use one of the American NIST's NTP servers. Don't use the Microsoft NTP server! It never works! It has never worked for me personally, and it never has worked for many people out there on the WWW who post similar questions to the one you just posted here. However, using NIST's NTP server has always worked for me, and it has worked for other people too, as evidenced by the many positive results if you read the decade old web forum discussions.

I don't know which server works the best (NIST has several of them). But you can easily find that out because the address for one of them comes as an optional preset in Windows since at least Windows XP. This is the one they should have used as default, but they opted for their own NTP server which never works. The other addresses can be found on the NIST website.

Name               IP Address
time-a.nist.gov    129.6.15.28
time-b.nist.gov    129.6.15.29
time-c.nist.gov    129.6.15.30
time-d.nist.gov    2610:20:6F15:15::27

You can find a more complete list here: http://tf.nist.gov/tf-cgi/servers.cgi

The only factor that makes your question stand out is that you are using Windows 10. That's the only thing that differs from similar questions posted by other people over a decade ago. But the core problem is still the same. It's just that with Windows 10, some of the granular control is taken away from the user. So the user can no longer select what NTP server to use, or type in the address of whatever server the user wishes to use. These options are still available, but they are hidden, and you need to know how to locate them.

You don't want to use the Settings app in Windows 10 if you're a power user and you want granular control over your system. I can confirm what you describe here. If you use the Settings app and you switch the "Set time automatically" off and back on, it will appear to get stuck because the indicator animation just keeps spinning. So don't use that, because it defaults to using Microsoft's NTP server, which never works anyway, and you can't select a different NTP server on that page in the Settings app.

There are basically two ways you can automatically adjust the system time in Windows 10. There is the Settings app, and there is the classic Windows dialog box. You want to use the latter, and you want to select the NIST NTP server.

Using Windows 10 Settings app

[time

  1. Click on Windows start menu button or press the Windows key.
  2. Click on Settings.
  3. Click on Time & Language.
  4. Click on Date & Time.
  5. Flip the "Set time automatically" option off and then back on.

Using Windows Date and Time dialog box

[time [time

  1. Click on Windows start menu button or press the Windows key.
  2. Click on Settings.
  3. Click on Time & Language.
  4. Click on Date & Time.
  5. Scroll down and click on "Additional date, time & regional settings" link.
  6. Click on "Date and Time" link.
  7. Click on Internet Time tab.
  8. Click on "Change settings" button.
  9. Select time.nist.gov as the address from the drop down, or use one of the servers listed above.
  10. Click on "Update now".
13
  • 1
    You can also use the command line to update the system time. Also, you can use the BIOS time to adjust the Windows system time. The benefit of this one is that it works even when Internet sync does not. You just need to set it once, and it should be accurate for years to come, with only exceptions being daylight saving time adjustment which may or may not be used in the country you live in.
    – Samir
    Mar 9, 2016 at 19:25
  • Apparently you can use the time.nist.gov address alone, and it will resolve to any one of the NIST NTP servers, whichever works the best. Some countries have their own atomic clocks and NTP servers. But honestly, when it comes to time syncs over the Internet, it has always worked best with the NIST NTP servers.
    – Samir
    Mar 9, 2016 at 20:01
  • Sadly, this isn't helping me either. The clock still runs wrongly, but still thank you for your help :)
    – Awusuwah
    Apr 20, 2016 at 10:02
  • Let me get one thing straight though. Is it the NTP sync that's not working for you? Or is it the keeping of time in general? Because if keeping time is failing then sync will not help you long term. Sure, if you sync the clock very often over the Internet you can keep up the appearance as if your clock is accurate. But ultimately, sync cannot help you with any motherboard or battery related issues you may have with the computer. Is the computer 3 years old or more? Is it powered down for long periods? If so, you may have a dead or weak BIOS battery in which case you may need to replace it.
    – Samir
    Apr 21, 2016 at 14:03
  • 1
    @Awusuwah I also want to add in that I have seen a very strange behavior on at least one of my computers that's running Windows 10, that is related to time and the clock. As I am a multi-booter I often switch between operating systems back and forth, and I have noticed that my clock is set incorrectly in Windows 10 somtimes when I log onto Windows after leaving a Linux based OS. So it does seem as if Windows 10 has some time related issues. But I can't tell if this is related to your problem as well.
    – Samir
    Apr 21, 2016 at 14:15
3

If, like me, your PC is joined to a windows domain then following the steps in sammyg's answer you'll notice at Step 7 that you have no Internet Time tab. You may also have messages in the event viewer from the Time-Service.

Instead your time is provided by the domain time server. The current time on the server can be checked by opening an elevated command prompt and typing:

net time /domain

If the time is different then you should update it with

net time /domain /set

1
  • This has always been the only answer when you're joined to a domain. Mar 12, 2019 at 13:22
0

You could try NetTime

http://www.timesynctool.com

It's free and open source. It works fine, but it only updates your clock every 15 minutes for free.

0

Non of the other solutions worked for me.

If they don't work for you as well, consider running this script with administrator privileges as a daily task on task scheduler:

on gist : https://gist.github.com/aivrit/fdfee71e969ba62670ed0b87c26f3aad

or here:

$time = Invoke-RestMethod -Uri http://worldtimeapi.org/api/ip

$timezones = Get-TimeZone -ListAvailable

# there is no global standard in names of timezones nor a unique id of them
# worldtimeapi always has city name in last part of timezone field
# microsoft has city names in display name
# therefore current solution is to match those names based on city 
foreach ($timezone in $timezones) {
    if ($timezone.DisplayName.ToString() -match $time.timezone.Split("/")[-1]) {
        $current_zone = $timezone
        break
    }
}

if (!$current_zone) {throw "Could'nt find time zone. exiting."}


Set-TimeZone -Name $current_zone.StandardName

Set-Date -Date (Get-Date -Date $time.datetime)
1
  • This does not work for me. Time zone from URL is America/New_York, but Get-TimeZone has no such option: DisplayName is: (UTC-05:00) Eastern Time (US & Canada) May 28, 2020 at 18:35
0

None of the other proposed solutions worked for me; I went through all the settings, changed the servers, tried to fix it through cmd – and all of that for nothing, because the sync still would not work.

And you know what fixed it? Switching the internet connection, connecting to my mobile hotspot and not using my wifi! (So easy, but the last thing you would expect!)

1
  • 1
    As it’s currently written, your answer is unclear. Please edit to add additional details that will help others understand how this addresses the question asked. You can find more information on how to write good answers in the help center.
    – Community Bot
    Mar 17 at 21:22
0

I have used NetTime for years, it is free and open source. It has many options.

2
  • 1
    Explaining HOW to use this tool will make this an answer. Right now it is only a comment. Mar 27 at 3:38
  • While this link may answer the question, it is better to include the essential parts of the answer here and provide the link for reference. Link-only answers can become invalid if the linked page changes. - From Review Mar 27 at 7:52
-3

Enter these commands at an elevated command prompt Method 3:

Follow the steps mentioned below.

Press Windows key + X and select Command prompt(Admin).

Type each one of the command below and press enter.

net stop w32time

w32tm /unregister

w32tm /register

net start w32time

w32tm /resync

Restart the computer to test the issue again.

W32tm.exe is 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.

1
  • 1
    Please note that attribution of the source is always required.
    – Arjan
    Jan 8, 2020 at 19:58

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.