Delegated Calendars iCal

How to change the colours of Microsoft Office 365 Shared Calendars in Apple Calendar for OS X

UPDATE (1st May 2017): Several users have reported this tutorial no longer works in MacOS Sierra, I haven’t yet been able to test this myself yet as Apple Calendar is no longer my primary calendar app (I now use Fantastical 2). I will test and confirm this asap.

If you use Microsoft Office 365 and utilise the shared calendar feature you may have found that unless you are using Microsoft Outlook for Mac you aren’t able to access these calendars in Apple Calendar. For reasons that aren’t obvious, when you add calendars that you are a delegate for (see my previous article for how to add delegated calendars to Apple Calendar), you aren’t able to change the automatically selected random colour that the application assigns to it.

I’ve found many posts online with people asking the same question on how to change the colour, but so far no one seems to have found a way to do it (Google Apps users have reported that the colour can be changed by changing it on the web interface so it’s possible the colour feature is blocked because it can be set at the server level but for whatever reason Microsoft doesn’t do this). After some experimentation I’ve found a way to modify the colours to your own choice, it’s slightly technical so I’d advise only doing this if you are comfortable editing .plist files and using the Terminal, so if you are here is the tutorial:

Pre-requisites: This tutorial is based on OS X El Capitan 10.11.3 and the version of Apple Calendar that ships with it, these steps may work for older and newer versions of the Calendar app including iCal but I make no guarantees of this, experiment at your own risk. You will also need to have already setup your delegated calendars in Apple Calendar before getting started, click here to see my tutorial on how to do this. You should probably get the 6 digit hex code for your chosen color(s) before starting as launching Safari may open the CalendarAgent in the background and overwrite your changes, see the bottom of this article for a list of the default Apple Calendar Colour hex codes.

  1. Quit all your running applications (this is important as apps other than Calendar will call the calendar agent in the background).
  2. Quit Apple Calendar if you haven’t already.
  3. Make sure the CalendarAgent isn’t running in the background, open Terminal and run the following command replacing yourusername with the username of your OS X user account:
    killall -u yourusername CalendarAgent
  4. Open Finder and click on Go > Go to Folder and type ~/Library to browse to your library folder.
  5. Delete the following file: ~/Library/Calendars/Calendar Cache
  6. Delete the following file (if it exists): ~/Library/Caches/com.apple.iCal
  7. Browse to ~/Library/Calendars
  8. You will see a series of folders some of which end in .exchange, inside one of these folders click once to select the Info.plist and look at the preview of the content (or press spacebar to quick view the contents of the file if you don’t have preview switched on in Finder):
    Screenshot from Finder
  9. Inside the same folder there should be another folder that ends in .calendar (if you have multiple .calendar folders look in the Events folder inside each of them, the active calendar will contain .ics files, the other folders should be empty), inside this folder there will be a plist file called Info.plist, open this file in TextEdit or the text editor of your choice (make sure you are inside one of the .calendar folders, both this folder and it’s parent .exchange folder have a file called Info.plist and it’s important you edit the correct file).
  10. Locate the line that says <key>Color</key>, the line below is should say something like <string>#1D9BF6FF</string>, replace the part that says #1D9BF6 (your color string may be different) ignoring the last two FF characters, these are not part of the hex code and need to be left as they are:
    Apple Calendar
  11. Save and close your Info.plist file and relaunch the Calendar app, it should come up with a loading bar while it rebuilds the cache and updates the calendar, once that has finished your calendar should now have your custom colour set on it.

Default Apple Calendar Colours (Hex Codes)
Red – #FB0055
Orange – #FB8208
Yellow – #FEC309
Green – #56D72B
Blue – #1D9BF6
Purple – #BF57DA
Brown – #90714C

Related Posts

7 Comments

Kasper

about 1 year ago Reply

Sad to say that this doesn't work anymore. As Calendar syncs with the exchange server it changes the color again. Sigh!

Matthew Stone

about 1 year ago

Hi, thanks for reporting this. Are you using MacOS Sierra? When I get a chance I will test it out, possible something has changed with the Exchange integration with the latest update

V. Bush

about 1 year ago Reply

Have you had a chance to test this in MacOS Sierra? I could really use this feature.

Matthew Stone

about 1 year ago

Hi, I've not yet been able to test this in Sierra, my office is currently relocating to a much bigger premises and I'm one of the project managers so my days are very long at the moment and haven't had anytime to do much else. As of the week beginning 7th November though rest assured I will finally have some time to look into this no longer working on Sierra.

Chris Giddings

about 1 year ago

Any update yet? I'd love to hear how to get this working on Sierra.

Orang Utan

about 1 year ago Reply

Doesn't work with Sierra, it just resets back =)

dandu

about 5 months ago Reply

For macOS High Sierra I also had to disable the calendar for the account and enable it back.

Leave a Comment