/
/

How to Fix Time is Not Syncing Automatically in Windows 11

How to Fix Time is Not Syncing Automatically in Windows 11 blog banner image

When the Windows date and time are not syncing, it poses issues in managed or enterprise environments. If your PC times aren’t synced, it can cause Kerberos domain issues, inaccurate event log timestamps, derail task scheduling, certificate validity, and updates. Plus, devices may fail to authenticate, update, or function within Active Directory environments.

To resolve the issue where Windows 11 time sync is not working, you can use Windows Settings, the Command Prompt, PowerShell, and Group Policy. Achieving time consistency across the network is crucial for smooth workflows, letting computers and their users handle tasks efficiently. This guide provides the requirements, steps, and troubleshooting tips to fix time is not syncing automatically in windows.

Methods for syncing Windows 11 time and date

Before beginning any of these methods, ensure the following:

  • The system is connected to the internet or the domain network.
  • You have administrative privileges for the Command Prompt, PowerShell, and Group Policy methods.
  • You have enabled the Windows Time Service (W32Time) feature.
  • Domain-joined devices are synchronized from a domain controller, which is common in enterprise environments.

For in-depth details of these prerequisites, please proceed to the Requirements for fixing Windows 11 time sync section.

Once all the requirements are sorted out, you can fix Windows 11’s time and date sync. Several methods exist, including via Windows Settings, the Command Prompt, Windows PowerShell, and Group Policy.

Method #1: Using Windows Settings to sync time and date

This method is the simplest and quickest way to manually sync time and date on individual Windows computers that rely on the Network Time Protocol (NTP). Though ideal for fixing standalone devices, it’s not ideal for managed environments where you have to sync time for multiple systems simultaneously.

  1. Open Settings via the Windows + I shortcut. Go to Time & Language > Date & Time.
  2. Ensure that the Set time automatically toggle is switched on. Furthermore, if you frequently travel and cross time zones, you can also tweak Set time zone automatically.
  3. Next, manually sync time by scrolling down to the Additional settings section.
  4. Click the Sync now button. A status update should appear in the window, whether it was successful or otherwise.
  5. Finally, confirm that Time zone has been set correctly. Select the correct one from the drop-down list.

Method #2: Syncing time using the Command Prompt

This method is ideal if using Windows Settings doesn’t work. It’s also your best bet if the Windows Time (W32Time) service is not syncing correctly.

  1. Open the Command Prompt as an administrator.
  2. Once the console is open, run this command to force a time sync: w32tm /resync.
  3. If successful, you will see this message: “Sending resync command to local computer… The command completed successfully.” Meanwhile, if this fails, you will encounter “The service has not been started” error which indicates W32Time needs to be reset.
  4.  Reset the Windows Time Service by entering the following codes one at a time:
    1. net stop w32time
    2. w32tm /unregister
    3. w32tm /register
    4. net start w32time

⚠️ If you see the message The service has not been started,” and receive the error “The computer didn’t resync because no time data was available,” it means the time source is missing. To fix, enter the following command:

w32tm /config /manualpeerlist:"time.windows.com,0x1" /syncfromflags:manual /reliable:yes /update

And then:

net stop w32time && net start w32time

After entering these codes, try rerunning w32tm /resync to confirm it works.

Method #3: Sync time using Windows PowerShell

Using PowerShell to sync time is best for applying fixes across multiple machines, making it a go-to for enterprise environments.

  1. Open PowerShell as an administrator. Press Start, type PowerShell, right-click Windows PowerShell, and select Run as administrator.
  2. Next, run this command to restart the W32Time service: Restart-Service w32time.
  3. Force a time sync by running this Windows time sync command: w32tm /resync.
  4. Finally, check if this method works by viewing the current time source and last sync details using this code: w32tm /query /status. This will confirm whether your system is syncing with the correct server. Additionally, it will give you information about when the last sync occurred, helping you troubleshoot missed or failed syncs.

Method #4: Enforce Time Sync via Group Policy

This method is best for Windows 11 Pro and domain-joined environments to have centralized control over time synchronization settings.

  1. Open the Group Policy Editor by pressing Win + R, typing gpedit.msc, and pressing Enter.
  2. You can access the Time Provider settings by going to Computer Configuration > Administrative Templates > System > Windows Time Service > Time Providers.
  3. On the Time Providers screen, double-click Enable Windows NTP Client and set the policy to Enabled. Click Ok.
  4. Next, you need to tweak the NTP Client to enable time sync.
    1. Double-click Configure Windows NTP Client and set the policy to Enabled.
    2. Next, configure the following fields:
      1. NtpServer. Enter your time server, like time.windows.com,0x1, or dc01.contoso.local,0x1.
      2. Type: Use NTP for standalone PCs or NT5DS for domain-joined devices.
      3. Adjust these optional fields:
        1. SpecialPollInterval to 3600 to sync every hour
        2. EventLogFlags to 1 to reduce noise.

Click OK.

      1. Apply the group policy changes by opening the Command Prompt as an administrator and running this command: gpupdate /force. After this, restart the Windows Time service via these codes: net stop w32time and net start w32time.

Requirements for fixing Windows 11 time sync

Before fixing time synchronization issues on Windows 11, ensure you’ve fulfilled the following requirements:

  1. Your system must be connected to the internet or a domain network, especially in enterprise environments.
  2. You need to have administrative privileges. Tools like the Command Prompt, PowerShell, or Group Policy require you to run them as an administrator.
  3. Windows Time Service should be enabled. This is responsible for handling time sync using NTP (Network Time Protocol), which syncs your system clock with time servers over the internet. Here’s how to ensure it is not disabled:
    1. Access the Services Console by opening the Run dialog (Win + R) and typing services.msc.
    2. In the Services window, scroll down and look for Windows Time.
    3. If the status column displays “Running,” the service is active. However, if it is blank or says “Stopped,” you must restart it manually.
    4. To activate it, double-click Windows Time. Under the General tab, find Startup type. Set it to Automatic (recommended) or Manual. Click Apply, then OK.
    5. Finally, start the service by tapping the Start button under the Service status in the Properties window. Once it’s running, you may close the Services Console.

⚠️ Note: Windows Time Service can be missing due to policy restrictions, data corruption, or it may be absent from your Windows version. To fix, run the following commands on Command Prompt (Admin) one at a time:

sc triggerinfo w32time start/networkon stop/networkoff

sc config w32time start= auto

net start w32time

If this does not work, re-register the service:

w32tm /unregister

w32tm /register

net start w32time

  1. Confirm synchronization from a domain controller for domain-joined devices (which are common in enterprise environments). Here’s how:
    1. Open the Command Prompt as an Administrator.
    2. Type the following command: w32tm /query /status. Press Enter.
    3. Look for the line that says Source: <server>.
    4. If you’re syncing directly from a domain controller, the source should look like this: Source: DC01.domain.local or another recognizable domain name.

Troubleshooting Windows date and time sync issues

If Windows time sync isn’t working as expected, you can perform these checks and fixes to identify and resolve issues.

How to check if your computer is syncing with the right sync source

Verify if your computer is running on the right sync source using this code on PowerShell or the Command Prompt as an admin: w32tm /query /source.

If it’s working, the output will show the DC01.domain.local or time.windows.com, or another configured server. However, if the status shows Local CMOS Clock, time sync isn’t working.

How to verify if Windows Time Service is running

To check the status of the Windows Time Service, run this command on PowerShell and Command Prompt as an admin: sc query w32time.

The Windows Time Service is functioning if the output displays STATE: RUNNING. However, if it doesn’t, you can start it with the command: net start w32time.

How to check sync logs via Event Viewer

Open the Event Viewer via Run (Win + R), then navigate to Applications and Services Logs > Microsoft > Windows > Time-Service > Operational. Look for Warning or Error events, which will tell you what you need to fix.

How to confirm if UDP Port 123 is open

NTP uses UDP port 123 to communicate with Windows’ time servers. At times, security programs like firewalls (including Windows Defender) can block it. To check firewall settings, here are the necessary steps:

  • Open Win + R and type wf.msc to open Windows Defender Firewall.
  • Go to Inbound Rules and Outbound Rules.
  • Look for rules allowing UDP port 123. 
  • If missing or blocked, create a rule to allow it. Here’s how:
    • In the left pane, click Inbound Rules. 
    • Next, on the right pane, click New Rule.
    • In the New Inbound Rule Wizard, make a rule based on these parameters:
      • Rule Type: Select Port and click Next.
      • Protocol and ports:
        • Select UDP. 
        • Pick Specific local ports and enter 123.
        • Click Next.
      • Action: Choose Allow the connection.
      • Profile: Check Domain, Private, and Public.
      • Name: Enter a relevant name for easier tracking.
      • Click Finish.

How to restart the time service

Sometimes, restarting the Windows Time Service will resolve sync issues. You can resort to either of these two methods to get this done:

  • In the Command Prompt (admin), enter net stop w32time. After you receive confirmation that the service has stopped, run net start w32time.
  • In PowerShell (admin), enter this code: Restart-Service w32time and await confirmation that the service has restarted.

Fix Windows time sync issues for smoother workflows and consistent network access

Consistent time sync is important in Windows 11 networks, especially in managed networks and hybrid environments. You can easily use Windows Settings for individual devices, and alternative methods include PowerShell, Group Policy, and the Command Prompt for a large number of systems.

Accurate time ensures secure logins, precise and reliable system logs, and avoids Kerberos and domain join failures, leading to a secure network and consistent workflow.

You might also like

Ready to simplify the hardest parts of IT?
×

See NinjaOne in action!

By submitting this form, I accept NinjaOne's privacy policy.

NinjaOne Terms & Conditions

By clicking the “I Accept” button below, you indicate your acceptance of the following legal terms as well as our Terms of Use:

  • Ownership Rights: NinjaOne owns and will continue to own all right, title, and interest in and to the script (including the copyright). NinjaOne is giving you a limited license to use the script in accordance with these legal terms.
  • Use Limitation: You may only use the script for your legitimate personal or internal business purposes, and you may not share the script with another party.
  • Republication Prohibition: Under no circumstances are you permitted to re-publish the script in any script library belonging to or under the control of any other software provider.
  • Warranty Disclaimer: The script is provided “as is” and “as available”, without warranty of any kind. NinjaOne makes no promise or guarantee that the script will be free from defects or that it will meet your specific needs or expectations.
  • Assumption of Risk: Your use of the script is at your own risk. You acknowledge that there are certain inherent risks in using the script, and you understand and assume each of those risks.
  • Waiver and Release: You will not hold NinjaOne responsible for any adverse or unintended consequences resulting from your use of the script, and you waive any legal or equitable rights or remedies you may have against NinjaOne relating to your use of the script.
  • EULA: If you are a NinjaOne customer, your use of the script is subject to the End User License Agreement applicable to you (EULA).