This workflow follows the Gmail → Google Sheets 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 →
{
"nodes": [
{
"parameters": {
"httpMethod": "POST",
"path": "recibir-email",
"responseMode": "lastNode",
"options": {}
},
"id": "2be5fb38-03b8-46b7-b3c5-4f45a300ce4b",
"name": "Recibir Email",
"type": "n8n-nodes-base.webhook",
"typeVersion": 2.1,
"position": [
0,
0
]
},
{
"parameters": {
"assignments": {
"assignments": [
{
"id": "id-1",
"name": "companyName",
"value": "MGA Tech Consulting",
"type": "string"
},
{
"id": "id-2",
"name": "companyLogo",
"value": "https://github.com/Mgobeaalcoba/Mgobeaalcoba.github.io/blob/main/assets/images/logo_oscuro.png?raw=true",
"type": "string"
},
{
"id": "id-3",
"name": "fromEmail",
"value": "mariano@mgatc.com",
"type": "string"
}
]
},
"includeOtherFields": true,
"options": {}
},
"id": "59fac4f3-b2b0-4b37-865d-64da182df5cf",
"name": "Workflow Configuration",
"type": "n8n-nodes-base.set",
"typeVersion": 3.4,
"position": [
224,
0
]
},
{
"parameters": {
"assignments": {
"assignments": [
{
"id": "id-1",
"name": "email",
"value": "={{ $json.body.email }}",
"type": "string"
},
{
"id": "id-4",
"name": "fechaRecepcion",
"value": "={{ $now.toISO() }}",
"type": "string"
}
]
},
"includeOtherFields": true,
"options": {}
},
"id": "1b1250c9-6361-4dc0-b46f-459c4b3d1b7b",
"name": "Preparar Datos",
"type": "n8n-nodes-base.set",
"typeVersion": 3.4,
"position": [
448,
0
]
},
{
"parameters": {
"operation": "append",
"documentId": {
"__rl": true,
"value": "{{ GOOGLE_SHEETS_DOCUMENT_ID }}",
"mode": "list",
"cachedResultName": "Suscriptions Web",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/{{ GOOGLE_SHEETS_DOCUMENT_ID }}/edit"
},
"sheetName": {
"__rl": true,
"value": "{{ GOOGLE_SHEETS_SHEET_ID }}",
"mode": "list",
"cachedResultName": "newsletter",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/{{ GOOGLE_SHEETS_DOCUMENT_ID }}/edit#gid={{ GOOGLE_SHEETS_SHEET_ID }}"
},
"columns": {
"mappingMode": "defineBelow",
"value": {
"Email": "={{ $json.email }}",
"Fecha de Registro": "={{ $json.fechaRecepcion.toDateTime().format('yyyy-MM-dd HH:mm:ss') }}",
"Origen": "={{ $json.headers.origin }}"
},
"matchingColumns": [],
"schema": [
{
"id": "Email",
"displayName": "Email",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "Fecha de Registro",
"displayName": "Fecha de Registro",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "Origen",
"displayName": "Origen",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
}
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {}
},
"type": "n8n-nodes-base.googleSheets",
"typeVersion": 4.7,
"position": [
656,
0
],
"id": "5f095bd8-7db7-44f6-9374-b78e43923011",
"name": "Append row in sheet",
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"sendTo": "{{ ADMIN_EMAIL }}",
"subject": "=\ud83d\ude80 Nueva Solicitud de Suscripci\u00f3n: {{ $('Preparar Datos').item.json.email }}",
"message": "=<!DOCTYPE html>\n<html>\n<head>\n <style>\n body { font-family: 'Segoe UI', Arial, sans-serif; line-height: 1.6; color: #2c3e50; margin: 0; padding: 0; }\n .container { max-width: 600px; margin: 0 auto; border: 1px solid #eee; border-radius: 8px; overflow: hidden; }\n /* Header unificado con el estilo del cliente para resaltar el logo */\n .header { text-align: center; padding: 30px 0; background: linear-gradient(135deg, #0066cc 0%, #003366 100%); color: white; }\n .logo { max-width: 180px; height: auto; }\n .content { padding: 30px; background-color: #ffffff; }\n .data-table { width: 100%; margin: 20px 0; border-collapse: collapse; }\n .data-table td { padding: 12px; border-bottom: 1px solid #f0f0f0; }\n .label { font-weight: bold; color: #0066cc; width: 35%; text-transform: uppercase; font-size: 12px; }\n .button-sheet { \n display: inline-block; \n padding: 14px 30px; \n background-color: #28a745; \n color: #ffffff !important; \n text-decoration: none; \n border-radius: 6px; \n font-weight: bold; \n margin-top: 10px;\n box-shadow: 0 4px 6px rgba(0,0,0,0.1);\n }\n </style>\n</head>\n<body>\n <div class=\"container\">\n <div class=\"header\">\n <img src=\"{{ $('Workflow Configuration').first().json.companyLogo }}\" alt=\"MGA Tech\" class=\"logo\">\n <h3 style=\"margin: 10px 0 0 0; opacity: 0.9;\">Nuevo Lead Detectado</h3>\n </div>\n\n <div class=\"content\">\n <table class=\"data-table\">\n <tr><td class=\"label\">Email:</td><td><a href=\"mailto:{{ $json.Email }}\" style=\"color: #0066cc;\">{{ $json.Email }}</a></td></tr>\n </table>\n \n <center>\n <a href=\"https://docs.google.com/spreadsheets/d/{{ GOOGLE_SHEETS_DOCUMENT_ID }}/edit\" class=\"button-sheet\">\n Gestionar en Google Sheets\n </a>\n </center>\n </div>\n </div>\n</body>\n</html>",
"options": {}
},
"type": "n8n-nodes-base.gmail",
"typeVersion": 2.2,
"position": [
864,
80
],
"id": "e5994d0a-1966-43b0-932b-bcf670d01b81",
"name": "Notificaci\u00f3n a Mariano",
"credentials": {
"gmailOAuth2": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"sendTo": "={{ $('Preparar Datos').first().json.email }}",
"subject": "Confirmaci\u00f3n de Recepci\u00f3n - MGA Tech Consulting",
"message": "=<!DOCTYPE html> <html> <head> <style> body { font-family: 'Segoe UI', Arial, sans-serif; line-height: 1.6; color: #2c3e50; margin: 0; padding: 0; } .container { max-width: 600px; margin: 0 auto; padding: 20px; border: 1px solid #eee; } .header { text-align: center; padding: 30px 0; background: linear-gradient(135deg, #0066cc 0%, #003366 100%); color: white; border-radius: 8px 8px 0 0; } .logo { max-width: 180px; height: auto; filter: brightness(0) invert(1); } .content { padding: 30px; background-color: #ffffff; } .footer { text-align: center; padding: 25px; border-top: 1px solid #eee; color: #888; font-size: 13px; background-color: #f9f9f9; border-radius: 0 0 8px 8px; } .welcome-badge { display: inline-block; background: #e1effe; color: #0066cc; padding: 5px 15px; border-radius: 20px; font-weight: bold; font-size: 14px; margin-bottom: 15px; } .highlight-box { background-color: #f4f7fa; padding: 20px; border-left: 5px solid #0066cc; margin: 25px 0; border-radius: 4px; } .topic-grid { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 15px; } .topic-tag { background: #eee; padding: 4px 10px; border-radius: 4px; font-size: 12px; font-weight: bold; color: #555; } .button { display: inline-block; padding: 12px 25px; background-color: pink; color: white; text-decoration: none; border-radius: 5px; font-weight: bold; margin-top: 20px; } </style> </head> <body> <div class=\"container\"> <div class=\"header\"> <img src=\"{{ $('Workflow Configuration').first().json.companyLogo }}\" alt=\"{{ $('Workflow Configuration').first().json.companyName }}\" class=\"logo\"> <h1 style=\"margin: 10px 0 0 0; font-size: 24px;\">Data & AI Insights</h1> </div> <div class=\"content\"> <div class=\"welcome-badge\">\ud83d\ude80 Suscripci\u00f3n Confirmada</div> <h2>\u00a1Hola, {{ $json.name || 'Entusiasta de la Tecnolog\u00eda' }}!</h2> <p>Es un placer darte la bienvenida a nuestra comunidad. A partir de ahora, est\u00e1s conectado con la vanguardia de la transformaci\u00f3n digital.</p> <div class=\"highlight-box\"> <p style=\"margin-top: 0;\"><strong>Resumen de tu suscripci\u00f3n:</strong></p> <p style=\"margin-bottom: 5px;\">\ud83d\udcc5 <strong>Fecha de inicio:</strong> {{ $('Preparar Datos').first().json.fechaRecepcion }}</p> <p style=\"margin-bottom: 5px;\">\ud83d\udce7 <strong>Email registrado:</strong> {{ $('Append row in sheet').item.json.Email }}</p> <div class=\"topic-grid\"> <span class=\"topic-tag\">#DataAnalytics</span> <span class=\"topic-tag\">#GenAI</span> <span class=\"topic-tag\">#Automation</span> <span class=\"topic-tag\">#Efficiency</span> </div> </div> <h3>\u00bfQu\u00e9 puedes esperar de nosotros?</h3> <ul> <li><strong>Data & Analytics:</strong> Estrategias para convertir datos crudos en decisiones de negocio.</li> <li><strong>Generative AI:</strong> Implementaciones reales de LLMs y modelos predictivos.</li> <li><strong>Automations:</strong> C\u00f3mo conectar n8n, Make y APIs para escalar tus procesos.</li> </ul> <p>Estamos procesando tu primera dosis de contenido t\u00e9cnico y casos de \u00e9xito que te enviaremos en breve.</p> <center> <a href=\"https://mgobeaalcoba.github.io/blog.html\" class=\"button\">Explorar Recursos Actuales</a> </center> <p style=\"margin-top: 30px;\">Saludos cordiales,<br> <strong>El equipo de {{ $('Workflow Configuration').first().json.companyName }}</strong></p> </div> <div class=\"footer\"> <p>Recibiste este correo porque te suscribiste a trav\u00e9s de nuestro portal.</p> <p>© 2026 {{ $('Workflow Configuration').first().json.companyName }}. Todos los derechos reservados.</p> <p>Transformando el futuro a trav\u00e9s de los datos y la IA.</p> </div> </div> </body> </html>",
"options": {}
},
"type": "n8n-nodes-base.gmail",
"typeVersion": 2.2,
"position": [
864,
-128
],
"id": "28d38124-0a18-48db-bb6c-df3a867a925c",
"name": "Notificaci\u00f3n al Lead",
"credentials": {
"gmailOAuth2": {
"name": "<your credential>"
}
}
}
],
"connections": {
"Recibir Email": {
"main": [
[
{
"node": "Workflow Configuration",
"type": "main",
"index": 0
}
]
]
},
"Workflow Configuration": {
"main": [
[
{
"node": "Preparar Datos",
"type": "main",
"index": 0
}
]
]
},
"Preparar Datos": {
"main": [
[
{
"node": "Append row in sheet",
"type": "main",
"index": 0
}
]
]
},
"Append row in sheet": {
"main": [
[
{
"node": "Notificaci\u00f3n al Lead",
"type": "main",
"index": 0
},
{
"node": "Notificaci\u00f3n a Mariano",
"type": "main",
"index": 0
}
]
]
},
"Notificaci\u00f3n al Lead": {
"main": [
[]
]
}
},
"meta": {
"templateCredsSetupCompleted": true
},
"_documentation": {
"name": "Newsletter Subscription Handler",
"version": "1.0",
"description": "Handles newsletter subscription requests from the site. Saves the subscriber email to Google Sheets and sends two emails: a welcome confirmation to the subscriber and an admin notification.",
"trigger": "Webhook POST \u2014 path: /webhook/recibir-email",
"payload_expected": {
"email": "...",
"name": "(optional)"
},
"placeholders_to_fill": [
"{{ GOOGLE_SHEETS_DOCUMENT_ID }} \u2014 ID of the Google Sheets spreadsheet",
"{{ GOOGLE_SHEETS_SHEET_ID }} \u2014 Sheet tab ID (numeric gid or \"gid=0\" for first tab)",
"{{ ADMIN_EMAIL }} \u2014 Admin email for new-subscriber notifications",
"{{ CREDENTIAL_ID }} \u2014 Auto-assigned by n8n",
"{{ WEBHOOK_ID }} \u2014 Auto-assigned by n8n"
],
"credentials_required": [
"Google Sheets OAuth2 (Sheets mariano@mgatc.com)",
"Gmail OAuth2 (mariano@mgatc.com Gmail)"
]
}
}
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.
gmailOAuth2googleSheetsOAuth2Api
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
03-Newsletter-Subscription. Uses googleSheets, gmail. Webhook trigger; 6 nodes.
Source: https://github.com/Mgobeaalcoba/Mgobeaalcoba.github.io/blob/main/docs/automations/03-newsletter-subscription.json — 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.
Automate WhatsApp communication for recruitment agencies with an interactive, structured customer experience. This workflow handles pricing inquiries, request submissions, tracking, complaints, and hu
Code. Uses googleSheets, gmail, supabase, stickyNote. Webhook trigger; 51 nodes.
This template turns Podium's conversation inbox into a full sales CRM with a custom funnel, AI message classification, automated drip follow-ups, daily admin reports, and a live Kanban dashboard. Six
Ticketing Backend automates registration, QR-ticket generation, email delivery, and check-in validation using Google Sheets, Gmail, and a webhook scanner — reducing manual ticket prep from ~3 hours to
> n8n + Gmail + Google Sheets + Typeform