Create an AI-Powered Virtual Receptionist with Google Calendar & Sheets

Go to Workflow
706 views
Built by Risper Risper
Created on June 06, 2026

Description

πŸ€–AI-Powered Appointment Scheduling with Google Calendar & Sheets Virtual Receptionist

Automate customer conversations with an AI-powered virtual receptionist. This workflow can chat naturally with clients, answer general business questions (like services, location, and hours), check availability in Google Calendar, book appointments, and save customer details in Google Sheets. Fully customizable for any business type β€” salons, clinics, agencies, consultants, and more.

πŸ“– How It Works

Welcome the customer when the customer says hi
AI greets warmly: β€œHello! I’m [AI name] from [Business name].”

Answer general questions
Provides instant replies about services, pricing, business location, hours, and availability.

Understand their need
Identifies the service requested and preferred time.

Check availability
Queries Google Calendar for open slots.

Gather customer details
Collects name, phone, and email (optional).

Confirm booking
Creates the appointment in Google Calendar.

Save records
Logs booking and customer info into Google Sheets.

βš™οΈ Setup Steps (Quick)
Connect your Google Calendar and Google Sheets accounts.
Add your business details (name, type, services, hours, policies) to the Business Info Sheet.
Configure your OpenAI API key (or use n8n free credits).
Optional: Connect Twilio WhatsApp for direct chat responses.

🏒 Example Business Info (Google Sheet)

| business_id | business_name | business_type | location | phone | email | services | calendar_id | timezone | currency | working_hours | ai_name | ai_personality | ai_role | emergency_available | booking_advance_days | cancellation_hours |
|-------------|-----------------|---------------------|----------------------------------|-----------------|---------------------------|----------|-----------------------|----------|----------|--------------------------------|---------|-----------------------------------|------------------------------------------------------------------------------------------------|----------------------|----------------------|-------------------|
|001| Luxe Hair Studio | Hair & Beauty Salon | 123 Main Street, New York, NY 10001 | 1 (XXX) XXX-XXXX | [email protected] | β€œHaircut & Styling (60 minutes, $3500…)Hair Coloring (120 minutes, $8000…)…” | calendar-id-here | GMT -3 | USD | Mon–Sat: 9:00 AM – 7:00 PM, Sun: Closed | bella | Friendly, Stylish, Professional | Manages bookings, answers FAQs, recommends services, gives beauty tips, sends reminders, etc. | no | 10 | 24 |

βœ… Purpose: Supplies context (services, pricing, hours, AI personality, booking policies).
πŸ’‘ The AI uses this sheet to answer general business questions (e.g., β€œWhere are you located?”, β€œDo you do hair colouring?”, β€œWhat are your working hours?”).

πŸ“Š Appointments Sheet Example

| client_number | client_name | event_id | summary | services |
|----------------|-------------|-----------|----------------------------------|----------|
| 001 | Sarah Lee | evt-10293 | Appointment with Sarah Lee – Haircut & Styling | Haircut & Styling |
| 002 | John Smith | evt-10294 | Appointment with John Smith – Highlights | Highlights |

βœ… Purpose: Logs confirmed bookings with service details and links back to Google Calendar.

πŸ’‘ Features
βœ… AI receptionist with conversation memory
βœ… Answers FAQs – location, services, hours, pricing
βœ… Google Calendar integration for real-time availability
βœ… Google Sheets integration for customer records & reporting
βœ… Customizable AI name, role, and personality

πŸ”‘ Who It’s For
Salons & Spas** – Manage bookings and FAQs
Clinics & Health Services** – Automated scheduling + patient info
Agencies & Consultants** – Answer inquiries + schedule meetings
Any Service Business** – Save time, improve customer experience



Nodes Used (5)

AI Agent
@n8n/n8n-nodes-langchain.agent
Google Sheets
n8n-nodes-base.googleSheets
OpenAI Chat Model
@n8n/n8n-nodes-langchain.lmChatOpenAi
Simple Memory
@n8n/n8n-nodes-langchain.memoryBufferWindow
Structured Output Parser
@n8n/n8n-nodes-langchain.outputParserStructured