Every time Emerald Chronometer starts up and the "Use NTP" option is ON or whenever that option is changed to ON, the app goes out to NTP servers on the Internet and asks for the current time. It chooses a pool of servers based on the user's country setting: first from the local country's pool, then the continent pool for that country, then the global pool, and finally time.apple.com. This progression happens each time we get a new synchronization; there are four sets of servers in each pool. Emerald Chronometer compares the time thus obtained with the time supplied by the iPhone, and stores the difference as a "skew" value. This skew is applied globally throughout the application to every watch display, with a couple of exceptions described further on. display.
The size of this skew is completely dependent on how accurate the time supplied by the telephone carrier's signal is. In the SF Bay Area where the authors live, it typically varies by up to a few seconds in either direction. In other areas it is reportedly larger. The iPod touch uses a different synchronization mechanism, synchronizing with your desktop computer, so there it will depend on the accuracy of your desktop computer. (You can see the current skew value by tapping on the upper lift indicator light on the main screen.)
When you shut down and restart Emerald Chronometer, it will start with the same skew value as it determined during the previous session, but it will also go get a new skew value in case it has changed since the last time the application was run. If the skew has changed (or if this is the first time the application has ever been run), then the hands showing the time will jump to the new correct value.
When the iPhone gets a new cell-phone time (for example, when it switches to a different tower), the iPhone OS changes its internal time base used by all applications, and sends a notification to running applications that the time has changed. When Emerald Chronometer gets this notification, it immediately changes the skew value by the amount that the internal time base has apparently shifted; it determines this shift by comparing against another internal time base that does not change with cell-tower changes (CACurrentMediaTime). Then it again goes out to the NTP servers to get the actual skew, which is typically quite close to the "educated guess". Occasionally, especially in fringe-reception areas, you will see the time indicator blink for a few seconds while it does this.
When waking up after the screen has been locked, Emerald Chronometer resynchronizes with NTP, because to save power the iPhone's internal clocks are allowed to shut down while the screen is locked. To maintain full NTP synchronization while the screen is locked, you can set an alarm on Istanbul or Thebes; if an alarm is pending, Emerald Chronometer keeps the internal clocks going so that the alarm can be sounded at the correct time. The battery will drain about 50% faster if an alarm is pending.
In addition, the OS does not guarantee that local notifications are delivered at the exact time specified; there may be a few-second delay if the device is busy with other activity.