Beginner~12 min setupProductivity & CommunicationVerified April 2026
Google Calendar logo
Slack logo

How to Send Out-of-Office Alerts from Google Calendar to Slack with Make

Automatically post to Slack when someone creates an all-day 'OOO' or 'Vacation' event in Google Calendar.

Steps and UI details are based on platform versions at time of writing β€” check each platform for the latest interface.

Best for

Teams that need fast OOO notifications with custom filtering for specific event types or titles.

Not ideal for

Simple setups with under 10 OOO events per month where Zapier's built-in templates work fine.

Sync type

real-time

Use case type

notification

Real-World Example

πŸ’‘

A 25-person marketing agency uses this to notify #team-updates whenever someone blocks PTO in their shared Google Calendar. Before automation, project managers manually checked calendars each Monday and often scheduled meetings with people who were out. Now they get instant Slack alerts when anyone adds 'OOO', 'Vacation', or 'PTO' events, preventing double-booked resources and client delays.

What Will This Cost?

Drag the slider to your expected monthly volume.

/mo
505005K50K

Each platform counts differently β€” Zapier: 1 task per trigger. Make: 1 operation per module per record. n8n: 1 execution per run.

Prices shown for annual billing. Based on published pricing as of April 2026.

Estimated ROI

1000

min saved/mo

$583

labor value/mo

Free

no platform cost

Based on ~2 min manual effort per operation at $35/hr fully loaded labor cost.

Implementation

Skip the setup

Import this workflow directly into Make

Copy the pre-built Make blueprint and paste it straight into Make. All modules, filters, and field mappings are already configured β€” you just need to connect your accounts.

Before You Start

Make sure you have everything ready.

Google Workspace or Gmail account with calendar access
Slack workspace admin permissions or pre-approved Make app
Access to the target Slack channel where notifications will post
Make account with available operations in your plan

Field Mapping

Map these fields between your apps.

FieldAPI Name
Required
Event Titlesummary
Person Nameorganizer.displayName
Start Datestart.date
3 optional fieldsβ–Έ show
End Dateend.date
Event Creatorcreator.displayName
Event Descriptiondescription

Step-by-Step Setup

1

Dashboard > Create scenario > + > Google Calendar

Create New Scenario

Start building your scenario in Make. You'll connect Google Calendar as the trigger and Slack as the action module.

  1. 1Click the blue 'Create a new scenario' button from your Make dashboard
  2. 2Click the + icon in the center of the canvas
  3. 3Search for 'Google Calendar' in the app list
  4. 4Select 'Watch Events' from the trigger options
βœ“ What you should see: You should see a Google Calendar module with 'Watch Events' selected on your canvas.
2

Google Calendar module > Connection > Add

Connect Google Calendar Account

Link your Google Calendar account to Make. This creates the authenticated connection needed to monitor calendar events.

  1. 1Click 'Add' next to the Connection field
  2. 2Select 'Google' as the connection type
  3. 3Click 'Continue' to open Google's OAuth window
  4. 4Authorize Make to access your Google Calendar
  5. 5Name your connection something like 'Work Calendar'
βœ“ What you should see: You should see your connection name appear in the dropdown with a green checkmark.
⚠
Common mistake β€” Don't use a personal Gmail account if you need to monitor team calendars β€” use a Google Workspace account with proper permissions.
Make settings
Connection
Choose a connection…Add
click Add
Google Calendar
Log in to authorize
Authorize Make
popup window
βœ“
Connected
green checkmark
3

Google Calendar module > Settings

Configure Calendar Watch Settings

Set up the trigger to monitor the right calendar and watch for new events. This determines which calendar events will start your automation.

  1. 1Select your target calendar from the 'Calendar ID' dropdown
  2. 2Set 'Watch Events' to 'Events Created'
  3. 3Leave 'Show Deleted Events' unchecked
  4. 4Set 'Max Results' to 100
  5. 5Click 'OK' to save the module settings
βœ“ What you should see: The Google Calendar module should show your selected calendar name and 'Events Created' as the watch type.
⚠
Common mistake β€” Selecting 'Events Updated' will trigger on every edit including time changes β€” stick with 'Events Created' for OOO alerts.
Make
+
click +
search apps
Google Calendar
GO
Google Calendar
Configure Calendar Watch Set…
Google Calendar
GO
module added
4

Module connection line > Set up filter

Add Filter for OOO Events

Create a filter between modules to only process events with OOO-related titles. This prevents the automation from running on every calendar event.

  1. 1Click the gear icon on the line between modules
  2. 2Click 'Set up a filter'
  3. 3Name the filter 'OOO Events Only'
  4. 4Set condition: 'summary' contains 'OOO' OR 'summary' contains 'Vacation'
  5. 5Add another condition: 'start.date' exists (for all-day events)
βœ“ What you should see: You should see a small funnel icon on the connection line with your filter name displayed.
⚠
Common mistake β€” Use 'start.date' not 'start.dateTime' β€” all-day events only have the date field populated.
Google Calendar
GO
trigger
filter
Condition
matches criteria?
yes β€” passes through
no β€” skipped
Slack
SL
notified
5

Canvas > + > Slack > Create a Message

Add Slack Module

Connect Slack as the action that will post your OOO notification. This module sends the actual message to your team channel.

  1. 1Click the + icon after your filter
  2. 2Search for 'Slack' in the apps list
  3. 3Select 'Create a Message' from the actions
  4. 4Click 'Add' next to Connection to link your Slack workspace
βœ“ What you should see: A Slack module appears on your canvas with 'Create a Message' selected.
6

Slack module > Connection > Create connection

Connect Slack Workspace

Authenticate your Slack workspace so Make can post messages. You'll need admin permissions or approval to install the Make app.

  1. 1Click 'Create a connection' in the connection dropdown
  2. 2Select your Slack workspace from the list
  3. 3Click 'Allow' to grant Make posting permissions
  4. 4Name your connection after your workspace name
βœ“ What you should see: Your Slack workspace name should appear in the Connection dropdown with a green status indicator.
⚠
Common mistake β€” If you don't see your workspace, you may need Slack admin approval β€” check with your IT team before proceeding.
7

Slack module > Channel settings

Configure Slack Channel

Select the target channel for OOO notifications. This is where team members will see the automated alerts.

  1. 1Select 'Channel' as the target type
  2. 2Choose '#team-updates' from the Channel dropdown
  3. 3Leave 'As User' unchecked to post as the Make bot
  4. 4Set 'Parse' to 'None' for now
βœ“ What you should see: You should see '#team-updates' selected in the Channel field.
⚠
Common mistake β€” Make sure the Make app is added to your target channel β€” it can't post to channels it's not a member of.
8

Slack module > Text field

Build Message Template

Create the message format that will post to Slack. Map calendar data into a readable notification format.

  1. 1Click in the 'Text' field to open the message composer
  2. 2Type: 'πŸ–οΈ *' then click to add the 'organizer.displayName' field
  3. 3Add: '* is out of office\nπŸ“… ' then add the 'summary' field
  4. 4Add: '\n⏰ Starting ' then add the 'start.date' field
βœ“ What you should see: Your message template should show calendar field mappings in gray boxes within your text.
⚠
Common mistake β€” Use \n for line breaks in Slack messages β€” regular paragraph returns won't format properly.
Message template
πŸ“¬ New entry: {{1.name}}
Email: {{1.email}}
Details: {{1.description}}
message template
πŸ”” New Record: {{summary}} {{description}}
start.dateTime: {{start.dateTime}}
end.dateTime: {{end.dateTime}}
#sales
πŸ”” New Record: Jane Smith
Company: Acme Corp
9

Scenario controls > Run once

Test the Scenario

Run a test to verify your automation works correctly. This processes a real calendar event through your complete workflow.

  1. 1Click 'Run once' at the bottom left of the screen
  2. 2Create a test event in your Google Calendar titled 'OOO - Testing'
  3. 3Make it an all-day event for tomorrow
  4. 4Wait 2-3 minutes then check the Make execution log
βœ“ What you should see: You should see a successful execution in Make and a test message posted to your Slack channel.
⚠
Common mistake β€” Delete your test calendar event and Slack message after confirming the workflow works.
Make
β–Ά Run once
executed
βœ“
Google Calendar
βœ“
Slack
Slack
πŸ”” notification
received
10

Scenario controls > ON/OFF toggle

Enable Auto-Scheduling

Turn on automatic execution so your scenario runs continuously. This switches from manual testing to production mode.

  1. 1Click the toggle switch in the bottom left to turn 'ON'
  2. 2Set scheduling to 'Immediately' for real-time processing
  3. 3Click 'OK' to confirm the scheduling settings
  4. 4Verify the scenario shows 'ON' status in green
βœ“ What you should see: Your scenario should show a green 'ON' status and 'Immediately' scheduling indicator.
⚠
Common mistake β€” Don't set this to 'Immediately' if you have high calendar volume β€” use 'Every 15 minutes' to avoid rate limits.

Drop this into a Make custom function.

JavaScript β€” Custom FunctionformatDate(start.date; "MMMM D") + if(end.date != null; " - " + formatDate(end.date; "MMMM D"); "")
β–Έ Show code
formatDate(start.date; "MMMM D") + if(end.date != null; " - " + formatDate(end.date; "MMMM D"); "")

... expand to see full code

formatDate(start.date; "MMMM D") + if(end.date != null; " - " + formatDate(end.date; "MMMM D"); "")

Scaling Beyond 100+ calendar events/day+ Records

If your volume exceeds 100+ calendar events/day records, apply these adjustments.

1

Switch to Polling

Change from 'Immediately' to 'Every 15 minutes' scheduling to avoid Google Calendar API rate limits. Instant notifications aren't worth API failures.

2

Add Batch Processing

Use Make's iterator module to process multiple OOO events in a single Slack message rather than individual posts flooding your channel.

Going live

Production Checklist

Before you turn this on for real, confirm each item.

Troubleshooting

Common errors and how to fix them.

Frequently Asked Questions

Common questions about this workflow.

Analysis

VerdictWhy Make for this workflow

Use Make for this if you need precise filtering control and your team creates 50+ calendar events per month. Make's visual filter builder lets you target exact event types without coding, and its Google Calendar connector updates faster than Zapier's 15-minute polling. Skip Make if you only need basic OOO alerts β€” Zapier's simpler interface handles low-volume notifications just fine.

Cost

This workflow uses 2 operations per OOO event: one to watch the calendar, one to post to Slack. At 20 OOO events monthly, that's 40 operations total. Make's Core plan ($9/month) includes 10,000 operations, so you're well covered. Zapier charges $20/month for the same volume on their Starter plan. N8n is free but requires hosting β€” factor in $15/month for a VPS.

Tradeoffs

Zapier's Google Calendar trigger includes built-in OOO detection that recognizes vacation events automatically without custom filters. N8n's Slack node supports rich message formatting with blocks and attachments that Make's basic text field can't match. But Make wins on execution speed β€” its Google Calendar webhook fires within 2-3 minutes while Zapier polls every 15 minutes, meaning your team gets OOO notifications faster.

Google Calendar's API sometimes delays new events by 5-10 minutes, especially for recurring series or imported events. All-day events use the 'date' field format while timed events use 'dateTime' β€” your filter logic needs both. Make's error handling stops the entire scenario on Slack API failures, so add a backup webhook to catch missed notifications during Slack outages.

Ideas for what to build next

  • β†’
    Add Return Notifications β€” Create a second scenario that posts when OOO events end, welcoming team members back and clearing their unavailable status.
  • β†’
    Create OOO Calendar Dashboard β€” Send OOO events to Google Sheets or Notion to build a team availability calendar that managers can reference for project planning.
  • β†’
    Integrate with Project Tools β€” Extend the workflow to automatically reassign tasks in Asana or Monday.com when key team members log OOO time.

Related guides

Was this guide helpful?
← Google Calendar + Slack overviewMake profile β†’