Using a tool to compare the internal clock of my Android device to internet time servers, I noticed my device is 30 seconds wrong.

So that made me wondering what is the cause of this error. Where does Android gets it time from, so I can adjust or complain there:

I can think of the following sources:

  • Provided by the cellular network provider.
  • From GPS.
  • From a NTP server on the local WIFI network.
  • A global NTP server (hosted by Google)?
  • I've never understood why smartphone clocks are typically never synchronised by the OS with the time data received from GPS. I understand that there are 3rd party apps that can do this, it just seems a really obvious feature. Apr 9 '13 at 14:04

When I go to my Date & time settings, there is option that says: Automatic - Use network-provided values. So, basing on this wording (also in other languages), I would say that automatic time is provided from your carrier.

There are apps, that can sync your clock with GPS satellites or NTP servers.

  • 1
    Note that there are carriers that doesn't provide time synchronization service, on those carriers you have to synchronize your clock manually
    – Lie Ryan
    Mar 24 '12 at 1:26
  • And without the device being rooted, those apps can only adjust the device's time when it's at least 30s off, unfortunately...
    – Izzy
    Mar 21 '13 at 16:39
  • When I set a wrong time and switch back to automatic time, it's off by 0.2-0.3 seconds. Do you have anymore info on how this carrier-provided network time works? Like, does it literally go "Hey what's the time" -> "it's 12:43:30.2" or is there some back and forth to figure out the latency? Because 0.2-0.3s latency sounds fitting to me over 3g (HSDPA) abroad and would be a really stupid way of doing this.
    – Luc
    Nov 25 '19 at 11:48

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.