Keep Your Mac and Windows Boot Camp Clocks in Sync

If you manage dual-boot Macs, or even just have your own dual-boot Mac, you may have noticed the annoying tendency of your Mac clocks to be incorrect when you reboot from Windows into Mac OS. This occurs because the Windows internal clock uses the local time zone to manage its time while Mac OS internal clock uses GMT.

As posted in various forums and sites, the solution is to modify the Windows Registry as follows.

  1. Launch regedit.exe.
  2. Navigate to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation.
  3. Create a new key called RealTimeIsUniversal (case-sensitive!)
  4. Give the key a DWORD Value (displays as REG_DWORD) of 1.

If you’re not comfortable modifying the registry by hand, I’ve created a registry patch file that, when double-clicked in Windows, will make the modification for you. (You can verify the contents of the patch by opening it in Notepad.) Download the patch here.


15 thoughts on “Keep Your Mac and Windows Boot Camp Clocks in Sync

  1. Thanks for creating a patch for those of us who are inept, but I guess I’m just clueless. I double-clicked the file “UseUniversalTime.reg” but all it did was open the file in notepad. Did I miss something?

    I also tried modifying the registry by hand following your instructions, but when I reboot back into Leopard the time is still incorrect. Even having “Update Date and Time Automatically” checked doesn’t fix it.

    Can you email me any suggestions?

    • Thanks man. That was driving me crazy… btw, up yours Apple. I hope I never find myself paying for another one of your overrated gadgets again… ever. Incompetent boobs.

  2. Brandon,

    Any *.reg file should open in Regedit. To fix it, make sure the .reg file is not still in the zip archive (drag it to your desktop) and then right-click on it and select Open With. The Registry Editor should be listed as a recommended program. Select it, then check the Always use the selected program… box and click OK. (Incidentally, you need admin privileges for this to work.)

    I’m not sure why the manual edit method didn’t work for you. With either method, you probably need to reboot Windows for the change to take effect.

  3. “RealTimeIsUniversal” works as long as you keep your Windows sessions short. After an hour or so, your Windows clock will set itself to GMT.

  4. Pingback: Clock keeps changing ~
  5. What I do is to create a batch file to synchronize time with windows time server and put it into my startup folder, so windows will update it’s time automatically during startup.

    1. Open notepad and type in the following:

    net start w32time
    w32tm /resync

    *Explanation*: net start w32time is to start the windows time service as it must be started first in order for windows to synchronize time with the time server. w32tm /resync is the command line for windows to execute time synchronization.

    2. Save the file as .bat extension (I saved mine as “Time Sync.bat”) – you should see the gear file icon instead of the text file icon if it is done correctly.

    3. Put the file you just saved into startup folder in Start > All Programs > Startup (right click to open folder) or C:\Users\YOUR.USER.NAME\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup.

    Hope it helps (:

  6. The registry key HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation\RealTimeIsUniversal when set to the DWORD value = 1 indicates that the RTC is set to UTC.

    This works properly, in that Windows 7 correctly sets the time according to the Time Zone information provided, except that apparently the WAKE TIMERS (powercfg -waketimers) are not configured properly and will wake up the computer at the wrong time or not at all (if, for example, the wake time has already passed in UTC terms).

Comments are closed.