Comparing Gmail and iCloud sync across devices
With an iPhone, iPad and desktop - Mac Mail or Gmail depending on syncing used - I sent 10 emails from hotmail to my iCloud account using iCloud sync and 10 emails to my Gmail using Gmail sync. I looked at how new email notifications were synced across devices, and how read status update notifications were synced. The conclusions are at the bottom of the mail if you want to cut the cr@p.
Test 1 - iCloud sync
New mail notifications - Sending emails to iCloud results in instant notification across all devices within around 15 seconds at the most. This was repeated several times with hotmail, gmail and yahoo mail.
Read status notifications - Opening an email in mac Mail updates the read status on iphone/ipad on a 15min cycle (as in settings) if the mail app is open on the device. Read status also updates when the app enters the foreground or is refreshed. Read status isn't updated when the app is simply sitting in the background, unless a new mail notification comes through to wake it up.
Opening the email on the iphone instantly updates mac Mail. It updates the read status on ipad on a 15min cycle (as in settings) again only if the mail app is open on the device. Read status also updates when the app enters the foreground or is refreshed. Read status isn't updated when the app is simply sitting in the background, unless a new mail notification comes through to wake it up. i.e. same as above
Working back the other way, opening the email on the ipad again instantly updates mac mail. It updates the read status on iphone on a 15min cycle (as in settings) if the mail app is open on the device. Read status also updates when the app enters the foreground or is refreshed. Read status isn't updated when the app is simply sitting in the background, unless a new mail notification comes through to wake it up. i.e. same as above
Test 2 - Gmail sync
Next I turned off iCloud sync and re-enabled Gmail sync on all devices, turning off the forwarding to iCloud I had set up.
New mails notifications - Now, when sending emails to gmail from hotmail, these took a lot longer to arrive. After 4 minutes or so I tried a refresh on Gmail and still nothing. Is this hotmail I wondered. So I sent a mail to gmail from my Yahoo account, a few minutes later, still nothing from either. Finally I sent an email from my Mac mail on the desktop. Interestingly, mac mail arrived on Gmail and all Gmail synced devices instantly, followed by yahoo mail around 4 minutes after it was sent. I was still waiting for the 2 emails from hotmail to arrive in my gmail account and on the synced devices 10-15mins later. Still, although not conclusive it seems gmail finds iCloud easier to handle than yahoo mail which is easier to handle than the painfully slow hotmail.
Read status notifications - Whether you open a new email on Gmail in your browser, or whether you open a new email on the ipad or iphone, the result is an almost instantaneous sync of read status across all devices. Impressively, this takes place whether the app on the device is in the foreground or the background. It just works, perfectly. (sorry Apple).
To conclude, the crucial difference between iCloud and Gmail sync on devices is this:
Conclusions
New mail notifications - iCloud pushes new mail notifications to devices instantly, no matter if the mail comes from hotmail, yahoo mail or Gmail. The speed of Gmail's new email notification to devices seems to depend on where the email is coming from - iCloud being near instantaneous, followed by yahoo mail and then hotmail which can take up to 10-15mins. In other words, once processed by the servers, both iCloud and Gmail send out notifications to devices instantaneously but iCloud makes the email available much faster and therefore pushes it out a lot quicker more consistently than Gmail. So, in terms of how quickly mail is pushed out to all devices from the time the email is sent iCloud wins.
Read status notifications - With Gmail synced devices, updates in read status occur whether the mail app is open or whether the app is running in the background i.e. updates in read status are instantaneous. With iCloud, updates in read status will occur at regular intervals (assume 15mins) but only when the mail app is open. An update of the read status also occurs when the app enters the foreground or when you hit refresh. Unlike Gmail, read status isn't updated when the app is simply sitting in the background, unless a new mail comes through to wake it up. Your unopened mail count therefore will not change until an event occurs. In this sense, Gmail sync wins easily as read status is pushed across devices instantaneously. Unlike its new mail notification, iCloud relies on events taking place - enter foreground, hit refresh, new mail notifications - to update the read status. It relies on you being active both receiving emails and opening, closing and refreshing the app to update you. For me this is inconvenient but not a massive pain in the @ss. It could be improved if read status was updated by whatever event is triggered when the phone becomes active after Slide to Unlock, or hell why not simply implement the same push notification that Gmail and every other app seems to shoehorn into it's functionality to drain my battery.
Anyway, as this is the current state with iCloud sync, to get the optimum behaviour , in Mail, Contacts, Calendar make sure all your devices have iCloud mail sync set to on, and that Fetch New Data is set to push Every 15 Minutes. In Fetch New Data's advanced settings, iCloud should be set to Push.
Unless anyone has any bright ideas? Can I have the last few hours back too please?
Steve