Reminders badge shows wrong count on different devices

TLDR: Launch the Calendar app, go to Settings, Alerts, then enable "Show shared calendar messages in Notification Center" and reboot.

Longer explanation follows.


I was having this same problem: no badge on my iOS devices, but a badge of "1" on my Mac.

After searching through the Console app, I found some messages from CalNCService that indicated it was requesting a badge count of "1" on behalf of a EKCalendarInviteReplyNotification. This suggested that the badge was the result of some activity on a shared Reminders list. It even printed out the name of the list in question - a shared list that I had "left" a while ago.

But, there were no notifications in Notification Center related to this list. Well, it turns out the notification was being filtered out by a setting in the Calendar app. I went to Calendar.app -> Settings -> Alerts and enabled "Show shared calendar messages in Notification Center".

That by itself did nothing, because the event was already filtered. So I went to Activity Monitor and force-quit the CalNCService. I restarted the Calendar app so it would restart the service (rebooting would do the trick too), and BOOM, the system presented me with the missing notification!

The notification was that I no longer had access to this shared list (sigh, who cares). I'm guessing the person who originally shared it with me had deleted it. So I simply dismissed that notification and the badge went away.

Bonus explainer:

Why does Calendar have anything to do with Reminders? It's because Reminders, internally, was originally (and seems to still be) implemented using "secret" hidden calendars. They did this because, in the days before iCloud, Calendar syncing was one of only a handful of ways to share data between devices. So you could sync and share your Reminder lists even if you were using Google or Yahoo or whatever else. Another way to share data was through email servers - which is exactly what the Notes app did. Reminders == Calendars, Notes == Emails.

Clever at the time, but I'm sure the engineers are quite sick of it now.


You can try force refresh Reminders in iCloud with a debug trick:

Go to Terminal (in /Applications/Utilities/Terminal.app) and enter the following command:

defaults write com.apple.reminders RemindersDebugMenu 1

Now open Reminder (or restart the app) and you will see a debug menu, go into that menu and click Refresh, and see if it solves your problem.

Here is a picture of that menu:

Reminder Debug Menu

To get rid of the debug menu enter this command:

defaults delete com.apple.reminders RemindersDebugMenu

Then restart Reminder app.


First I thought, restoring an older instance of the "Calendars and Reminders" storage via iCloud.com fixed the phantom badge for me, but it came back after a little while!

After spending a ridiculous amount of time trying all the suggestions here and all over the internet, the only procedure that really helped in the end (at least so far, fingers crossed!) was the one described in the "Mac" section of the Apple Support document "Get help using iCloud Contacts, Calendars, or Reminders":

  • Go to System Preferences... / iCloud and disable Calendars and Reminders
  • Close the System Preferences
  • Wait for 1 minute
  • Go to System Preferences... / iCloud again
  • Enable Calendars and Reminders
  • Reboot the Mac

That last point is crucial. Only after the reboot, the phantom badge was gone (and is still gone since about 30 minutes). And no, rebooting alone, without the steps before, didn't help either.


On iOS there's no need to reboot for updating the reminders badge notification. Just open the Calendar App, press "Calendars" and pull down the entire page for updating all of your Calendars. This will force the update of your reminders too.