This workflow corresponds to n8n.io template #6087 — we link there as the canonical source.
This workflow follows the Gmail → Googlesheetstrigger 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": "Fcfrid6ngpoXepqq",
"meta": {
"templateCredsSetupCompleted": true
},
"name": "My workflow 3",
"tags": [],
"nodes": [
{
"id": "0598aff8-ffec-4b53-93fb-3ac7ceb6e526",
"name": "Send a message",
"type": "n8n-nodes-base.gmail",
"position": [
440,
-40
],
"parameters": {
"sendTo": "={{ $('Google Sheets Trigger').item.json.Email }}",
"message": "=Hey {{ $('Google Sheets Trigger').item.json.Name }}!\n\nWe see tha that your Problem is \"{{ $('Google Sheets Trigger').item.json.Description }}\"We got your query and our team is working on it. We assure you that the problem will be solved Really Soon.\n\nReach out to us in case of any help\n\nThank you\nRegards,\nN8n Team",
"options": {},
"subject": "Ticket Created.!",
"emailType": "text"
},
"credentials": {
"gmailOAuth2": {
"name": "<your credential>"
}
},
"typeVersion": 2.1
},
{
"id": "4c92f186-5abb-469d-bb7a-68acefab039b",
"name": "Send a message1",
"type": "n8n-nodes-base.slack",
"position": [
220,
100
],
"parameters": {
"text": "=> Hello Team,A new entry has been added to the google sheets Node. The details are as follows.\nName : {{ $json.Name }}\nEmail : {{ $json.Email }}\nPhone Number : {{ $json['Phone Number']}}\nProblem Desc : {{ $json.Description }}\n\nPlease handle the client's request as stated in the problem.",
"select": "channel",
"channelId": {
"__rl": true,
"mode": "id",
"value": "=C095F7HDKUL"
},
"otherOptions": {}
},
"credentials": {
"slackApi": {
"name": "<your credential>"
}
},
"typeVersion": 2.3
},
{
"id": "63e9d67e-4a0f-41f2-9fd5-209abadbdcc3",
"name": "Google Sheets Trigger",
"type": "n8n-nodes-base.googleSheetsTrigger",
"position": [
-20,
-40
],
"parameters": {
"options": {},
"pollTimes": {
"item": [
{
"mode": "everyMinute"
}
]
},
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1xJn861StZtmTop8c2WBqf4SvGziT0use3zVCjT4n9-o/edit#gid=0",
"cachedResultName": "Sheet1"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "1xJn861StZtmTop8c2WBqf4SvGziT0use3zVCjT4n9-o",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1xJn861StZtmTop8c2WBqf4SvGziT0use3zVCjT4n9-o/edit?usp=drivesdk",
"cachedResultName": "Sheet Problem 1"
}
},
"credentials": {
"googleSheetsTriggerOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 1
},
{
"id": "81b76d73-f77b-4279-b9ab-a7988a0925ce",
"name": "Create a contact",
"type": "n8n-nodes-base.googleContacts",
"position": [
720,
80
],
"parameters": {
"givenName": "={{ $('Google Sheets Trigger').item.json.Name }}",
"familyName": "={{ $('Google Sheets Trigger').item.json.Name }}",
"additionalFields": {
"phoneUi": {
"phoneValues": [
{
"type": "mobile",
"value": "={{ \"\" + $('Google Sheets Trigger').item.json[\"Phone Number\"] }}\n"
}
]
}
}
},
"credentials": {
"googleContactsOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 1
}
],
"active": false,
"settings": {
"executionOrder": "v1"
},
"versionId": "3236b95c-d19f-43c3-b0fe-25e64a04f84f",
"connections": {
"Send a message": {
"main": [
[
{
"node": "Create a contact",
"type": "main",
"index": 0
}
]
]
},
"Send a message1": {
"main": [
[
{
"node": "Send a message",
"type": "main",
"index": 0
}
]
]
},
"Google Sheets Trigger": {
"main": [
[
{
"node": "Send a message1",
"type": "main",
"index": 0
}
]
]
}
}
}
Credentials you'll need
Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.
gmailOAuth2googleContactsOAuth2ApigoogleSheetsTriggerOAuth2ApislackApi
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Automatically respond to Google Form entries submitted via Google Sheets. This workflow notifies your Slack team, sends a personalized Gmail response to the user, and adds the user to Google Contacts — all triggered instantly upon new row addition in your connected Sheet.
Source: https://n8n.io/workflows/6087/ — 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.
Hiring teams often struggle with document follow-ups, offer letter generation, and stakeholder communication. Manual checks, email back-and-forth, and missing files slow down hiring and create chaos d
N_01_Simple_Lead_Tracker_Automation_v4. Uses googleSheetsTrigger, slack, gmail, hubspot. Event-driven trigger; 14 nodes.
This template is ideal for HR teams, startup founders, operations leads, remote-first companies, and freelancers managing onboarding manually or across multiple tools.
This workflow sends an alert to the channel of your choice when an execution fails. Connect the tool where you want alerts to be sent (eg. Gmail, Slack, Teams, etc.) Save the workflow Turn on error no
Splitinbatches Workflow. Uses gmail, gmailTrigger, slack, stopAndError. Event-driven trigger; 7 nodes.