Desktop notification from Google Calendar on a Mac: where it comes from

A meeting starts and nothing appears on screen. The event is in Google Calendar, the reminder is set, the Mac is awake, and the banner never arrives. The usual response is to open Google Calendar settings, find the notification section, switch it from one option to another, and hope.

That rarely fixes it, because the banner on a Mac is produced by three separate layers stacked on top of each other, and only one of them lives inside Google Calendar. This walks the three layers, names the alerts that can never appear as a pop-up no matter what is configured, and gives the order worth checking.

Three different things get called a notification

Google Calendar's own developer documentation splits the concept in two, and the split matters because the two halves have different delivery options.

A reminder is an alarm triggered a set number of minutes before an event starts. That is the ten minute warning before a call.

A notification is a message about a change: an event was added to a calendar, the organizer modified an event, an event was cancelled, an attendee changed their response, or the daily agenda arrived at the start of the day.

The delivery methods are not the same for both. Google lists only two mechanisms, a pop-up and an email sent by the server, and then states which types support which:

Type Pop-up Email
Reminder before an event Yes Yes
Event creation No Yes
Event change No Yes
Event cancellation No Yes
Attendee response No Yes
Daily agenda No Yes

This table answers a question a lot of searches are really asking. Anyone waiting for a desktop banner that says a colleague moved tomorrow's meeting is waiting for something that does not exist. Change notifications are email only. The pop-up mechanism is reserved for reminders, and reminders fire on a clock, not on an edit. That is documented behavior rather than a broken setting, and no amount of configuration in the browser or in macOS will produce a pop-up for it.

The practical consequence is that a calendar watched only through desktop banners will silently miss reschedules. The email for that change is the only channel it travels on.

Which layer is actually drawing the banner

For reminders, which genuinely can be a pop-up, the next question is which piece of software draws it. On a Mac there are two answers, and the troubleshooting is completely different for each.

Through a browser. Google Calendar in a tab uses the browser's notification mechanism, which is a web standard rather than anything Google specific. Permission has to be granted once by the person using the browser. The permission has three possible states: not yet asked, granted, and explicitly denied. Once denied, the site cannot ask again by itself, which is why a reminder that used to work can stop after a single misclick on a permission prompt. The browser also requires the page to be served over HTTPS before it will even request permission, and modern browsers only allow the request in response to a deliberate click rather than on page load.

Browser notification permission is granted per site rather than per account, and it lives in the browser rather than in Google Calendar. That is why the permission survives signing out and signing back in, and why it does not travel to a second browser or a second Mac. Someone who moved to a new machine has to grant it again, and nothing in Google Calendar's own settings will indicate that it is missing.

The browser route carries one more condition that no setting can remove. The browser has to be running. A Mac with every window closed for the evening will not produce a Google Calendar reminder at eight the next morning, because nothing is there to produce it.

Through a calendar application on the Mac. When the Google account is connected to an application installed on the Mac, the alarm is scheduled locally and handed to macOS. The browser is no longer involved, and neither is its permission state. This is the route that keeps working when no browser window is open, and it is the main reason people move a Google account into a desktop calendar in the first place. What the application can do with the event once it arrives is a separate question, covered in the guide.

The macOS layer, and the settings that silence an app completely

Whichever application produces the alert, macOS decides whether it is shown. Those controls live in System Settings under Notifications, and Apple documents each one.

The first is a simple on and off switch per application. Turning it off dims everything else, which is worth knowing because someone who disabled Calendar alerts months ago will find every other setting greyed out and conclude the feature is broken.

The second is Alert Style, and this is where most confusion sits. Apple separates where a notification appears from how long it stays. The location options are Desktop, Notification Center, and Lock Screen. The style options are Temporary, meaning the notification disappears after a while, and Persistent, meaning it stays until dismissed. A reminder set to appear only in Notification Center is working correctly and will never interrupt anything, which is indistinguishable from failure for anyone not looking in the sidebar.

Two further switches decide whether alerts survive a Focus being on. Apple describes Allow time sensitive alerts as letting apps send notifications that need immediate attention, and gives Calendar as the example, with a note that the matching option must also be set for the Focus itself in Focus settings. Both halves are required. Setting one and not the other produces silence during exactly the hours when a reminder matters most.

Three smaller settings round it out: a Dock badge, a notification sound, and previews. Previews can be set to Always, When Unlocked, or Never, and a Mac set to Never will show a banner with no event title in it. Apple also documents pausing notifications while the display is asleep, while the screen is locked, and while the display is being mirrored or shared, which is the setting that explains a Mac that goes quiet during every screen share.

The order worth checking

Working from the outside in saves time, because each layer can mask the one beneath it.

  1. Confirm the alert is a reminder and not a change notification. If the expected message is that someone edited or cancelled an event, stop. That arrives by email only.
  2. Check macOS. Open System Settings, then Notifications, find the application, and confirm alerts are allowed and Alert Style is set to Desktop rather than Notification Center only.
  3. Check whether a Focus is on, and whether the application is permitted to break through it in both the application's notification settings and the Focus settings.
  4. If the alert should come from a browser, confirm the site's notification permission is granted rather than denied, and confirm the browser is actually running at the time the alert is due.
  5. Only then look at the reminder itself, inside the event or in the calendar's default reminders.

Step five is last on purpose. It is the first place almost everyone looks, and the least common cause.

Duplicate banners are the same problem in reverse

The opposite complaint is worth covering in the same place, because the cause is identical. Two banners for one meeting means two pieces of software both scheduled an alarm for it.

The common arrangement that produces this is a Google account left open in a browser tab while the same account is also connected to a calendar application on the Mac. Both are holding the same event, both see the same ten minute reminder, and neither knows about the other. macOS has no way to recognise them as the same alert, because they arrive from different applications.

A second arrangement produces the same result without any browser involved. When the same Google account is connected twice under two addresses, for example a primary address and an alias that resolves to it, the Mac treats them as two accounts and shows two of everything. The events themselves also appear twice in that case, which is usually noticed before the alerts are.

Picking one producer is the fix, and the choice is a real one rather than a formality. A browser tab gives alerts that follow the browser, which suits someone who works entirely in one. Something installed on the Mac gives alerts that do not depend on a window being open. Running both is the only option that reliably goes wrong. Where the difference lands in day to day use is set out in compared with other calendars.

Default reminders are per calendar, and per person

One detail explains a whole class of complaints about alerts arriving for some events and not others.

Default reminders belong to a calendar, not to an account, and they apply to every event in that calendar unless an individual event overrides them. Google's documentation is explicit that these defaults are private information specific to the authenticated user and are not shared across multiple users. A shared team calendar therefore has as many different reminder configurations as it has subscribers, and none of them can see or set each other's.

There is also a second delivery method available for reminders that gets forgotten, and it is the one to reach for when a banner genuinely cannot be trusted. Reminders support email as well as a pop-up, which means a reminder can be sent as mail a set number of minutes before an event starts. That path does not depend on a browser being open, on a Focus being off, or on macOS notification settings at all. For the two or three appointments a week where being late has a real cost, an email reminder is a cheap second line that fails independently of everything above.

Individual events can replace the defaults entirely rather than adding to them. When an event carries its own reminder set, the calendar's defaults are switched off for that event. An event created by someone else, or imported from a file, can arrive with its own reminders already set, which is why one meeting in a run of identical meetings can be the only silent one.

The useful move here is to stop treating the default as a safety net. Check the reminder on the events that actually matter, because a default that was never applied to them changes nothing. The way events get entered in the first place decides how often that happens, which is the subject of entering events.

What to change first

Set the alert location to Desktop in System Settings and allow time sensitive alerts for the calendar application, in both the application's settings and the Focus settings. Then stop relying on banners for reschedules, because those only travel by email. If reminders need to fire whether or not a browser is open, the alarm has to be scheduled by something installed on the Mac, which is what Caltimate does with a connected Google account.

Frequently asked questions

Why does Google Calendar notify about a new event by email but never with a pop-up?

Because that is the documented behavior. Google lists two delivery mechanisms, pop-up and email, and only reminders before an event support the pop-up. Event creation, event change, event cancellation, attendee responses, and the daily agenda are all email only. No setting changes that.

Do Google Calendar desktop notifications work when the browser is closed?

No. A notification produced by a page in a browser needs that browser to be running. To get reminders with no browser open, connect the Google account to a calendar application installed on the Mac, which schedules the alarm locally and hands it to macOS.

Alerts appear in Notification Center but never on screen. What is wrong?

Nothing is broken. In System Settings under Notifications, Alert Style controls both where a notification appears and how long it stays. If the location is set to Notification Center without Desktop, the alert is filed silently in the sidebar. Switch it to Desktop, and choose Persistent if it should stay until dismissed.

Why do some events give a reminder and others do not, on the same calendar?

Default reminders apply to a calendar, but an individual event can override them, and an override replaces the defaults rather than adding to them. An event created by someone else or imported from a file can arrive carrying its own reminder set. Open the event itself and check the reminder there rather than the calendar default.

Does turning on time sensitive alerts get reminders through a Focus?

Only if both halves are set. The application needs Allow time sensitive alerts switched on in Notifications settings, and the Focus itself needs the matching option enabled in Focus settings. Setting one without the other leaves the Mac silent while the Focus is on.

Back to all posts