This workflow corresponds to n8n.io template #8509 — we link there as the canonical source.
This workflow follows the Gmail → Google Calendar recipe pattern — see all workflows that pair these two integrations.
The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"id": "T07dgMHOSZIFln2L",
"meta": {
"templateCredsSetupCompleted": true
},
"name": "No-Show Follow-Up and Rescheduling",
"tags": [],
"nodes": [
{
"id": "a4c7e084-144a-41ba-9101-5e261b8b9651",
"name": "Check If Unbooked",
"type": "n8n-nodes-base.if",
"position": [
-1488,
432
],
"parameters": {},
"typeVersion": 2
},
{
"id": "3d3e2ade-adfb-45f2-9b3b-cd475e698f1d",
"name": "Create Calendar Placeholder",
"type": "n8n-nodes-base.googleCalendar",
"position": [
-960,
416
],
"parameters": {},
"typeVersion": 1.2
},
{
"id": "b5f79d41-2aff-4685-9a68-59177f7865f5",
"name": "Send Follow-up Email",
"type": "n8n-nodes-base.gmail",
"position": [
-1200,
416
],
"parameters": {},
"typeVersion": 2.1
},
{
"id": "c8997a52-f409-4794-b18e-88ff6e6aef83",
"name": "Get row(s) in sheet1",
"type": "n8n-nodes-base.googleSheets",
"position": [
-1744,
432
],
"parameters": {},
"typeVersion": 4
},
{
"id": "81f001df-85f5-4a04-a56b-cf3f2bccbcbe",
"name": "When clicking \u2018Execute workflow\u2019",
"type": "n8n-nodes-base.manualTrigger",
"position": [
-1952,
432
],
"parameters": {},
"typeVersion": 1
},
{
"id": "5a74f0f5-a52c-4f3f-8496-fd5d6a187ac8",
"name": "Get a thread",
"type": "n8n-nodes-base.gmail",
"position": [
-512,
416
],
"parameters": {},
"typeVersion": 2.1
},
{
"id": "a99f1f94-b32c-4fac-b641-f7a0d9428916",
"name": "If",
"type": "n8n-nodes-base.if",
"position": [
-288,
416
],
"parameters": {},
"typeVersion": 2.2
},
{
"id": "5aef320f-fdfc-4229-9caa-374ef43199cd",
"name": "Send Follow-up Email1",
"type": "n8n-nodes-base.gmail",
"position": [
-64,
528
],
"parameters": {},
"typeVersion": 2.1
},
{
"id": "e02be106-a971-4959-9684-e6e9b353ff19",
"name": "If1",
"type": "n8n-nodes-base.if",
"position": [
560,
528
],
"parameters": {},
"typeVersion": 2.2
},
{
"id": "6248893d-4afd-4e31-86b6-1930eb64c4ab",
"name": "Get a thread1",
"type": "n8n-nodes-base.gmail",
"position": [
368,
528
],
"parameters": {},
"typeVersion": 2.1
},
{
"id": "498d7092-850f-4bb0-b39e-5eb5cf08ea4f",
"name": "Append or update row in sheet",
"type": "n8n-nodes-base.googleSheets",
"position": [
1056,
640
],
"parameters": {},
"typeVersion": 4.6
},
{
"id": "d9894085-c755-4aa9-b156-9e5b0acbf8f9",
"name": "Edit Fields",
"type": "n8n-nodes-base.set",
"position": [
832,
640
],
"parameters": {},
"typeVersion": 3.4
},
{
"id": "da5192cb-6b0d-433c-b22b-a7c86c896f34",
"name": "Wait 24hr",
"type": "n8n-nodes-base.wait",
"position": [
-736,
416
],
"parameters": {},
"typeVersion": 1
},
{
"id": "5216cbeb-7f11-466d-8ade-2868a12b4681",
"name": "Wait 24 hr 1",
"type": "n8n-nodes-base.wait",
"position": [
160,
528
],
"parameters": {},
"typeVersion": 1
},
{
"id": "27821bdf-19ac-475f-bf64-f5547508de80",
"name": "Sticky Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
-2032,
176
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "a268381e-6388-4202-a8e7-28eb7527e82d",
"name": "Sticky Note1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1808,
608
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "269c0fe6-7aec-4b52-974d-0c5034ad61f2",
"name": "Sticky Note2",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1552,
96
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "3a248d59-a035-4ebd-8e13-3ae6d902750c",
"name": "Sticky Note3",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1280,
608
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "dc4aa7e7-88ed-4b3c-8862-b744ad4b93c0",
"name": "Sticky Note4",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1040,
112
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "6bb7d990-ede7-476e-9541-f4570325e94b",
"name": "Sticky Note5",
"type": "n8n-nodes-base.stickyNote",
"position": [
-800,
608
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "31143aba-1195-4456-afcf-18ee8a535ca6",
"name": "Sticky Note6",
"type": "n8n-nodes-base.stickyNote",
"position": [
-576,
160
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "648c1a89-4a97-4eec-94b9-9a63f26d1e05",
"name": "Sticky Note7",
"type": "n8n-nodes-base.stickyNote",
"position": [
-368,
608
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "b22607d4-bba8-42b0-a5e8-719da2347d79",
"name": "Sticky Note8",
"type": "n8n-nodes-base.stickyNote",
"position": [
-128,
192
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "91f81739-c817-4291-a2b0-dcc04df921ff",
"name": "Sticky Note9",
"type": "n8n-nodes-base.stickyNote",
"position": [
112,
720
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "2751bf34-065b-4ce9-a1e0-e2556e37b872",
"name": "Sticky Note10",
"type": "n8n-nodes-base.stickyNote",
"position": [
288,
288
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "4014f225-1ee3-44f5-962b-cb3238e6427a",
"name": "Sticky Note11",
"type": "n8n-nodes-base.stickyNote",
"position": [
512,
704
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "d887437a-61d6-4d8d-9e50-f9cbc44ce3cf",
"name": "Sticky Note12",
"type": "n8n-nodes-base.stickyNote",
"position": [
768,
336
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "48b9bea1-e30d-4e3a-be4a-a918430ca071",
"name": "Sticky Note13",
"type": "n8n-nodes-base.stickyNote",
"position": [
1008,
832
],
"parameters": {
"content": ""
},
"typeVersion": 1
}
],
"active": false,
"settings": {
"executionOrder": "v1"
},
"versionId": "9ea7f85e-d7ee-45a2-8346-bc16a77cf1b6",
"connections": {
"If": {
"main": [
[],
[
{
"node": "Send Follow-up Email1",
"type": "main",
"index": 0
}
]
]
},
"If1": {
"main": [
[],
[
{
"node": "Edit Fields",
"type": "main",
"index": 0
}
]
]
},
"Wait 24hr": {
"main": [
[
{
"node": "Get a thread",
"type": "main",
"index": 0
}
]
]
},
"Edit Fields": {
"main": [
[
{
"node": "Append or update row in sheet",
"type": "main",
"index": 0
}
]
]
},
"Get a thread": {
"main": [
[
{
"node": "If",
"type": "main",
"index": 0
}
]
]
},
"Wait 24 hr 1": {
"main": [
[
{
"node": "Get a thread1",
"type": "main",
"index": 0
}
]
]
},
"Get a thread1": {
"main": [
[
{
"node": "If1",
"type": "main",
"index": 0
}
]
]
},
"Check If Unbooked": {
"main": [
[
{
"node": "Send Follow-up Email",
"type": "main",
"index": 0
}
]
]
},
"Get row(s) in sheet1": {
"main": [
[
{
"node": "Check If Unbooked",
"type": "main",
"index": 0
}
]
]
},
"Send Follow-up Email": {
"main": [
[
{
"node": "Create Calendar Placeholder",
"type": "main",
"index": 0
}
]
]
},
"Send Follow-up Email1": {
"main": [
[
{
"node": "Wait 24 hr 1",
"type": "main",
"index": 0
}
]
]
},
"Create Calendar Placeholder": {
"main": [
[
{
"node": "Wait 24hr",
"type": "main",
"index": 0
}
]
]
},
"Append or update row in sheet": {
"main": [
[]
]
},
"When clicking \u2018Execute workflow\u2019": {
"main": [
[
{
"node": "Get row(s) in sheet1",
"type": "main",
"index": 0
}
]
]
}
}
}
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Stop losing valuable leads to missed meetings with this No-Show Follow-Up & Rescheduling automation! Whenever a lead is marked as a “no-show” in your CRM or calendar, this workflow automatically sends polite follow-up emails with rescheduling options, tracks responses over 48…
Source: https://n8n.io/workflows/8509/ — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
This workflow listens for Stripe payment failures, looks up the customer in HighLevel, logs or updates the failure in an n8n Data Table, and—when not recently automated—creates a Stripe coupon and ema
This workflow automatically detects bounced or invalid email addresses from your Gmail inbox and updates their status in Google Sheets. It fetches bounce notifications, extracts failed email addresses
This workflow automatically handles every resolved Jira bug by verifying the fix, notifying the customer, updating HubSpot, commenting on the Jira issue, alerting the team on Slack, and logging everyt
This workflow runs daily to read chronic care vitals from Google Sheets, merge them into a per-patient record, score risk using AHA/ADA threshold rules, and notify clinicians via Telegram and Gmail wh
The goal is to reduce inbox noise and automatically organize repetitive types of emails so that imprtant messages remain visible while unsolicited or promotional emails are handled automatically. When