🔓 Unlock all 10,000+ workflows & prompts free Join Newsletter →
✅ Full access unlocked — explore all 10,000 AI workflow and prompt templates Browse Templates →
Home n8n Workflow
January 22, 2026

WhatsApp + Google Calendar: schedule by chat

Lisa Granqvist Partner Workflow Automation Expert

Calendar requests show up in WhatsApp, but your schedule lives somewhere else. So you bounce between apps, misread a time, forget a timezone, and suddenly you’ve got a double booking you didn’t even see coming.

Client-facing teams feel it first because they reply fast and fix mistakes later. But solo consultants and small agency ops leads deal with the same thing. This WhatsApp calendar automation turns “Can we do Tuesday?” into a real Google Calendar update in under a minute.

Below, you’ll see exactly what the workflow does, what you need to run it, and how to adapt it to your own booking rules.

How This Automation Works

The full n8n workflow, from trigger to final output:

n8n Workflow Template: WhatsApp + Google Calendar: schedule by chat

The Problem: Scheduling Gets Messy in Chat

Most scheduling chaos doesn’t come from “big” mistakes. It comes from tiny ones that happen when you’re replying in WhatsApp while trying to keep Google Calendar accurate. You copy times manually, you skim a message too quickly, you forget to check conflicts, and you end up moving meetings after the fact. That cleanup work is annoying, but the real cost is trust. When a client thinks you’re disorganized, they hesitate to book again, and your day turns into a patchwork of reschedules.

The friction compounds. Here’s where it breaks down in real life.

  • Checking availability means leaving WhatsApp, searching your calendar, then coming back to reply, which slows you down when you’re trying to be responsive.
  • Creating events from chat requires manual entry, so details get lost (location links, correct titles, or even the right date).
  • Updates and cancellations are risky because you have to find the exact event, and it’s easy to edit the wrong one under pressure.
  • There’s rarely a consistent “confirmation message,” so clients don’t always know what’s booked and what’s still tentative.

The Solution: Manage Google Calendar from WhatsApp

This n8n workflow lets you run your Google Calendar through natural WhatsApp messages. A WhatsApp webhook receives the incoming chat, then an AI agent interprets what the person is asking for: create a meeting, move it, delete it, check availability, or pull an agenda-style overview. Based on that intent, the workflow routes to the right Google Calendar tool action (create, lookup, modify, remove). Finally, it formats a clean reply and sends it straight back in WhatsApp so the person gets confirmation or schedule details without waiting on you to “go check.” Conversation memory keeps context for follow-ups like “make it 30 minutes later” without rewriting everything.

The workflow starts with an incoming WhatsApp message. The agent (powered by an OpenAI chat model) decides which calendar action to run and passes the details along. Then n8n updates Google Calendar and responds in WhatsApp with a clear, human-friendly confirmation.

What You Get: Automation vs. Results

Example: What This Looks Like

Say you book or reschedule about 10 meetings a week through WhatsApp. Manually, each one often takes about 10 minutes: check conflicts, create or edit the event, then write a confirmation. That’s roughly 100 minutes, and honestly it usually becomes 2 hours once you include back-and-forth and fixes. With this workflow, you send one message, the agent runs the calendar action, and you get a ready-to-send confirmation back in WhatsApp in about a minute or two. You’re still in control, but the busywork disappears.

What You’ll Need

  • n8n instance (try n8n Cloud free)
  • Self-hosting option if you prefer (Hostinger works well)
  • WhatsApp Business Cloud to receive and send chat messages.
  • Google Calendar for creating, updating, and searching events.
  • OpenAI API key (get it from your OpenAI dashboard).

Skill level: Intermediate. You’ll connect accounts, set a webhook, and adjust a few message formats.

Don’t want to set this up yourself? Talk to an automation expert (free 15-minute consultation).

How It Works

A WhatsApp message triggers everything. The workflow starts at the Incoming WhatsApp Hook, which receives the chat message through your WhatsApp Business Cloud webhook.

The AI agent figures out intent and details. The Calendar Task Agent uses an OpenAI chat model to understand what the sender wants (create, move, delete, lookup, agenda) and pulls out specifics like time, date, and event description. Conversation Memory helps when the next message is vague, like “actually make it later.”

Google Calendar gets updated automatically. Based on the agent’s decision, n8n calls the appropriate Google Calendar tool node: Generate Calendar Entry, Modify Calendar Entry, Remove Calendar Entry, or Lookup Calendar Entries.

A clean reply goes back to WhatsApp. Prepare Response formats a confirmation message (or availability info), then Send WhatsApp Reply posts it back into the same conversation so you can move on.

You can easily modify confirmation wording to match your tone, or adjust how strict the agent is about asking follow-up questions before booking. See the full implementation guide below for customization options.

Step-by-Step Implementation Guide

Step 1: Configure the WhatsApp Trigger

This workflow starts when a WhatsApp message is received. Configure the trigger so it listens for incoming messages.

  1. Add and open Incoming WhatsApp Hook as the trigger node.
  2. Set Updates to messages.
  3. Credential Required: Connect your whatsAppTriggerApi credentials.
  4. Save the node and copy the webhook URL if your WhatsApp provider requires it for verification.

Step 2: Connect Google Calendar Tools

The agent uses multiple Google Calendar tools to create, update, delete, and search events. Configure each tool with the correct calendar and expressions.

  1. Open Generate Calendar Entry and set Calendar to [YOUR_EMAIL].
  2. In Generate Calendar Entry, set Start to {{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Start', ``, 'string') }} and End to {{ /*n8n-auto-generated-fromAI-override*/ $fromAI('End', ``, 'string') }}. Set Summary to {{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Summary', ``, 'string') }}.
  3. Open Lookup Calendar Entries and set Operation to getAll, Time Min to {{ /*n8n-auto-generated-fromAI-override*/ $fromAI('After', ``, 'string') }}, Time Max to {{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Before', ``, 'string') }}, and Limit to {{ $fromAI('Limit', ``, 'number') }}.
  4. Open Modify Calendar Entry and set Operation to update, Event ID to {{ $fromAI("eventID") }}, Start to {{ $fromAI("startTime") }}, and End to {{ $fromAI("endTime") }}.
  5. Open Remove Calendar Entry and set Operation to delete and Event ID to {{ $fromAI("eventID") }}.
  6. Credential Required: Connect your googleCalendarOAuth2Api credentials. These tools are attached to Calendar Task Agent, so ensure the parent agent can access the same Google Calendar credentials.
⚠️ Common Pitfall: Replace [YOUR_EMAIL] with the Google Calendar account you want to manage in Generate Calendar Entry, Modify Calendar Entry, Remove Calendar Entry, and Lookup Calendar Entries.

Step 3: Set Up the AI Assistant

Configure the AI model, memory, and agent logic that interpret WhatsApp messages and route them to the calendar tools.

  1. Open AI Chat Engine and set Model to gpt-4-turbo-preview.
  2. Credential Required: Connect your openAiApi credentials in AI Chat Engine (this node is the language model for Calendar Task Agent).
  3. Open Calendar Task Agent and set Text to {{ $json.messages[0].text.body }} and Prompt Type to define.
  4. Review the System Message in Calendar Task Agent and keep the provided routing rules so it always uses Lookup Calendar Entries, Generate Calendar Entry, Modify Calendar Entry, and Remove Calendar Entry appropriately.
  5. Open Conversation Memory and set Session ID Type to customKey and Session Key to {{ $('Incoming WhatsApp Hook').item.json.messages[0].type }}. This memory is attached to Calendar Task Agent; configure memory and tools from the agent context.
The execution flow is Incoming WhatsApp HookCalendar Task AgentPrepare ResponseSend WhatsApp Reply. Keep this order intact when connecting nodes.

Step 4: Configure WhatsApp Output

Format the agent’s output and send it back to WhatsApp.

  1. Open Prepare Response and add an assignment with Name set to =response and Value set to {{ $json.output }}.
  2. Open Send WhatsApp Reply and set Operation to send.
  3. Set Text Body to {{ $json.response }}.
  4. Set Phone Number ID to {{ $('Incoming WhatsApp Hook').item.json.metadata.phone_number_id }} and Recipient Phone Number to [YOUR_PHONE].
  5. Credential Required: Connect your whatsAppApi credentials.
⚠️ Common Pitfall: Replace [YOUR_PHONE] with a valid WhatsApp number in international format, or replies will fail.

Step 5: Test and Activate Your Workflow

Run a live test to confirm the WhatsApp trigger, AI routing, and calendar actions are working together.

  1. Click Execute Workflow and send a WhatsApp message such as Add a call tomorrow at 9am.
  2. Verify that Calendar Task Agent routes the request to Generate Calendar Entry and that a response is assembled by Prepare Response.
  3. Confirm you receive the reply via Send WhatsApp Reply and that the event appears in Google Calendar.
  4. Once confirmed, toggle the workflow to Active for production use.
🔒

Unlock Full Step-by-Step Guide

Get the complete implementation guide + downloadable template

Common Gotchas

  • WhatsApp Business Cloud credentials can expire or the webhook can be misconfigured. If messages stop triggering the workflow, check your Meta app webhook settings and n8n’s trigger webhook URL first.
  • If you’re using Wait nodes or external processing, response times can vary. Bump up the wait duration if downstream nodes fail because the agent hasn’t returned structured output yet.
  • OpenAI prompts that are too generic will book meetings in a “robot voice” and miss your rules. Add your brand tone and scheduling constraints early, or you’ll be rewriting confirmations every day.

Frequently Asked Questions

How long does it take to set up this WhatsApp calendar automation?

About an hour if your WhatsApp webhook and Google Calendar access are ready.

Do I need coding skills to automate WhatsApp calendar automation?

No. You’ll mainly connect accounts and paste in credentials. The only “technical” part is webhook setup, and it’s mostly copy-paste.

Is n8n free to use for this WhatsApp calendar automation workflow?

Yes. n8n has a free self-hosted option and a free trial on n8n Cloud. Cloud plans start at $20/month for higher volume. You’ll also need to factor in OpenAI API usage, which is usually a few cents per day for light scheduling traffic.

Where can I host n8n to run this automation?

Two options: n8n Cloud (managed, easiest setup) or self-hosting on a VPS. For self-hosting, Hostinger VPS is affordable and handles n8n well. Self-hosting gives you unlimited executions but requires basic server management.

Can I customize this WhatsApp calendar automation workflow for two calendars (personal + work)?

Yes, but you’ll want to be deliberate. You can route the agent’s output to different Google Calendar tool nodes based on intent, sender, or keywords like “work” and “personal.” Common customizations include separate calendars per team member, stricter rules for business hours, and different confirmation messages depending on the calendar used.

Why is my WhatsApp Business Cloud connection failing in this workflow?

Usually it’s a webhook or token issue, not n8n itself. Check that your WhatsApp Business Cloud webhook URL matches the one in the Incoming WhatsApp Hook, and confirm your Meta access token hasn’t expired. If the trigger fires but replies don’t send, verify the Send WhatsApp Reply node has the right phone number ID and permissions. Rate limiting can also show up when you test repeatedly in a short burst, so slow down for a minute and try again.

How many messages can this WhatsApp calendar automation handle?

A lot for a small business. On n8n Cloud Starter you can run thousands of executions per month, and if you self-host there’s no hard execution cap (it mostly depends on your server). In practice, scheduling workloads are light because each message is a single execution plus a calendar call or two. If you expect heavy traffic, the first thing to watch is provider limits: WhatsApp throughput and OpenAI request rate.

Is this WhatsApp calendar automation better than using Zapier or Make?

Often, yes, because this workflow needs an agent that can interpret natural language and then choose between several calendar actions. n8n handles branching logic cleanly, and you’re not forced into paying more every time you add routes like “delete vs. move vs. availability.” Self-hosting is also a big deal if you want volume without per-task pricing. Zapier or Make can still be fine if you only need one simple path, like “message received → create event,” and you don’t care about edits or lookups. If you’re unsure, Talk to an automation expert and get a recommendation based on your actual message volume.

You keep the conversation in WhatsApp, and your calendar stays accurate in Google Calendar. Set it up once, then let the workflow do the repetitive parts while you focus on the actual work.

Need Help Setting This Up?

Our automation experts can build and customize this workflow for your specific needs. Free 15-minute consultation—no commitment required.

Lisa Granqvist

Workflow Automation Expert

Expert in workflow automation and no-code tools.

×

Use template

Get instant access to this n8n workflow Json file

💬
Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Launch login modal Launch register modal