July 14th, 2008 | Posted by Michael Lucas 56 comments

Quick tip: Calendar color fix for iPhone and iPod touch

MobileMe - iPhone and iPod touch

One of the many new features introduced in the iPhone 2.0 update is the ability for the iPhone’s calendar app to recognize multiple calendars you have in iCal or Google calendar. If you sync your calendar to your iPhone through USB, you may notice a bug where the colors displayed in the iPhone calendar don’t match up with the colors in iCal. Although this appears to be a bug that Apple will have to fix, there are a few homemade workaround solutions you can try if you’re as meticulous about your colors matching as we are.

Solution 1, syncing through MobileMe

Although syncing through USB doesn’t match the colors, push synchronization through MobileMe does. If you already have a MobileMe account, all you need to do is make sure iCal syncs with your me.com account, and then you simply create your MobileMe account on your iPhone and set it to sync with your me.com calendar. Make sure your iCal syncs with me.com first, or you may lose the calendar data on your iPhone.

Another problem arises with this solution however, where subscribed calendars on iCal do not appear on me.com. Until Apple finds a solution for this, the only current workaround is to export your subscribed calendar in iCal and then reimport it as a new calendar. This will create it as new calendar and will properly sync with MobileMe, and to stop duplicate calendars from showing on iCal you can simply check one of them off to stop displaying it. The only problem with this is if you use subscribed calendars that others will change often, in which case you’ll have to do this each time you want to update the calendar on MobileMe and on your iPhone.

If you do not have a MobileMe account, 60 day free trials are available at me.com.

Solution 2, “choose” your iPhone calendar colors

Calendar on the iPhone will assign colors in a certain order for your first five calendars: red, orange, blue, green, and purple. Afterward, any more calendars are assigned a random color out of those five. To manipulate this, use iTunes to sync only selected calendars in the “Info” tab. First sync the one that you want to be red, then sync again including your second calendar that you want to be orange, and so forth. You can create extra calendars to use to “skip” a color if you wish, then delete later at your leisure.

There are a couple minor solutions you can try as well, in iTunes if you go to the “Info” tab and choose to replace your calendar info in the “Advanced” section, colors will be randomly reassigned to your calendars on your iPhone. You can keep doing this until you get lucky, or are satisfied with the colors for each calendar. One last thing you can do is simply change the colors of your calendars in iCal to match with the colors on your iPhone, although if you have been using iCal for a while and the colors are hard-coded into your brain, then this is probably not a particularly viable solution. Know of a fix not mentioned here? Be sure to let us know!

?

Share:
  • Digg
  • TwitThis
  • Facebook
  • Mixx
  • del.icio.us
  • Google Bookmarks
  • StumbleUpon
  • NewsVine
  • email
Apple iTunes Apple iTunes Advertise on Touchtip

56 Comments

  1. 1

    Great tips.

    Sadly the second option didn’t work for me, but I managed to sync the colours using mobile me and then deactivate everything.

    The colours still work – no need to reprogramme my brain now!

  2. 2

    Second option worked for me! Thanks!

  3. 3

    I noticed another calendar issue with the iPhone. There seems to be no way to reassign an event to a different calendar. So I went to iCal and reassigned it there, but the change does not seem to propagate back to the iPhone.

  4. 4

    I have mobile me, but your solution 1 does not work. I still get wacky colors for the calendars on the iphone.

  5. 5

    I’ve experienced this color-assignment issue, as well as another, more frustrating one, with the 2.0 update: Events that are scheduled properly in iCal show show up as occurring three hours *earlier* on my ipod touch, while events created in my ipod touch appear three hours *later* when syncing to iCal. Both my computer and my ipod are set to EST.

  6. 6

    Thanks! Adding one by one in the correct order via iTunes using the advanced replacement section of the info tab fixed it for me!

  7. 7

    Brilliant – solution 2 worked just as you said. Saved my sanity! Thanks.

  8. 8

    #2 didn’t work for me. My jailbroken 2.0 seems to assign colors to the calendars based on their alphabetical order.

  9. 9

    The second option did not work for me, but I kept trying. It took about 5 tries and I had to sync the calendars one by one in a different order than suggested, but eventually the colors matched up correctly! Keep trying and experiment a little and it should work!

  10. 10

    option #2 worked perfectly for me…just sync’d them up one at a time using the color order you listed above. THANK YOU!!!! (big sigh of relief) the mis-matched color issue was driving me crazy. thankfully, all the iphone colors matched my google calendar colors…I had to change from pink to red on one calendar…but I think i’ll live. :-)

  11. 11

    Great tip- except that I already sync’d (sp?) all my calendars to my phone. Does anyone know how I get them off the phone, so that I can put them on again in the right order? Tried selecting in itunes only my red one, then orange, but they still come in mangled. =(

    Thanks!

    Jeff

  12. 12

    Ok, I finally found a fix that worked for me! Link here:

    http://discussions.apple.com/thread.jspa?messageID=7776953

    Go down quite a bit to a post by SwissMo. Basically worked, with some tweaks (pink never appeared on my iphone!)

    Jeff

  13. 13

    Beautiful. Option 2 worked for me.

  14. 14

    There is a workaround for the problem with subscribed calendars not syncing with MobileMe, if you have BusySync. Set up a Google Calendar account and subscribe to the calendar on Google Calendars rather than iCal, and then use BusySync to sync the Google calendar with iCal, which will then sync on to the iPhone over MobileMe.

  15. 15

    Here is the real way to do it (not for the faint of heart) – at least for firmware version 2.0.2 on a jailbroken phone.

    The Calendar information is stored in an sqlite database. The db file is /var/mobile/Library/Calendar/Calendar.sqlitedb.

    The “Calendar” table contains a row for each calendar, and includes the following fields (among others):
    store_id, title, read_only, color_r, color_g, color_b.

    The color_x fields store the colour in 8bit RGB format and the title stores the name of the calendar. So, to change the colour the “Holidays” calendar to white, you need to run the following query on the database:

    UPDATE Calendar SET color_r=255, color_g=255, color_b=255 WHERE title=’Holidays’;

    Of course, to do this, you will need to open the database. The easiest way to do that is by using sqlite on a Linux machine. Just run “sqlite Calendar.sqlitedb” after transfering the database file to a Linux machine. If your like me, and have multiple sqlite versions installed, you might have to run “sqlite3 Calendar.sqlitedb” instead.

    It is advisable to make a backup copy of the Calendar.sqlitedb file before playing with it :)

    Unfortunately iTunes doesn’t like it when you mess with your Calendar settings and refuses to sync afterwards… Such is life.

  16. 16

    So apparently iTunes doesn’t care if you mess with your calendars.

    Just remember to change the ownership of the Calendar.sqlitedb file back to mobile if you copy the file back as root.

  17. 17

    MobileMe does not retain the colors from iCal.

    Solution #2 sort of works, but then if you try to sync with MobileMe by turning on syncing on the iPhone, you get the random colors again.

    This seems like a small matter, but it’s actually really annoying! Apple, are you listening? Anyone else have a fix for this?

  18. 18

    I was using a MobileMe trial but after getting fed up of nothing updating AT ALL even though everything was set up I just cancelled the trial, but everything’s gone back to the way it was. I would try the second method, only the problem is that with iCal, I’d changed the calenders to have custom colours rather than the automatically assigned ones, so there’s no point. Shall just hope Apple sort it in a future update.

  19. 19

    I have had my iPhone 3G since it came out and I’m very happy with it. Then today, out of the blue (literally), my calendar changed to, you guessed it, blue. Hardly readable. How do I change it back to red? And why did it do this?

  20. 20

    Mine turned to blue today too – I have no idea why. And all the other calendars are yellow. WTF!!!

  21. 21

    I reset all of my settings and it didn’t change the calendar colors back. This is so annoying – I can’t read the calendar at all.

    I’m using Outlook to synch – not mobileme or ical.

  22. 22

    Same problem here… calendar inexplicably changed to bright freakin’ yellow with white text. Completely unreadable. WTF is right!

  23. 23

    Thanks for the help. I expect for Apple to get these thing right. For example the default colors for iCal are Blue, Green, Red, Orange, … But the iPhone list starts with Red, Orange….

    Syncing the default color order on the two platforms would have made this need to create color place holder calendars just for the purpose of skipping a default color unneeded.

    I hope Apple sees the need for a change.

  24. 24

    Thanks for the help – can’t wait for WebIS to give us a *real* calendar via Pocket Informant! In the meantime, your tip#2 let me get colors so they’re workable and sync’d with iCal.

    NOW…can I switch the sync option back to “all” calendars, or should I just leave the individual calendars selected?? I guess I’m worried that I’ll create a new calendar and forget to manually sync it!

    Thanks again,
    The Duck

  25. 25

    tip#2 works great for me!!
    THANKS

  26. 26

    There’s no apparent rhyme or reason to the order of color assignment by the iPhone — it changed when I started over a second time. Just lock in one color to start, then build your matches from there.

    It’s like playing Master Mind.

    It’s good encouragement to minimize the number of calendars you maintain in iCal.

  27. 27

    Option 2 didn’t work for me…I tried adding the calendars in the right order and it kept assigning the colors based on alphabetical order, and i tried doing the “replace calendars” option in the Advanced section and that didn’t seem to work either. I kept getting the same colors.

  28. 28

    3G: I tried Option 2, sync-ing my calendars in order, adding a new calendar with each sync. The only difference I found in the results was that the first calendar was purple, then red, orange, blue, green and then red again. Pretty much got them the way I want them. Thanks for the tip!

  29. 29

    Thank you! I got the second option to work for me after I disabled calendars in iTunes and checked replace calendars under “Advanced” I just hated having my personal color as orange.

  30. 30

    Using iPod Touch. #2 sort of worked. I am a mom of two and keeper of all four of our (non-work) calendars. On iCal I added a . before our names to move them to the top of the alpa list on ipodTouch. Got two names with same color and two names with different livable colors. BUT I sure would like to have the ability to match EXACTLY iPodTouch with iCal colors. It does make me a little crazy to change after years with previous color selection. How do we notify Apple?

  31. 31

    I made the color change in my Mobile Me account [Calendar Info]. This immediately synced to my Mac and iPhone and set the calendar colors on each just as I chose them in Mobile Me.

    ELH

  32. 32

    Does anyone have any solutions regarding the 3 hours earlier and 3 hours later problem? For some reason my iPod touch and my iCal do not have the same calendar data. iCal is exactly correct, but the times are almost never correct on my touch. Help!! Thank you!!

  33. 33

    The 3 hours deal is probably a result of ‘Timezone Support’ being set to ON on the Touch. Then, when you add an event on the touch it is being set as EST or non timezone or something and when syncing iCal is set for no Time Zone support (check Advanced in the prefs). Or vice versa.

    It’s a simple thing to change but isn’t set right by default. After you turn both to ON or OFF then you may have to re-sync and re-adjust events to make sure they’re correct. I travel a bit so I actually set them to both be ON. But then of course I have to make sure the zone setting is current before I jack around with stuff. AND if your system is not reset to the new time zone then it can get fun all over again!

  34. 34

    Come on Apple. This device is so expensive and Apple doen’t even manage to set the colours of the calendar corretly? OK, maybe that is a bug, but why isn’t it corrected then? Firmware 2.2.1 and still no fix for this.

    It seems the latest releases of Apple just keep getting more unreliable… (USB-bug “accidentally” introduced with 10.5.6, iLife09 not compatible backwards with iLife08, list continues).

  35. 35

    Thanks, this was helpful. The second option worked with a bit of trial-and-error.

  36. 36

    If you are syncing via exchange, simply turning calendar sync in the account setting, then turning back on set the color back to red, and more readable, after an office 2003 to 2007 upgrade.

  37. 37

    I was going purple with frustration at the colours not syncing!!! (I’m very anal-retentive that way). thanks for making my night!

  38. 38

    I had noticed this and it was really bugging me. I tried the 60 day trial for moblie me but found many little things like this that kept me from paying for it. I like the fix to carefully load the calendars to take advantage of the order in which moble me assigns them to make my calendars match. However I would prefer to use different colors than the standard ones so……great workarounds. Thanks!

    Also I noticed the subscription calendar problem. Apple fix this stuff if you are charging money for subscriptions!!!!!

  39. 39

    Thanks for all the tips here. I synch with Wxchange and was able to reset the colours by disconnecting the calendar from exchange then reconnecting it.

  40. 40

    I sync to an iPhone 3g my business calendar via Exchange server and Outlook (shows up orange), and maintain a second personal calendar that does not sync (due to iPhone limitations; shows up red). Synced orange calendar went suddenly to light blue with white, almost indecipherable, lettering. In iPhone Settings, I turned off the calendar sync option, removing all calendars data from my iPhone (a bit scary…). Then turned that option back on, and all data reappeared, as did the orange color for my primary calendar. Relief. Thanks to “Sandy,” Comment #36, above.

  41. 41

    For those getting Google calendar synced using the Exchange ActiveSync, there is one way to do this. Go to calendar settings on the Google calendar page and export calendars as iCal files. This will save a copy of all events with all attributes saved onto your desktop. Following that you can safely delete the calendars from your account and sync your phone such that your iPhone calendar becomes brand new.

    You can then start to create new calendars with random names like 1, 2, 3… and then sync them all to your iPhone without adding or importing any iCal data. When they’re synced to your iPhone you’ll be able to see all the calendars listed with their assigned color. From there you can start renaming say, 1 (Red), or 2 (Yellow), to whatever calendar you wanted that color to be. This allowed me to “choose” whatever colors I wanted. When all of them were renamed with original names, I then imported all the data into each of them from the files on my desktop. Following that I deleted all the other randomized calendars that I didn’t use. I could get most of the common colors like red, orange, purple, blue, green, but yellow, cyan and others did not appear (maybe I didn’t create enough new calendars to hit those colors).

    Hope this helps.

  42. 42

    Here’s a tip for iPhone 3.0 Calendar Subscription colors which are screwed up too:

    http://www.24×7digital.com/content/view/182/70/

  43. 43

    The second solution has worked for me earlier, but it seems since the update to 3.0 the behavior has changed.
    The colors instead gets assigned in this order:
    Blue (gcal account calendar)
    Red
    Orange
    Green
    Purple

    I have not been able to find a workaround for this issue other than having to live with the Blue and Red having switched place.

  44. 44

    Thank you for this great work around. On my iPhone I used the settings app to add calendars and the colors followed the order you said they would. I was able to match colors between four sets of calendars. I didn’t have to create but one temp calendar and publish it, because you can subscribe to the same calendar over and over again. Makes it easy to delete the unwanted calendars when you have completed the color matching because they all have the same temporary name.

  45. 45

    This color problem is REALLY ANNOYING! Apple should fix this blatant bug. I have a brand new 32 gb iphone 3gs, 3.0 sw, itunes 8.2, etc. Still has calendar color problem. Manual one-by-one syncing did not work. It worked for the first few and then suddenly scrambled everything by the time I had added maybe the fourth calendar. MobileMe colors were correct online (ie, same as ical), but synced randomly to iphone. Anyway, here is the fix that worked for me:

    Use mobileme (open a free account if necessary) and get your ical calendars synced to mobileme. For some people, it seems that syncing their iphone to mobileme at this point solves the color problem. If not (and it didn’t for me), on your iphone, turn off mobileme calendar syncing and DELETE the calendars from your iphone. If this makes you nervous, backup your ical file on your computer first, but deleting your iphone calendars will NOT affect your ical data on your computer or on mobileme.

    In mobileme online, on the calendar page, select your calendars one by one, get calendar info (under the gear button), change the color or description, and click ok. You may have to reload the mobileme page to make sure the change was recorded. Then you can change the color/description back if you like. Then on your iphone, turn mobileme cal sync back on. Colors should be correct now. Note if you use custom colors in ical, you will need to change the DESCRIPTION on mobileme, not the color (or else you will lose the custom color option after reloading the page).

    Sorry for the lengthy post, but anyone who was as frustrated by this as I was surely won’t mind…

  46. 46

    adam, [above] THANK YOU. you’re a genius.

    i’ve had issues with ical/iphone colors on and off since the beginning, but using mobileme the colors seemed stable until last night. for some reason the colors on my phone changed overnight and–despite syncing through mobileme–i was unable to fix them, until i read your ‘lengthy’ post. thank you, thank you.

    it annoys the crap out of me that apple is now saying the problem of colors not matching from ical to iphone is fixed as long as you’re using 3.0. i am, and it’s not fixed. you should be able to get matching colors using usb sync.

    it’s frustrating that you still have to use mobileme to get the colors to sync properly (paying an additional $99 a year should not be a prerequisite to getting my expensive gadget to work properly) but at least the problem is now solved…until the next time. thank you.

  47. 47

    had to do the “random replace option” which took quite a few trials, but worked eventually, so I don’t have to reprogram my brain.
    Thanks!

  48. 48

    My MAC iTunes does not see my iPhone 3Gs Microsoft Active Exchange calendar so I can’t change the color on the calendar as is described in this article. I really want to change it from red to orange.
    Any ideas?
    Thanks,
    Stan

  49. 49

    My MAC book Pro iTunes does not see my iPhone 3Gs Microsoft Active Exchange calendar so I can’t change the color on the calendar as is described in this article. I really want to change it from red to orange.
    Any ideas?
    Thanks,
    Stan

  50. 50

    This isn’t bad, but how do you change the name of the calendar? I have two “untitled” and I want a “personal”

  51. 51

    i just found where the iPhone stores the calendar color info – I was able to modify my 6 calendars & included colors like gray and pink!!! :)

    Anyone with sqlitedb experience and iphone app developing want to contact me at john3.iphone ‘at’ gmail ‘dot’ com so we can create an app to do this???

  52. 52

    Thank you Sandy (Comment #36), I had the same problem as TRosell and now it is fixed!

  53. 53

    I did the sqlite3 color change but everytime I rebooted or synced my phone the colors would go back to the previous settings. So I created a bash script to assign the colors the way I want to see them. Then I created a plist file to run the bash script once on startup and every 4 hours after that. I’m not sure if there is a trigger for after a sync. That would be better than every 4 hours.

    I called the script “CalendarColors.sh”:
    #!/bin/bash
    sqlite3 /var/mobile/Library/Calendar/Calendar.sqlitedb “update Calendar set color_r=242, color_g=166, color_b=64 where title = ‘XXXXXXXX’;”

    I have several lines of color commands one for each calendar.
    Then make sure to set the script file as executable (Can’t remember the command right now)

    Then I created a com.calendarcolors.plist and dropped it into
    /Library/LaunchDaemons/

    Label
    com.calendarcolors

    UserName
    mobile

    ProgramArguments

    /var/mobile/Library/Calendar/CalendarColors.sh

    RunAtLoad

    StartInterval
    14400

  54. 54

    None of these worked if syncing to Google calender thru Microsoft Exchange (at least for me). However I did find a way to make it work under these circumstances. If you want the base calender (the one your Google log in goes to) to come out red, then you won’t need a dummy account, so skip that part and just add your calenders in order (red, orange, blue, green, purple). I had to create a dummy Google calender account and add all my calenders to it to get my personal calender to come out a different color (I was aiming for purple). Then I synced to the dummy account’s blank calender first (you can’t NOT select the base calender so it has to be synced even empty) followed by my other calenders one at a time in the order of the color that I wanted them to fall in to.

    The only thing that didn’t work perfect was when I added the second calender, it made that calendar red and the base dummy blank calender orange (since the second calender actually had events is my guess going by other people’s experiences with the automatic ordering). Turns out I liked it better that way so that was fine. All the other calenders added in order came out as the expected color. I got my personal calender as purple like I wanted, and all my friends/family’s calenders the color I wanted them!

  55. 55

    I fixed this by syning using the CalDav option and the colors matched the google calendar colors.

  56. 56

    July 2008 to Feb 2010 and this is still an issue. I just bought my first Iphone but have been Mac since my first 512. After confusion of passwords etc was finally sorted and Mobile me is up and running I ran into this little annoyance. Several times ‘Is Apple listening?’ This is such a no brainer that I can’t believe two years has gone by since this steam started. I guess Steve has been a bit ill so we should cut him some slack. I will work on the options suggested tom see if I can get the colours where I want them

Add a Comment