Google Apps gives you your own set of contacts, plus“Shared Contacts” (think global address book). If you have an existing CRM or other large database of contacts, Shared Contacts gives a great way of distributing that data to your colleagues, without flooding their personal contacts with names and addresses they need less often.

When you’re new to Google Apps you naturally assume you’re going to be able to add/edit/import Shared Contacts, but so far Google haven’t provided a way. Lots of enterprising developers have created marketplace apps to help out but as Jesse said here we don’t think you want to pay a monthly fee when it’s such a simple and obvious requirement.

This article describes how we used a Google Spreadsheet and Google Apps Script to synchronise multiple spreadsheets of contacts into Shared Contacts to create a global address book.

First off we should explain the differences between My Contacts and Shared Contacts:

My Contacts

Shared Contacts


You can create/edit your own contacts, but you can’t share them.

Only editable via script/API, and 3rd party marketplace apps



You can only search, which makes sense if you have 00’s or 000’s of them

Autocomplete from Gmail



Outlook integration


Via Address Book

Mobile integration






Script and API Access


Just API access – it’s more complex from Apps Script than accessing My Contacts, which is why we wrote this article.

Step 1 – Create a contacts spreadsheet


Step 2 – Insert script that parses and pushes each row to Shared Contacts


Step 3 – wait about 10 hours for the contacts to appear in Gmail, Google Contacts, Outlook etc


Your Next Steps:

  1. Request to view this spreadsheet
  2. Make a copy of your own
  3. Extend the spreadsheet to pull contacts from an “upstream” source such as a database or website
  4. Refractiv are developers and Google Apps integrators, so if you’re not comfortable in code, we’d love to create a solution for you.

Further reading:

The official differences between My Contacts and Shared Contacts:

Alex Vagin’s spreadsheet+script that syncs “personal” contacts:

Google’s own example: