🔓 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: book meetings by chat

Lisa Granqvist Partner Workflow Automation Expert

Your calendar and inbox don’t fall apart because you can’t schedule. They fall apart because scheduling is scattered across chats, email threads, and “quick” calendar checks that never stay quick. That’s why WhatsApp calendar automation is such a relief when your day is already packed.

Client-facing teams feel it first. Then it hits agency owners and ops leads who end up playing human router between meetings, follow-ups, and reschedules. This workflow turns WhatsApp into the place where meetings get booked, availability gets checked, and Gmail follow-ups get sent, without the copy-paste.

You’ll see what it does, how it works, what you need to run it, and the small setup details that usually trip people up.

How This Automation Works

See how this solves the problem:

n8n Workflow Template: WhatsApp + Google Calendar: book meetings by chat

The Challenge: Scheduling Without Losing the Thread

Booking a meeting sounds simple until it’s happening inside a WhatsApp chat while you’re also juggling Gmail threads and a calendar that changes hourly. You ask a few questions, someone replies late, the time you suggested is gone, and now you’re back to “How about Thursday?” Meanwhile, you still have to create the event, add a Meet link, and send a confirmation message that actually matches what got booked. It’s not hard work. It’s brittle work, which means small mistakes become real headaches.

It adds up fast. Here’s where it breaks down.

  • You check availability in Google Calendar, then return to WhatsApp and realize the conversation already moved on.
  • Reschedules turn into mini projects because the event update, the Meet link, and the follow-up email don’t stay in sync.
  • Natural language like “next Monday afternoon” creates errors when someone has to interpret time zones and formats manually.
  • Inbox follow-ups get forgotten because the “I’ll email you the details” moment gets buried in chat.

The Fix: An AI Assistant That Schedules From WhatsApp

This workflow listens for incoming WhatsApp messages, understands what the person is asking, and then takes the right action in Google Calendar or Gmail. If someone says, “Book 30 minutes tomorrow at 5,” the assistant converts that into a proper date/time, checks your calendar availability, and creates the meeting when the slot works. If they ask what’s on your calendar, it retrieves events and replies in plain English. If they say “Email Alex confirming the meeting,” it can send that email through Gmail without you leaving the chat. Context is remembered per phone number, so you can say “make it 30 minutes instead” and it knows what “it” refers to.

The workflow starts with a WhatsApp trigger, then an AI agent (using OpenAI GPT or Google Gemini) chooses the right tool for the request. Google Calendar nodes handle listing, creating, updating, and availability checks. Gmail nodes send messages or summarize recent threads. Finally, the workflow replies via WhatsApp with a clear confirmation.

What Changes: Before vs. After

Real-World Impact

Say you schedule 10 meetings a week from WhatsApp. Manually, each one often takes about 10 minutes: check Google Calendar, create the event, add conferencing, return to chat, then send an email recap. That’s roughly 100 minutes weekly, plus the rework when something is booked wrong. With this workflow, you message once in WhatsApp and wait for the confirmation; figure about 1 minute of your time per booking, so you claw back around 1.5 hours a week and cut the “oops, wrong time” moments dramatically.

Requirements

  • n8n instance (try n8n Cloud free)
  • Self-hosting option if you prefer (Hostinger works well)
  • WhatsApp Business Cloud to receive and reply to messages.
  • Google Calendar to check availability and create events.
  • Gmail to send confirmations and read/summarize threads.
  • OpenAI API key or Google Gemini API key (get it from your OpenAI or Google AI Studio account).

Skill level: Intermediate. You won’t code, but you will connect OAuth credentials and configure WhatsApp webhooks.

Need help implementing this? Talk to an automation expert (free 15-minute consultation).

The Workflow Flow

A WhatsApp message kicks it off. When someone sends a message to your WhatsApp Business number, the workflow captures it instantly, along with the sender’s phone number.

Context gets cleaned up and remembered. A short parsing step organizes the message and basic metadata, then Simple Memory stores conversational context per user so follow-up messages still make sense.

The AI agent chooses the right “tool.” Using OpenAI GPT or Google Gemini, the assistant decides if this is a scheduling request, an availability check, an “update the meeting” request, or an email task. Natural language time gets converted into a proper date/time so Google Calendar actions don’t misfire.

Google Calendar and Gmail do the work, then WhatsApp confirms it. Calendar nodes list events, check availability, create meetings (with Google Meet links), or modify existing ones. Gmail nodes can send a recap email or summarize recent threads. The final message goes back to the same WhatsApp chat so the user sees a clear “booked” or “here are your free times” response.

You can easily modify the assistant’s “personality” to match your brand voice based on your needs. See the full implementation guide below for customization options.

Step-by-Step Implementation Guide

Step 1: Configure the WhatsApp Trigger

Set up the WhatsApp webhook trigger so the workflow can receive incoming messages and pass them into the automation.

  1. Add and open WhatsApp Incoming Trigger.
  2. Keep Updates set to messages.
  3. Copy the webhook URL generated by WhatsApp Incoming Trigger and register it in your WhatsApp Business settings.

If you don’t see incoming data during testing, verify your WhatsApp webhook setup and confirm the correct phone number is linked to the Business API.

Step 2: Parse Incoming Message Context

Extract the message text and sender information so the AI agent can respond and send replies to the correct number.

  1. Open Parse WhatsApp Context and set Include Other Fields to true.
  2. Confirm the assignments map fields correctly:
  3. Set chatInput to {{ $json.entry[0].changes[0].value.messages[0].text.body }}.
  4. Set sessionId to {{ $json.entry[0].changes[0].value.messages[0].from }}.
  5. Set userPhone to {{ $json.entry[0].changes[0].value.messages[0].from }}.
  6. Connect WhatsApp Incoming TriggerParse WhatsApp Context.

⚠️ Common Pitfall: If your WhatsApp payload structure differs, these expressions will break. Validate the incoming JSON in a test run before going live.

Step 3: Set Up the AI Assistant and Memory

Configure the AI agent to interpret user requests, reference memory, and call connected tools for email and calendar actions.

  1. Open Intelligent Assistant and review the System Message to match your operating rules and tool protocol.
  2. Connect Parse WhatsApp ContextIntelligent Assistant to pass the parsed message into the agent.
  3. Open Conversation Memory and set Context Window Length to 10.
  4. Ensure Conversation Memory is connected as an ai_memory tool to Intelligent Assistant.
  5. Open Gemini Chat Engine and connect it as the ai_languageModel for Intelligent Assistant.
  6. Credential Required: Connect your googlePalmApi credentials in Gemini Chat Engine.

AI tool nodes like Conversation Memory and Time Conversion do not store credentials themselves. Add credentials to the parent node or the connected model node (e.g., Gemini Chat Engine).

Step 4: Configure AI Tools for Gmail, Calendar, and Time

These tool nodes provide the AI agent with the ability to check emails, send messages, and manage calendar events.

  1. Open Time Conversion and set Output Field Name to {{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Output_Field_Name', ``, 'string') }}, with Timezone set to {{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Timezone', ``, 'string') }}.
  2. Open Dispatch Gmail Email and confirm:
  3. Send To{{ /*n8n-auto-generated-fromAI-override*/ $fromAI('To', ``, 'string') }}, Subject{{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Subject', ``, 'string') }}, Message{{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Message', ``, 'string') }}.
  4. Credential Required: Connect your gmailOAuth2 credentials for Dispatch Gmail Email.
  5. Open Retrieve Gmail Threads and keep Operation set to getAll, with Limit and Simple using the provided AI expressions.
  6. Credential Required: Connect your gmailOAuth2 credentials for Retrieve Gmail Threads.
  7. Open Fetch Calendar Events and set Operation to getAll, Time Min to {{ /*n8n-auto-generated-fromAI-override*/ $fromAI('After', ``, 'string') }}, and Time Max to {{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Before', ``, 'string') }}.
  8. Credential Required: Connect your googleCalendarOAuth2Api credentials for Fetch Calendar Events, Create Calendar Meeting, Modify Calendar Entry, and Check Calendar Availability.
  9. Open Create Calendar Meeting and set Start to {{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Start', ``, 'string') }} and End to {{ /*n8n-auto-generated-fromAI-override*/ $fromAI('End', ``, 'string') }}, and confirm the attendee field uses {{ /*n8n-auto-generated-fromAI-override*/ $fromAI('attendees0_Attendees', `you add attendees here, add there email here`, 'string') }}.
  10. Open Modify Calendar Entry and keep Operation set to update with Event ID set to {{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Event_ID', ``, 'string') }}.
  11. Open Check Calendar Availability and set Time Min to {{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Start_Time', ``, 'string') }} and Time Max to {{ /*n8n-auto-generated-fromAI-override*/ $fromAI('End_Time', ``, 'string') }}.

⚠️ Common Pitfall: The Gmail and Calendar nodes are AI tools. Ensure they are connected to Intelligent Assistant as ai_tool nodes and that credentials are added to each tool node (not to the agent itself).

Step 5: Configure the WhatsApp Reply Action

Return the AI’s final response to the user via WhatsApp.

  1. Open Send WhatsApp Reply and set Operation to send.
  2. Set Text Body to {{ $json.output }} so the AI response is returned to the user.
  3. Set Recipient Phone Number to {{ $('Parse WhatsApp Context').item.json.userPhone }}.
  4. Connect Intelligent AssistantSend WhatsApp Reply.

Execution flow is linear: WhatsApp Incoming TriggerParse WhatsApp ContextIntelligent AssistantSend WhatsApp Reply.

Step 6: Test and Activate Your Workflow

Run a complete test to verify WhatsApp input, AI processing, and outgoing messages, then activate the workflow.

  1. Click Execute Workflow and send a test message to your WhatsApp Business number.
  2. Verify that Parse WhatsApp Context produces chatInput and userPhone, and that Intelligent Assistant returns an output.
  3. Confirm that Send WhatsApp Reply delivers the response back to the sender.
  4. If testing Gmail or Calendar actions, verify the email sends or calendar updates in the target accounts.
  5. Toggle the workflow to Active to enable production use.
🔒

Unlock Full Step-by-Step Guide

Get the complete implementation guide + downloadable template

Watch Out For

  • WhatsApp Business Cloud configuration is picky, and webhook URLs must match exactly. If replies stop, check your Meta Developer webhook setup and token validity first.
  • If you’re using Wait nodes or external rendering, processing times vary. Bump up the wait duration if downstream nodes fail on empty responses.
  • Google Calendar and Gmail OAuth scopes matter. If the assistant can “read” but can’t “create,” review the connected Google credentials inside n8n and re-auth with the correct permissions.

Common Questions

How quickly can I implement this WhatsApp calendar automation?

About 60–90 minutes once your WhatsApp and Google credentials are ready.

Can non-technical teams implement this WhatsApp calendar automation?

Yes, but you’ll want someone comfortable with connecting OAuth and copying webhook URLs. No coding is required inside n8n.

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 or Gemini API usage, which is usually small per message unless you’re summarizing lots of email text.

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.

How do I adapt this WhatsApp calendar automation solution to my specific challenges?

Start with the AI Agent instructions and the memory settings, because that’s what controls how “human” the chat feels. You can swap the Gemini Chat Engine for an OpenAI Chat Model (or the other way around) without changing the calendar and Gmail actions. Common tweaks include setting rules for working hours, adding a default meeting length, and changing the confirmation message format so it matches your brand tone.

Why is my WhatsApp connection failing in this workflow?

Most of the time it’s a webhook or token issue in Meta Developer settings, not n8n. Confirm the webhook URL, verify token, and that the WhatsApp app is subscribed to message events. If incoming messages arrive but replies fail, check the WhatsApp Business Cloud credentials inside n8n and make sure your phone number is approved for the environment you’re using. Rate limits can also show up when you test too aggressively in a short window, honestly.

What’s the capacity of this WhatsApp calendar automation solution?

On most n8n Cloud plans, the limit is based on monthly executions, so capacity depends on how many chat messages you process. If you self-host, there’s no execution cap; your server resources become the limiter.

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

Often, yes, because this isn’t a simple “message in, event out” zap. You need memory, branching logic, and tool selection based on intent, and those flows get expensive or awkward in Zapier/Make. n8n also gives you a clean path to self-host for unlimited runs, which matters when WhatsApp becomes your default interface. Zapier or Make can still win for very basic two-step automations and quick prototypes. Talk to an automation expert if you want a sanity check before you commit.

Once this is running, your chat becomes the front door and your calendar stays accurate. The workflow handles the busywork so you can get back to real 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