I have entered the birthday for several of my Contacts, and these birthdays show up in Calendar. I know that I can enable or disable all birthdays by selecting or deslecting "Birthdays" from Show Calendars in the top corner of the Calendar app. But I only want to see some of my contact's birthdays in the Calendar; for example, personal contacts but not ex-coworkers.

How can I prevent the display of certain birthdays?

  • I agree that there should be a checkbox option for whether or not to display a birthday or other date in my calendar.
    – user41278
    Feb 6, 2013 at 15:54

4 Answers 4


You could edit out the birthdate information from those contacts you do not want to see in the Birthdays calendar.

Another way to accomplish this would be by manually adding the birthdays you do want to see to a new or existing calendar and then disable the Birthdays subscription.

  • 3
    Moving the birthday into the notes for that person is what I have done so far. I do wish there were a way to enable or disable birthdays by a contact's group.
    – KatieK
    Oct 15, 2012 at 2:07

Contacts.app in macOS 11 Big Sur now with more differentiated date fields which address use cases like yours and more:


  1. Open Contacts.app > Preferences > Template.
  2. Add fields > Dates: Birthday or custom (depending on what's in your template already)
  • Locate the date section in the template.
  • Leave the original "birthday" field.
  • Add a custom field "birth-day" or similarly odd spelled to never collide or get confused with the real "birthday" field.
  • You may also add "date-of-death" if you want to document your deceased contacts.

Then for any contact do the following:

  • Fill the real "birthday" field if you want the person to show up in the dedicated "Birthday Calendar".
  • Fill "birth-day" (your custom date field) if you want to have that documented for a contact but not show up in the dedicated "Birthday Calendar".

As a compromise, you can disable the notification for that person's birthday. In calendar, double click on the birthday even and then change the alert to none. You will then be prompted if you want to change this event or all future events. Select all future events and you will no longer receive notifications for that birthday. It will however remain in your birthday calendar, but you will no longer be pestered with reminders (which is what I came her looking for before figuring out I could disable the reminder)


I modified the script to be as follows:


This script iterates over your contacts. For each contact, it will delete the contact that has the birthdays

tell application "Contacts"
    set peopleToChange to people whose (birth date) is not missing value
    repeat with thePerson in peopleToChange
        delete ((birth date) of thePerson)
    end repeat
end tell

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .