Google Sync on iOS (with 2 factor authentication)

Recently, I went to add calendar syncing to my iPad mini. I’ve enabled two factor authentication on my account, and I can never remember if I should use my actual password or my application password to log in.

I tried to set up Exchange sync a few times from memory, but it failed every time. I assumed I was using the wrong password, but it turns out that Google have actually disabled Exchange sync for new devices.

I decided to use the gmail option, as that allowed me to sync calendars too. Now for the important part – you need to use your application specific password. Your main application specific password will work, but I’d recommend visiting the password page and generating passwords for every device you connect incase you lose it and need to revoke access easily.

Once you’ve got calendars syncing, you might notice that any calendars that you’ve had shared with you don’t sync by default. You need to enable this on the web by visiting syncselect. Check the calendars you want, refresh on your device, and they should appear.

Once I had calendars working, I decided that I wanted my contacts to sync too. This “just worked” with exchange, but takes a bit of setting up without it.

First, you’ll need to set up a new app specific password. I’m not sure why you can’t use your main app specific password, but it didn’t let me for some reason. Once you have it, follow the following instructions:

  • Open the Settings application on your device.
  • Select Mail, Contacts, Calendars.
  • Select Add Account…
  • Select Other
  • Select Add CardDAV Account
  • Fill out your account information in the following fields:
    • Server: Enter “google.com”
    • User Name: Enter your full Google Account or Google Apps email address.
    • Password: Your Google Account or Google Apps password. (If you’ve enabled 2 Step -verification, you’ll need to generate and enter an application specific password.)
    • Description: Enter a description of the account (e.g. Personal Contacts).
  • Select Next at the top of your screen.
  • Make sure that the “Contacts” option is turned to ON.

You should now have calendars and contacts syncing to your device. These instructions are tested on iOS, but they (or something close to them) should work on other devices.

Michael is a polyglot software engineer, committed to reducing complexity in systems and making them more predictable. Working with a variety of languages and tools, he shares his technical expertise to audiences all around the world at user groups and conferences. You can follow @mheap on Twitter

Thoughts on this post

Peter Magnaye 2017-02-11

@mheap Thanks for posting this. I would not have figured it out myself. Your guidance on this subject was spot on.

Jerry 2017-06-19

I’ve been receiving the error below for months. This article was very helpful — I would have never figured this out on my own.

Enter the password for the CardDAV account “Google Contacts”

Jenny 2017-07-22

Thank you so much for this! I spent way too much trying to figure it out. The one-time password finally worked. Yay!

Leave a comment?

Leave a Reply