

Welcome to ham-interfaces.com
Trusted by Amateur Radio Operators Since 2006
How to Synchronise Your Windows PC Clock for FT8, JS8Call and WSPR
Why Precise Time Matters

Digital modes such as FT8, JS8Call, and WSPR rely on tightly synchronized time slots. If your PC’s clock drifts by more than a couple of seconds, you may miss decodes, transmit outside the expected window, or introduce logging errors. Maintaining accurate UTC alignment is essential for reliable weak-signal digital operation.
PC clocks naturally drift over time. While this is rarely noticeable during normal computer use, even a few seconds of clock error can impact digital mode performance. More frequent time synchronization helps ensure accurate decoding, correct transmission timing, and reliable logging.
This is because even modern computers gradually gain or lose time between synchronizations. For everyday computing this is seldom a problem, but for modes such as FT8, JS8Call, and WSPR, a clock error of only a few seconds can reduce decoding performance and cause transmissions to fall outside the expected time slot.
Many amateur radio operators choose to install dedicated time synchronization utilities such as NetTime,
Dimension 4, or Meinberg NTP. These applications work well, but they also add additional software that must be installed, maintained, and usually run in the background or at system startup.
Fortunately, Windows already includes everything needed to maintain accurate time. By adjusting the built-in Windows Time service to check reliable NTP servers more frequently, you can achieve excellent time accuracy for digital mode operation without installing any additional software.
This guide shows how to optimise Windows' built-in time synchronization settings so that your station remains accurately synchronized for FT8, JS8Call, WSPR, and other time-sensitive digital modes.
Step-by-Step: Configure Hourly NTP Sync on Windows
Step 1: Enable Internet Time Sync
This guide applies to both Windows 10 and Windows 11. The layout may vary slightly between versions, but the settings and PowerShell commands are the same.
-
Open Settings > Time & Language > Date & Time
-
Ensure the following options are enabled:
- Set time automatically
- Set time zone automatically -
Scroll down to Synchronize your clock and click Sync now
This confirms that Windows is actively synchronizing system time and that the Windows Time service (W32Time) is functioning correctly.
By default, standalone Windows systems synchronize time using Microsoft's public NTP service, time.windows.com. In the next step, we will configure additional NTP servers to improve reliability and prepare Windows for more frequent synchronization.
Note: If synchronization fails or Windows reports Local CMOS Clock as the time source, check for third-party time synchronization software such as Meinberg NTP before continuing.
Step 2: Set Regular Sync Interval via PowerShell
By default, standalone Windows systems synchronise time only infrequently, often with many hours or even days between updates. For digital modes such as FT8, JS8Call and WSPR, more frequent synchronisation helps maintain accurate timing and reduces the risk of clock drift affecting operation. To improve accuracy, we'll configure Windows to synchronise time more regularly using its built-in Windows Time service (W32Time). This provides regular, predictable corrections without installing any third-party software.
In the next step, we'll reduce the Windows Time polling interval so that the clock is checked and corrected more frequently.
Don't worry if you're not familiar with PowerShell. This step simply involves opening an Administrator PowerShell window and copying and pasting a command.
Open PowerShell as Administrator
-
Press Windows + X
-
Select Windows PowerShell (Admin) or Terminal (Admin)
(The name varies slightly depending on Windows version.) -
When prompted, click Yes to accept the User Account Control (UAC) prompt
A blue PowerShell window similar to the one below will open.

Next, we’ll copy and paste six PowerShell commands into the PowerShell window. Each command performs a specific task; they are safe to run and can be entered one at a time.
1. Configure a More Frequent NTP Polling Interval
By default, Windows may leave long periods between time synchronisation updates. For amateur radio digital modes such as FT8, JS8Call and WSPR, more frequent checks can help reduce clock drift and maintain accurate timing during extended operating sessions.
NTP servers approximately every 5 minutes. This is significantly more frequent than the Windows default behaviour and is usually sufficient to maintain accurate timing for FT8, JS8Call and WSPR.
Copy the entire command below, paste it into the PowerShell window, and press Enter:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient" -Name "SpecialPollInterval" -Value 300
2. Configure which internet time servers Windows uses
This command configures the Network Time Protocol (NTP) servers that Windows will use to synchronise its clock. The 0x8 option ensures Windows operates as an NTP client when communicating with these public time servers.
Multiple servers are specified to improve reliability, allowing Windows to obtain accurate time from alternative sources if one server is temporarily unavailable.
Copy the entire text in red below and paste it into the Powershell Window and hit "ENTER"
w32tm /config /manualpeerlist:"pool.ntp.org,0x8 time.cloudflare.com,0x8 time.google.com,0x8 time.windows.com,0x8" /syncfromflags:MANUAL /update
3. Restart the Windows Time service.
This command restarts the Windows Time service (W32Time), forcing Windows to reload and apply the new configuration immediately.
Copy the entire text in red below and paste it into the Powershell Window and hit "ENTER"
Restart-Service w32time
4. Force an immediate time resynchronisation
This command instructs Windows to rediscover its configured NTP servers and synchronise the system clock immediately, rather than waiting for the next scheduled synchronisation.
Copy the entire text in red below and paste it into the Powershell Window and hit "ENTER"
w32tm /resync /rediscover
5. Display the current time synchronisation status
This command displays the current status of the Windows Time service, including the active time source, synchronisation state, poll interval and the time of the last successful synchronisation.
This command displays the current status of the Windows Time service, including the active time source, synchronisation state, poll interval and the time of the last successful synchronisation.
Copy the entire text in red below and paste it into the Powershell Window and hit "ENTER"
w32tm /query /status
6. Check real‑time clock accuracy
This command performs a short live comparison between your PC clock and an external NTP server, displaying the time difference between them in milliseconds.
Copy the entire text in red below and paste it into the Powershell Window and hit "ENTER"
w32tm /stripchart /computer:time.cloudflare.com /samples:5 /dataonly
In Powershell, you should now see something like this:

Windows Time Synchronisation - w32tm /query /status explanation
Using the above PowerShell commands, the Windows Time service has been successfully reconfigured and is operating normally. The output from w32tm /query /status confirms correct behaviour. The following explains the key values and how they should be interpreted:
Leap Indicator
Indicates whether any leap‑second adjustments are pending.
A value of “no warning” confirms the time source is valid and operating normally.
Stratum
Shows the level of the time source in the NTP hierarchy.
Lower values (such as 2–3) indicate synchronisation with a reliable server that is close to an authoritative time source.
Precision
Represents the resolution of the system clock hardware.
This is a fixed characteristic of the system and does not indicate accuracy or any fault.
Root Delay
Measures the network round‑trip time between your PC and the time server.
Lower values indicate better network conditions and typically improve time accuracy.
Root Dispersion
Root dispersion is a Windows Time confidence value.
It represents the maximum estimated uncertainty in the time source, not the actual clock error.
After configuration changes or a restart, this value may initially appear high (even several seconds). This is normal.
As Windows continues to synchronise successfully, it increases its confidence and this value will gradually decrease over time.
Reference ID
An internal identifier for the current time source.
This confirms that the system is using an external NTP server.
Last Successful Sync Time
Shows when the system last synchronised successfully.
A recent timestamp confirms the service is working correctly.
Source
Displays the current time server being used.
This confirms that your configured servers are in use.
Poll Interval
Indicates how often Windows checks the time server.
In normal operation, this value adjusts automatically based on how stable your system clock is. Longer intervals usually mean the clock is already stable.
Real‑time comparison (understanding stripchart)
The w32tm /stripchart command provides a live comparison between your PC clock and an internet time server.
However, the values shown include network delay and do not represent the true clock accuracy.
It is normal to see values in the range of tens to hundreds of milliseconds, especially when comparing to servers that are further away. What matters most is that the values remain stable and consistent across samples.
Your system’s actual clock accuracy is typically much better than these numbers suggest, often within tens of milliseconds.
Important takeaway
-
w32tm /query /status → confirms correct synchronisation ✅
-
Root Delay → shows network quality ✅
-
Root Dispersion → shows confidence (not error) ✅
-
stripchart → shows a live comparison affected by network delay ❗
Taken together, these confirm that your system clock is synchronised and operating correctly.