10 Suivi de la performance des campagnes d'e-mailing
Ceci est unSocial Media, AI Summarizationworkflow d'automatisation du domainecontenant 17 nœuds.Utilise principalement des nœuds comme If, Set, Gmail, McpClientTool, Agent. Automatisation de l'analyse des campagnes marketing par e-mail et du suivi intelligent via Bright Data et OpenAI
- •Compte Google et informations d'identification Gmail API
- •Clé API OpenAI
Nœuds utilisés (17)
Catégorie
{
"id": "P6LeLqxzbkO3FiPE",
"meta": {
"instanceId": "60046904b104f0f72b2629a9d88fe9f676be4035769f1f08dad1dd38a76b9480",
"templateCredsSetupCompleted": true
},
"name": "10 Track Email Campaign Performance",
"tags": [],
"nodes": [
{
"id": "75f14163-7400-49fe-aeb9-1f983dfe0c5e",
"name": "⏰ Déclencheur de Vérification Quotidienne des Campagnes",
"type": "n8n-nodes-base.scheduleTrigger",
"position": [
-60,
0
],
"parameters": {
"rule": {
"interval": [
{
"triggerAtHour": 9
}
]
}
},
"typeVersion": 1.2
},
{
"id": "3d85c239-8871-48ce-aecc-581a4a4be75c",
"name": "✏️ Définir les Champs de Saisie de la Campagne",
"type": "n8n-nodes-base.set",
"position": [
160,
0
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "04df454e-d477-4dd4-a029-2c97cfd1bf8f",
"name": "url",
"type": "string",
"value": "=https://www.mailchimp.com/campaigns/123/report"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "197f6678-606d-4e9d-91b9-2ed48fe6799c",
"name": "🤖 Agent : Extraire & Analyser les Performances de la Campagne",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
520,
0
],
"parameters": {
"options": {},
"promptType": "define",
"hasOutputParser": true
},
"typeVersion": 2
},
{
"id": "0fa379ec-3e22-4f69-97dc-c45e244121c6",
"name": "🧠 LLM : Résumer & Formater",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
500,
300
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4o-mini"
},
"options": {}
},
"credentials": {
"openAiApi": {
"id": "8sEyPDkC5p4w4Jha",
"name": "OpenAi account"
}
},
"typeVersion": 1.2
},
{
"id": "d1a27651-f1b3-412e-8452-563eba14c7d0",
"name": "🌐 Bright Data MCP : Extraire le Rapport",
"type": "n8n-nodes-mcp.mcpClientTool",
"position": [
680,
300
],
"parameters": {
"toolName": "scrape_as_markdown",
"operation": "executeTool",
"toolParameters": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Tool_Parameters', ``, 'json') }}"
},
"credentials": {
"mcpClientApi": {
"id": "eqq94k789oJCd6jU",
"name": "MCP Client (STDIO) account"
}
},
"typeVersion": 1
},
{
"id": "fb814c29-e412-4332-ae43-b5f8ce4f0783",
"name": "🔎 SI : Ouverture ≥30% & CTR <10% ?",
"type": "n8n-nodes-base.if",
"position": [
1100,
0
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "d5c41a60-cadf-47a6-9685-9bead865346d",
"operator": {
"type": "number",
"operation": "gte"
},
"leftValue": "={{ $json.open_rate }}",
"rightValue": 20
},
{
"id": "7a251b0b-a122-418d-8b0c-6714ebfa6018",
"operator": {
"type": "number",
"operation": "lt"
},
"leftValue": "={{ $json.ctr }}",
"rightValue": 130
}
]
}
},
"typeVersion": 2.2
},
{
"id": "b77a5854-6882-47ac-8dba-9af0bdcc0e1f",
"name": "📧 Envoyer un Email de Relance d'Engagement",
"type": "n8n-nodes-base.gmail",
"position": [
1340,
-100
],
"webhookId": "0fd0b382-f827-4262-a3de-4df28f33fb10",
"parameters": {
"sendTo": "shahkar.genai@gmail.com",
"message": "Hi [First Name], \nWe noticed you opened our recent email — thank you for staying connected! \n🙌 But we think you might have missed the best part… \n👉 [Big Benefit or Offer — e.g., “Get 20% off your next order — today only!”] \nWe don’t want you to miss out — just click below and grab your exclusive [deal / resource / upgrade]. \n[CTA Button: “Claim Your Offer”] Still not sure? We’re here to help if you have any questions. Just hit reply — we love hearing from you! Talk soon, [Your Name] [Your Company]",
"options": {},
"subject": "Did you miss this? Here’s something special for you!",
"emailType": "text"
},
"credentials": {
"gmailOAuth2": {
"id": "AQDSl75AdzK3vmqJ",
"name": "Gmail account"
}
},
"typeVersion": 2.1
},
{
"id": "1259660d-e04c-4708-9319-22749360bdc3",
"name": "🚫 Ignorer — Aucune Action Requise",
"type": "n8n-nodes-base.noOp",
"position": [
1340,
100
],
"parameters": {},
"typeVersion": 1
},
{
"id": "6e673900-d27b-4aba-be1d-8d9149fa6ceb",
"name": "Note adhésive",
"type": "n8n-nodes-base.stickyNote",
"position": [
-120,
-1180
],
"parameters": {
"color": 6,
"width": 420,
"height": 1360,
"content": "## 🎯 **🔹 SECTION 1: Schedule & Prepare Inputs**\n\n### ✅ **Nodes in this Section**\n\n| Node | Name |\n| ---- | -------------------------------- |\n| ⏰ | **Daily Campaign Check Trigger** |\n| ✏️ | **Set Campaign Input Fields** |\n\n---\n\n### 💡 **What Happens Here**\n\n* **⏰ Daily Campaign Check Trigger:**\n This node automatically **starts the workflow on a schedule** — for example, every morning at 9 AM.\n It makes sure you **don’t have to run it manually** every time. The goal is to check your email campaign performance **regularly and consistently**.\n\n* **✏️ Set Campaign Input Fields:**\n This node **defines any input values** that your Agent needs.\n For example:\n\n * Campaign ID\n * ESP URL\n * Date range\n * Any dynamic variables\n\n It acts like **filling in a form** that the rest of the workflow will use.\n You can **edit it easily** without changing the whole workflow.\n\n---\n\n### 🎯 **Why It’s Important**\n\n✅ Automates the whole thing on autopilot.\n✅ Ensures the Agent always has the **right data**.\n✅ Makes the workflow easy to maintain for non-tech users — just change a value in **Edit Fields**, done!\n\n---\n\n---\n\n"
},
"typeVersion": 1
},
{
"id": "d722faa7-9304-4145-9e22-f90b71b02053",
"name": "Note adhésive1",
"type": "n8n-nodes-base.stickyNote",
"position": [
440,
-1300
],
"parameters": {
"color": 3,
"width": 420,
"height": 1480,
"content": "## 🤖 **🔹 SECTION 2: Scrape & Analyze with AI Agent**\n\n### ✅ **Nodes in this Section**\n\n| Node | Name |\n| ---- | ------------------------------------------------ |\n| 🤖 | **Agent: Scrape & Analyze Campaign Performance** |\n| 🧠 | **LLM: Summarize & Format** |\n| 🌐 | **Bright Data MCP: Scrape Report** |\n| 🗂️ | **Parse Scrape Output** |\n\n---\n\n### 💡 **What Happens Here**\n\n* **🤖 Agent: Scrape & Analyze Campaign Performance**\n This is your **AI Agent** — it does the smart part:\n\n * Talks to the **Bright Data MCP Tool** to scrape the ESP report page.\n * Uses an **LLM** (OpenAI Chat Model) to process the scraped data.\n * Passes the result to an **Output Parser** to turn messy text into clean, structured data.\n\n* **🌐 Bright Data MCP: Scrape Report**\n Bright Data logs in, navigates to your campaign report page, and **scrapes live open/click numbers**.\n\n* **🧠 LLM: Summarize & Format**\n The Chat Model turns raw scraped info into easy-to-read Markdown or JSON.\n This is like having a mini data analyst!\n\n* **🗂️ Parse Scrape Output**\n This node extracts the final numbers (open rate, CTR, bounces) so the logic can understand them.\n\n---\n\n### 🎯 **Why It’s Important**\n\n✅ You don’t have to log in manually to get reports.\n✅ The AI cleans up messy scraped data.\n✅ Makes follow-up decisions possible without human effort.\n✅ Works for **any ESP** — if the layout changes, just adjust the scraper.\n\n---\n\n---\n\n"
},
"typeVersion": 1
},
{
"id": "031503cb-3fa4-46b6-9b57-529b10553ec2",
"name": "Note adhésive2",
"type": "n8n-nodes-base.stickyNote",
"position": [
1060,
-840
],
"parameters": {
"color": 5,
"width": 420,
"height": 1100,
"content": "## 📈 **🔹 SECTION 3: Decide & Act Automatically**\n\n### ✅ **Nodes in this Section**\n\n| Node | Name |\n| ---- | ----------------------------------- |\n| 🔎 | **IF: Open ≥30% & CTR <10%?** |\n| 📧 | **Send Follow-Up Engagement Email** |\n| 🚫 | **Skip — No Action Needed** |\n\n---\n\n### 💡 **What Happens Here**\n\n* **🔎 IF: Open ≥30% & CTR <10%?**\n This node checks:\n\n * Is the open rate good? (≥30%)\n * But is the click-through rate low? (<10%)\n If **true**, it triggers follow-up to re-engage the audience.\n\n* **📧 Send Follow-Up Engagement Email**\n If the condition is true, this node sends a **personalized follow-up email** automatically.\n For example: “Hey, you opened but didn’t click — here’s your special offer!”\n\n* **🚫 Skip — No Action Needed**\n If the condition is **false** (e.g. CTR is healthy), do nothing. The workflow ends safely.\n\n---\n\n"
},
"typeVersion": 1
},
{
"id": "4502ee4c-219e-4495-b4ff-c8b3beec55e8",
"name": "Note adhésive5",
"type": "n8n-nodes-base.stickyNote",
"position": [
1560,
-920
],
"parameters": {
"color": 7,
"width": 380,
"height": 240,
"content": "## I’ll receive a tiny commission if you join Bright Data through this link—thanks for fueling more free content!\n\n### https://get.brightdata.com/1tndi4600b25"
},
"typeVersion": 1
},
{
"id": "07751162-2ade-4591-93bc-a3dc2414553d",
"name": "Note adhésive9",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1980,
-1180
],
"parameters": {
"color": 4,
"width": 1300,
"height": 320,
"content": "=======================================\n WORKFLOW ASSISTANCE\n=======================================\nFor any questions or support, please contact:\n Yaron@nofluff.online\n\nExplore more tips and tutorials here:\n - YouTube: https://www.youtube.com/@YaronBeen/videos\n - LinkedIn: https://www.linkedin.com/in/yaronbeen/\n=======================================\n"
},
"typeVersion": 1
},
{
"id": "6c9e1f76-b6d0-4915-8f05-ada92abfcd89",
"name": "Note adhésive4",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1980,
-840
],
"parameters": {
"color": 4,
"width": 1289,
"height": 3118,
"content": "# Dynamic Email Re-Engagement Automation\n---\n\n## 🎯 **🔹 SECTION 1: Schedule & Prepare Inputs**\n\n### ✅ **Nodes in this Section**\n\n| Node | Name |\n| ---- | -------------------------------- |\n| ⏰ | **Daily Campaign Check Trigger** |\n| ✏️ | **Set Campaign Input Fields** |\n\n---\n\n### 💡 **What Happens Here**\n\n* **⏰ Daily Campaign Check Trigger:**\n This node automatically **starts the workflow on a schedule** — for example, every morning at 9 AM.\n It makes sure you **don’t have to run it manually** every time. The goal is to check your email campaign performance **regularly and consistently**.\n\n* **✏️ Set Campaign Input Fields:**\n This node **defines any input values** that your Agent needs.\n For example:\n\n * Campaign ID\n * ESP URL\n * Date range\n * Any dynamic variables\n\n It acts like **filling in a form** that the rest of the workflow will use.\n You can **edit it easily** without changing the whole workflow.\n\n---\n\n### 🎯 **Why It’s Important**\n\n✅ Automates the whole thing on autopilot.\n✅ Ensures the Agent always has the **right data**.\n✅ Makes the workflow easy to maintain for non-tech users — just change a value in **Edit Fields**, done!\n\n---\n\n---\n\n## 🤖 **🔹 SECTION 2: Scrape & Analyze with AI Agent**\n\n### ✅ **Nodes in this Section**\n\n| Node | Name |\n| ---- | ------------------------------------------------ |\n| 🤖 | **Agent: Scrape & Analyze Campaign Performance** |\n| 🧠 | **LLM: Summarize & Format** |\n| 🌐 | **Bright Data MCP: Scrape Report** |\n| 🗂️ | **Parse Scrape Output** |\n\n---\n\n### 💡 **What Happens Here**\n\n* **🤖 Agent: Scrape & Analyze Campaign Performance**\n This is your **AI Agent** — it does the smart part:\n\n * Talks to the **Bright Data MCP Tool** to scrape the ESP report page.\n * Uses an **LLM** (OpenAI Chat Model) to process the scraped data.\n * Passes the result to an **Output Parser** to turn messy text into clean, structured data.\n\n* **🌐 Bright Data MCP: Scrape Report**\n Bright Data logs in, navigates to your campaign report page, and **scrapes live open/click numbers**.\n\n* **🧠 LLM: Summarize & Format**\n The Chat Model turns raw scraped info into easy-to-read Markdown or JSON.\n This is like having a mini data analyst!\n\n* **🗂️ Parse Scrape Output**\n This node extracts the final numbers (open rate, CTR, bounces) so the logic can understand them.\n\n---\n\n### 🎯 **Why It’s Important**\n\n✅ You don’t have to log in manually to get reports.\n✅ The AI cleans up messy scraped data.\n✅ Makes follow-up decisions possible without human effort.\n✅ Works for **any ESP** — if the layout changes, just adjust the scraper.\n\n---\n\n---\n\n## 📈 **🔹 SECTION 3: Decide & Act Automatically**\n\n### ✅ **Nodes in this Section**\n\n| Node | Name |\n| ---- | ----------------------------------- |\n| 🔎 | **IF: Open ≥30% & CTR <10%?** |\n| 📧 | **Send Follow-Up Engagement Email** |\n| 🚫 | **Skip — No Action Needed** |\n\n---\n\n### 💡 **What Happens Here**\n\n* **🔎 IF: Open ≥30% & CTR <10%?**\n This node checks:\n\n * Is the open rate good? (≥30%)\n * But is the click-through rate low? (<10%)\n If **true**, it triggers follow-up to re-engage the audience.\n\n* **📧 Send Follow-Up Engagement Email**\n If the condition is true, this node sends a **personalized follow-up email** automatically.\n For example: “Hey, you opened but didn’t click — here’s your special offer!”\n\n* **🚫 Skip — No Action Needed**\n If the condition is **false** (e.g. CTR is healthy), do nothing. The workflow ends safely.\n\n---\n\n### 🎯 **Why It’s Important**\n\n✅ Takes action **only when needed**, saving time.\n✅ Boosts click rates without extra manual work.\n✅ Protects your audience from spam by not sending unnecessary follow-ups.\n\n---\n\n## 🌟 **✨ Why This Whole Flow is Powerful**\n\n* Runs daily — **no manual checks**.\n* Scrapes live data — **no API? No problem!**\n* Uses AI to process messy data — **no coding required!**\n* Makes smart decisions — **no human micromanagement**.\n* Sends the right email to the right audience at the right time — **better engagement, better ROI!**\n\n---\n\n"
},
"typeVersion": 1
},
{
"id": "237aeaf4-64f1-411b-a013-9209f46fa320",
"name": "Auto-fixing Output Parser",
"type": "@n8n/n8n-nodes-langchain.outputParserAutofixing",
"position": [
840,
300
],
"parameters": {
"options": {}
},
"typeVersion": 1
},
{
"id": "f86d1724-c0c3-4820-9699-44f2d4101054",
"name": "OpenAI Chat Model",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
800,
560
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4o-mini"
},
"options": {}
},
"credentials": {
"openAiApi": {
"id": "8sEyPDkC5p4w4Jha",
"name": "OpenAi account"
}
},
"typeVersion": 1.2
},
{
"id": "41e646ea-effa-40c0-8513-7fecd83762ee",
"name": "Structured Output Parser",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
980,
560
],
"parameters": {
"jsonSchemaExample": "{\n \"campaign_name\": \"Summer Promo Blast\",\n \"campaign_id\": \"123456789\",\n \"date_sent\": \"2025-06-29\",\n \"unique_opens\": 1230,\n \"total_opens\": 1590,\n \"open_rate\": 47,\n \"unique_clicks\": 530,\n \"total_clicks\": 670,\n \"ctr\": 20,\n \"soft_bounces\": 25,\n \"hard_bounces\": 10,\n \"bounce_rate\": 1.8,\n \"unsubscribed\": 15,\n \"unsubscribe_rate\": 0.6\n}\n"
},
"typeVersion": 1.2
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "226f422b-33c6-4834-8653-5f7a501d9955",
"connections": {
"f86d1724-c0c3-4820-9699-44f2d4101054": {
"ai_languageModel": [
[
{
"node": "237aeaf4-64f1-411b-a013-9209f46fa320",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"41e646ea-effa-40c0-8513-7fecd83762ee": {
"ai_outputParser": [
[
{
"node": "237aeaf4-64f1-411b-a013-9209f46fa320",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"237aeaf4-64f1-411b-a013-9209f46fa320": {
"ai_outputParser": [
[
{
"node": "197f6678-606d-4e9d-91b9-2ed48fe6799c",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"0fa379ec-3e22-4f69-97dc-c45e244121c6": {
"ai_languageModel": [
[
{
"node": "197f6678-606d-4e9d-91b9-2ed48fe6799c",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"75f14163-7400-49fe-aeb9-1f983dfe0c5e": {
"main": [
[
{
"node": "3d85c239-8871-48ce-aecc-581a4a4be75c",
"type": "main",
"index": 0
}
]
]
},
"3d85c239-8871-48ce-aecc-581a4a4be75c": {
"main": [
[
{
"node": "197f6678-606d-4e9d-91b9-2ed48fe6799c",
"type": "main",
"index": 0
}
]
]
},
"fb814c29-e412-4332-ae43-b5f8ce4f0783": {
"main": [
[
{
"node": "b77a5854-6882-47ac-8dba-9af0bdcc0e1f",
"type": "main",
"index": 0
}
],
[
{
"node": "1259660d-e04c-4708-9319-22749360bdc3",
"type": "main",
"index": 0
}
]
]
},
"d1a27651-f1b3-412e-8452-563eba14c7d0": {
"ai_tool": [
[
{
"node": "197f6678-606d-4e9d-91b9-2ed48fe6799c",
"type": "ai_tool",
"index": 0
}
]
]
},
"197f6678-606d-4e9d-91b9-2ed48fe6799c": {
"main": [
[
{
"node": "fb814c29-e412-4332-ae43-b5f8ce4f0783",
"type": "main",
"index": 0
}
]
]
}
}
}Comment utiliser ce workflow ?
Copiez le code de configuration JSON ci-dessus, créez un nouveau workflow dans votre instance n8n et sélectionnez "Importer depuis le JSON", collez la configuration et modifiez les paramètres d'authentification selon vos besoins.
Dans quelles scénarios ce workflow est-il adapté ?
Avancé - Réseaux sociaux, Résumé IA
Est-ce payant ?
Ce workflow est entièrement gratuit et peut être utilisé directement. Veuillez noter que les services tiers utilisés dans le workflow (comme l'API OpenAI) peuvent nécessiter un paiement de votre part.
Workflows recommandés
Yaron Been
@yaron-nofluffBuilding AI Agents and Automations | Growth Marketer | Entrepreneur | Book Author & Podcast Host If you need any help with Automations, feel free to reach out via linkedin: https://www.linkedin.com/in/yaronbeen/ And check out my Youtube channel: https://www.youtube.com/@YaronBeen/videos
Partager ce workflow