Itsycal: the setup order that holds up

A Google Calendar week that is mostly meetings produces a specific habit: switching to a browser tab, finding the calendar, scrolling to today, and switching back, twenty or thirty times a day. Itsycal exists to remove that loop. It puts a month grid and an agenda under a small icon next to the clock, and it opens with one click or one key.

Most people who install it make the same early mistakes. They start in Itsycal's own settings, which is the wrong end. Itsycal is a reader. Nearly every behavior that matters, from which calendars exist to where a new event lands, is decided somewhere else first. Work in the order below and there is very little left to configure inside the app itself.

What Itsycal is, and what it deliberately is not

The developer's site describes it in one line: "Itsycal is a tiny menu bar calendar." The same site states that the developer's apps are free, with an optional donation for anyone who wants to support them. The source code is published on GitHub under the MIT License. The version history lists 0.15.12 as the current release as of September 2026, and the current build requires macOS 11 or later. Older builds remain available on the same page for macOS 10.14, 10.12, 10.10, and 10.8. The download comes directly from the developer rather than the Mac App Store, and updates arrive through the built-in updater.

On the four questions that tend to matter before committing to a small independent tool, the public record is quiet. There is no pricing change, no announced end of development, no pause in distribution, and no change of owner on the site or in the version history. The repository received commits in September 2026.

The scope is narrow on purpose:

  • It does: show a month grid with an agenda, create simple events, show locations, offer a join button for video meetings, and replace the menu bar clock with a custom date and time format.
  • It does not: connect to Google or any other account, sync anything, or plan a day by weighing one event against another.

That second list is the reason for the setup order. Itsycal reads what macOS Calendar already has. If something looks wrong in Itsycal, the fix is usually in Calendar or in System Settings.

Step one: decide where things live before opening Itsycal

The help page is direct about the data source: Itsycal "can display events from calendars you have set up in the Mac Calendar app." So the first job is in Calendar, not Itsycal.

Add the accounts to Calendar

Add the Google account in Calendar under Calendar, Add Account. Every calendar that should appear in the menu bar has to appear in Calendar first.

Pull in shared and delegated Google calendars

This is the step most often skipped. Itsycal's help notes that it cannot show delegate calendars directly. The workaround it gives is Google's own sync settings page for Apple devices: select the delegate calendars there, save, and they arrive in Calendar as ordinary calendars. From there they show up in Itsycal like any other. The same page controls whether calendars shared with the account come down to the Mac at all.

Set the default calendar and defaults for new events

Itsycal has no setting for where a new event goes. According to its help, it honors the default calendar chosen in Calendar's General settings. Since version 0.15.11, the default event length also follows Calendar's setting, where earlier versions always used one hour. The default alert follows Calendar too.

This is the setting to get right. If the default is a personal calendar, a client call created from the menu bar lands there, and the invitation, if one is added later, comes from the wrong address. Choosing the account used for external scheduling as the default prevents most of that.

What to decide Where it is set Why it matters in Itsycal
Which accounts exist Calendar, Add Account Nothing else can be listed
Shared and delegate Google calendars Google's sync settings page Otherwise invisible on the Mac
Where new events land Calendar, Settings, General Itsycal uses it for every new event
Default length and alert Calendar settings Inherited by the new event popover
Permission to read calendars System Settings, Privacy and Security No events at all without it

Step two: list only the calendars that change what happens next

Once Itsycal has permission, open its settings from the gear icon under the grid and choose the General tab. Every calendar that Calendar knows about appears with a checkbox.

The useful test for each checkbox is whether an event on that calendar would make someone get up and go somewhere. Work calendars and team calendars with meetings to attend pass the test. Birthdays, a subscribed holiday feed, another department's schedule, and a school rota usually do not. Unchecking a calendar here does not remove it from Calendar. It only keeps it out of the agenda, which is the narrow list that has to answer one question fast: what is next.

Two other settings belong in this pass.

First day of week sits near the top of the General tab. By default it follows the locale, Sunday in the United States and Monday in much of the rest of the world.

The Appearance tab has an option to show days with no events in the agenda, dimmed. It is worth turning on for anyone who uses the agenda to find a free day in the week rather than to see the next meeting. Event locations can be toggled from inside the open calendar with the period key, without going back to settings.

Step three: choose what the menu bar shows

The menu bar item has two parts, an icon and optional text.

The default icon is a small solid rectangle with the day of the month. In the Appearance tab it can also show the month, the day of the week, or both, and it can be switched to an outlined version, a generic calendar icon, or the Itsycal icon.

The text is where Itsycal becomes a clock replacement. Enter a date and time pattern and the text appears to the right of the icon, drawn in the same font as the system clock. A pattern like E h:mm gives the weekday and the time. Once a pattern is set, the icon can be hidden, leaving only the text. The developer's menu bar page shows E MMM d h:mm a with the icon hidden producing a line like "Thu Mar 18 11:12 AM".

Keep the text short on a MacBook with a notch. macOS silently hides menu bar items it cannot fit, and a long pattern competes with every other menu bar app. Itsycal's help suggests holding Command and dragging it toward the right side of the menu bar, where it is less likely to be pushed out.

Text size has three steps on a slider in Appearance. The grid can show up to two months at once, and rows can be added or removed by dragging the handle under the grid or with Control J and Control K.

Step four: make it a keyboard tool

A menu bar icon that has to be clicked is only slightly faster than a browser tab. The General tab has a Keyboard shortcut field for opening Itsycal from anywhere. Setting it is the single change that decides whether the app gets used a month later.

Inside, navigation follows vim conventions, and the help lists them in full:

Action Keys
Previous or next day H and L
Previous or next week K and J
Previous or next month Shift H and Shift L
Today Space
Go to a specific date Shift Command T
Keep Itsycal open while using other apps P
New event Command N
Join the first active meeting Command J
Refresh events Option Command R

Movement keys take a repeat count. Typing 2, 1, L moves forward 21 days. Typing 5 and the up arrow goes back five years.

Meetings

The join button recognizes links from services including Zoom, FaceTime, Jitsi, Chime, and Workplace. By default the button turns on 15 minutes before the start time and off at the end of the meeting. Command J is the same as pressing the first enabled button, so the global shortcut followed by Command J joins the next call without touching the trackpad.

The parts people rarely find

A few features are easy to miss because they answer questions nobody expects a menu bar calendar to answer.

Date arithmetic

Select a date and press the # key. The top left corner shows how many days that date is from today and which day of the year it is. The help describes it as "Totally useless until it's surprisingly useful." It is quick for counting days to an invoice due date or a contract renewal, and the repeat count handles the reverse: typing 3, 0, L lands on the date thirty days out.

Opening Itsycal at a date from somewhere else

Itsycal registers a URL scheme. A link in the form itsycal://date/2026-10-01 opens it with that date selected, and itsycal://date/now opens today. Pasting such a link next to a deadline in a notes app or task manager gives a one click view of how crowded that week already is.

An hourly signal

Beep beep on the hour, in the General tab, plays a short sound at the top of every hour. Placing a file named beep.mp3 in Itsycal's folder inside Application Support replaces the default sound.

Settings with no checkbox

The version history documents several preferences that are only reachable from Terminal. One shows event details when the pointer rests on an agenda item instead of requiring a click. Another keeps meeting join buttons enabled indefinitely, which suits a standing video room used every week. Because these do not appear in the settings window, keep a note of any that were changed.

When the menu bar is set up and the week still does not work

After these four steps, finding the next event takes about a second. If the week still falls apart, the problem was never visibility, and it is worth naming which of two problems it is.

The first is capture. Plans get made in a hallway or on a call, and they are not entered until later, if at all. Itsycal's new event popover has fields for title, time, alert, notes, and URL, which is fine at a desk and slow in the middle of a conversation. What matters for this problem is how few steps sit between deciding on a meeting and having it recorded, which is covered in entering events.

The second is the gap between events. Two meetings in different buildings, back to back, look like a tidy afternoon in any agenda. The travel between them does not appear unless the calendar treats it as time that has to be reserved. That approach is set out in travel time.

A simple way to tell them apart is to look back over last week. Events that never made it into the calendar point to capture. Events that were there but could not be reached in time point to gaps.

What to change first

Open Calendar's General settings and set the default calendar to the account used for scheduling with other people, then assign Itsycal a global shortcut. Those two changes decide most of what happens afterward. If a week of use shows that the trouble is capture or travel rather than seeing the schedule, the side by side notes in compared with other calendars show how a desktop calendar such as Caltimate handles those parts.

Frequently asked questions

Is Itsycal free?

Yes. The developer's site says the apps are free and offers an optional donation. The source code is published under the MIT License, and as of September 2026 there is no paid tier or announced price change.

Why does Itsycal show no Google Calendar events?

Itsycal does not connect to Google itself. It reads the calendars in the Mac Calendar app, so the Google account has to be added there first. Then the individual calendars need to be checked in Itsycal's General settings, and macOS needs to have granted calendar access.

Which calendar does a new event from Itsycal go to?

It goes to the default calendar set in the Calendar app's General settings. Itsycal has no separate setting for this. Since version 0.15.11 the default event length also comes from Calendar.

Can Itsycal open at a specific date from a link?

Yes. Itsycal supports a URL scheme in the form itsycal://date/ followed by the date as year, month, and day, for example 2026-10-01. Using now in place of the date opens today.

Back to all posts