8 templates found
Category:
Author:
Sort:

Automated daily customer win-back campaign with AI offers

Proactively retain customers predicted to churn with this automated n8n workflow. Running daily, it identifies high-risk customers from your Google Sheet, uses Google Gemini to generate personalized win-back offers based on their churn score and preferences, sends these offers via Gmail, and logs all actions for tracking. What does this workflow do? This workflow automates the critical process of customer retention by: Running automatically every day on a schedule you define. Fetching customer data from a designated Google Sheet containing metrics like predicted churn scores and preferred categories. Filtering to identify customers with a high churn risk (score > 0.7) who haven't recently received a specific campaign (based on the created_campaign_date field - you might need to adjust this logic*). Using Google Gemini AI to dynamically generate one of three types of win-back offers, personalized based on the customer's specific churn score and preferred product categories: Informational: (Score 0.7-0.8) Highlights new items in preferred categories. Bonus Points: (Score 0.8-0.9) Offers points for purchases in a target category (e.g., Books). Discount Percentage: (Score 0.9-1.0) Offers a percentage discount in a target category (e.g., Books). Sending the personalized offer directly to the customer via Gmail. Logging each sent offer or the absence of eligible customers for the day in a separate 'SYSTEM_LOG' Google Sheet for monitoring and analysis. Who is this for? CRM Managers & Retention Specialists: Automate personalized outreach to at-risk customers. Marketing Teams: Implement data-driven retention campaigns with minimal manual effort. E-commerce Businesses & Subscription Services: Proactively reduce churn and increase customer lifetime value. Anyone using customer data (especially churn prediction scores) who wants to automate personalized retention efforts via email. Benefits Automated Retention: Set it up once, and it runs daily to engage at-risk customers automatically. AI-Powered Personalization: Go beyond generic offers; tailor messages based on churn risk and customer preferences using Gemini. Proactive Churn Reduction: Intervene before* customers leave by addressing high churn scores with relevant offers. Scalability: Handle personalized outreach for many customers without manual intervention. Improved Customer Loyalty: Show customers you value them with relevant, timely offers. Action Logging: Keep track of which customers received offers and when the workflow ran. How it Works Daily Trigger: The workflow starts automatically based on the schedule set (e.g., daily at 9 AM). Fetch Data: Reads all customer data from your 'Customer Data' Google Sheet. Filter Customers: Selects customers where predictedchurnscore > 0.7 AND createdcampaigndate is empty (verify this condition fits your needs). Check for Eligibility: Determines if any customers passed the filter. IF Eligible Customers Found: Loop: Processes each eligible customer one by one. Generate Offer (Gemini): Sends the customer's predictedchurnscore and preferred_categories to Gemini. Gemini analyzes these and the defined rules to create the appropriate offer type, value, title, and detailed message, returning it as structured JSON. Log Sent Offer: Records actiontaken = SENTWINBACKOFFER, the timestamp, and customerid in the 'SYSTEM_LOG' sheet. Send Email: Uses the Gmail node to send an email to the customer's usermail with the generated offertitle as the subject and offer_details as the body. IF No Eligible Customers Found: Set Status: Creates a record indicating systemlog = NOTFOUND. Log Status: Records this 'NOTFOUND' status and the current timestamp in the 'SYSTEMLOG' sheet. n8n Nodes Used Schedule Trigger Google Sheets (x3 - Read Customers, Log Sent Offer, Log Not Found) Filter If SplitInBatches (Used for Looping) Langchain Chain - LLM (Gemini Offer Generation) Langchain Chat Model - Google Gemini Langchain Output Parser - Structured Set (Prepare 'Not Found' Log) Gmail (Send Offer Email) Prerequisites Active n8n instance (Cloud or Self-Hosted). Google Account with access to Google Sheets and Gmail. Google Sheets API Credentials (OAuth2): Configured in n8n. Two Google Sheets: 'Customer Data' Sheet: Must contain columns like customerid, predictedchurnscore (numeric), preferredcategories (string, e.g., ["Books", "Electronics"]), usermail (string), and potentially createdcampaign_date (date/string). 'SYSTEMLOG' Sheet: Should have columns like systemlog (string), date (string/timestamp), and customerid (string, optional for 'NOTFOUND' logs). Google Cloud Project with the Vertex AI API enabled. Google Gemini API Credentials: Configured in n8n (usually via Google Vertex AI credentials). Gmail API Credentials (OAuth2): Configured in n8n with permission to send emails. Setup Import the workflow JSON into your n8n instance. Configure Schedule Trigger: Set the desired daily run time (e.g., Hours set to 9). Configure Google Sheets Nodes: Select your Google Sheets OAuth2 credentials for all three Google Sheets nodes. Fetch Customer Data...: Enter your 'Customer Data' Spreadsheet ID and Sheet Name. 5b. Log Sent Offer...: Enter your 'SYSTEM_LOG' Spreadsheet ID and Sheet Name. Verify column mapping. 3b. Log 'Not Found'...: Enter your 'SYSTEM_LOG' Spreadsheet ID and Sheet Name. Verify column mapping. Configure Filter Node (2. Filter High Churn Risk...): Crucially, review the second condition: {{ $json.created_campaign_date.isEmpty() }}. Ensure this field and logic correctly identify customers who should* receive the offer based on your campaign strategy. Modify or remove if necessary. Configure Google Gemini Nodes: Select your configured Google Vertex AI / Gemini credentials in the Google Gemini Chat Model node. Review the prompt in the 5a. Generate Win-Back Offer... node to ensure the offer logic matches your business rules (especially category names like "Books"). Configure Gmail Node (5c. Send Win-Back Offer...): Select your Gmail OAuth2 credentials. Activate the workflow. Ensure your 'Customer Data' and 'SYSTEM_LOG' Google Sheets are correctly set up and populated. The workflow will run automatically at the next scheduled time. This workflow provides a powerful, automated way to engage customers showing signs of churn, using personalized AI-driven offers to encourage them to stay. Adapt the filtering and offer logic to perfectly match your business needs!

OnurBy Onur
1082

Create personalized email outreach with AI, Telegram bot & website scraping

Demo Personalized Email This n8n workflow is built for AI and automation agencies to promote their workflows through an interactive demo that prospects can try themselves. The featured system is a deep personalized email demo. --- 🔄 How It Works Prospect Interaction A prospect starts the demo via Telegram. The Telegram bot (created with BotFather) connects directly to your n8n instance. Demo Guidance The RAG agent and instructor guide the user step-by-step through the demo. Instructions and responses are dynamically generated based on user input. Workflow Execution When the user triggers an action (e.g., testing the email demo), n8n runs the workflow. The workflow collects website data using Crawl4AI or standard HTTP requests. Email Demo The system personalizes and sends a demo email through SparkPost, showing the automation’s capability. Logging and Control Each user interaction is logged in your database using their name and id. The workflow checks limits to prevent misuse or spam. Error Handling If a low-CPU scraping method fails, the workflow automatically escalates to a higher-CPU method. ⚙️ Requirements Before setting up, make sure you have the following: n8n — Automation platform to run the workflow Docker — Required to run Crawl4AI Crawl4AI — For intelligent website crawling Telegram Account — To create your Telegram bot via BotFather SparkPost Account — To send personalized demo emails A database (e.g., PostgreSQL, MySQL, or SQLite) — To store log data such as user name and ID 🚀 Features Telegram interface using the BotFather API Instructor and RAG agent to guide prospects through the demo Flow generation limits per user ID to prevent abuse Low-cost yet powerful web scraping, escalating from low- to high-CPU flows if earlier ones fail --- 💡 Development Ideas Replace the RAG logic with your own query-answering and guidance method Remove the flow limit if you’re confident the demo can’t be misused Swap the personalized email demo with any other workflow you want to showcase --- 🧠 Technical Notes Telegram bot created with BotFather Website crawl process: Extract sub-links via /sitemap.xml, sitemap_index.xml, or standard HTTP requests Fall back to Crawl4AI if normal requests fail Fetch sub-link content via HTTPS or Crawl4AI as backup SparkPost used for sending demo emails --- ⚙️ Setup Instructions Create a Telegram Bot Use BotFather on Telegram to create your bot and get the API token. This token will be used to connect your n8n workflow to Telegram. Create a Log Data Table In your database, create a table to store user logs. The table must include at least the following columns: name — to store the user’s name or Telegram username. id — to store the user’s unique identifier. Install Crawl4AI with Docker Follow the installation guide from the official repository: 👉 https://github.com/unclecode/crawl4ai Crawl4AI will handle website crawling and content extraction in your workflow. --- 📦 Notes This setup is optimized for low cost, easy scalability, and real-time interaction with prospects. You can customize each component — Telegram bot behavior, RAG logic, scraping strategy, and email workflow — to fit your agency’s demo needs. 👉 You can try the live demo here: @emaildemobot ---

Michael A PutraBy Michael A Putra
474

Research-to-social post generator with Perplexity AI and Facebook Graph API

Who’s it for Teams that want to turn a chat prompt into a researched, ready-to-post social update—optionally published to Facebook. What it does / How it works Chat Trigger receives the user prompt Topic Agent optionally calls a research sub-workflow for fresh sources Outputs are validated into a structured JSON Post Writing Agent crafts a concise Vietnamese post (Optional) Facebook Graph API publishes to your Page How to set up Connect OpenAI & Facebook in Credentials (no API key inside nodes). In Tool: Call Perplexity Researcher, set your research workflowId. In Publish: Facebook Graph API, set your Page ID and edge. Adjust prompts/tone and the LANGUAGE in CONFIG. Test the flow with sample prompts in the chat. Requirements n8n (Cloud or self-hosted) OpenAI API key (stored in Credentials) Facebook Page publish permissions (Optional) a research workflow for Perplexity How to customize the workflow Add moderation/review gates before publishing. Duplicate the publish path for other platforms. Store outputs in Sheets/Notion/DB for auditing. Tune model choice & temperature for your brand voice. Security Avoid hardcoding secrets in HTTP or Code nodes. Keep identifiers (Page IDs, workflowIds) configurable in CONFIG.

HoangSPBy HoangSP
364

Business AI command center: Modular agents for Google Workspace, vector search & multi-channel reports

🚀 AI OPS Agent for n8n — Stop Doing Busy Work. Start Leading. Your AI workforce is ready. Are you? 💰 What You Get: Your ROI in 30 Days Replace 10-15 hours/week of manual work with intelligent automation that actually understands your business. While your competitors copy-paste data between tools, you'll be making strategic decisions. --- 🧠 The Powerhouse Stack That Does Everything | Module | Core Job | Your Competitive Edge | |------------|-------------|--------------------------| | MAIN AGENT (Grok 4) | Orchestrator & brain | • Reads your message → builds execution plan<br />• Delegates to specialized agents<br />• Delivers results through your preferred channel | | Knowledge Agent | Company-wide research assistant | • Vector-searches your Supabase docs instantly<br />• Runs live SQL queries for real-time numbers<br />• Hunts & parses Drive files automatically<br />• Pulls fresh web intelligence via Perplexity | | Google Sheets MCP Toolkit | Spreadsheet automation | Natural-language control over read/append/update/clear/create/delete operations on any tab or range | | Google Drive MCP Toolkit | File intelligence pipeline | • Auto-detects file types & extracts text from PDFs/CSVs<br />• Transcribes audio/video content<br />• Describes images with GPT-4o Mini | | Vector Store Loader | Long-term memory system | • Auto-chunks new files<br />• Creates OpenAI embeddings<br />• Stores in Supabase for instant semantic search | | Postgres Chat Memory | Conversation context | Never repeat yourself—every follow-up question builds on previous context | | Report Agent | Executive briefing machine | • Converts raw outputs → clean Markdown → HTML<br />• Auto-emails/Slacks/Telegrams polished reports | | LinkedIn Scraper | Talent & market intelligence | Scrapes full LinkedIn profiles via Apify, delivers structured JSON for analysis | | Multi-Channel Triggers | Meet users where they work | Slack • Gmail • Telegram • WhatsApp • HTTP Webhooks | | LLM Layer | Right model, right job | Grok 4 (reasoning) • Claude Sonnet 4 (analysis) • GPT-4o Mini (speed) • Perplexity (live web) | --- ⚡ How It Works (The Magic in 5 Steps) Message arrives (Slack mention, email, webhook) MAIN AGENT analyzes → selects optimal tool chain Specialized toolkits execute (Sheets, Drive, SQL, Scraper...) Knowledge Agent synthesizes everything using the perfect LLM Report Agent packages & delivers results to your chosen channel --- 🎯 Real Commands That Save Hours Daily &gt; "Update the Marketing-Spend sheet with last week's totals, then email me a chart." &gt; &gt; "Find the product-launch PDF from Drive, summarize key risks, post to Slack." &gt; &gt; "Scrape this LinkedIn URL, rank the candidate's skills, add them to our CRM sheet." &gt; &gt; "Create a new Sprint 11 tab, copy headers from Sprint 10, and ping the team." One command. Multiple systems. Zero manual work. --- Why Choose This Over Other Products: ✅ All Your Data, One Brain No more jumping between 12 different tools. Your AI agent connects everything. You can go further If you want to increase the Agent capabilities or make the more powerfull you can reach the dev. ✅ Vector Search Built-In Upload a 100-page document once. Search it forever with natural language. ✅ Executive-Ready Reports Your C-suite gets clean HTML briefs, not raw data dumps that waste their time. ✅ Deploy in Minutes Plug into your existing n8n setup, add credentials, watch routine ops handle themselves. ---

PaulBy Paul
317

Automate job post expiry reminders with Google Sheets, HTTP checks & Gmail

Job post expiry & refresh reminders from Google Sheets using HTTP Last‑Modified checks This workflow checks each job URL in your Google Sheet and identifies listings that look stale based on the page’s Last‑Modified date. At 10:00 Asia/Kolkata every day, it requests each URL (HEAD, then GET if needed), calculates the age in days, and sends a polite email reminder to the recruiter when age ≥ a configurable threshold (default 30 days). It includes a DRY_RUN mode to preview who would be emailed, and conservative rate limits for both HTTP requests and email sends. Who’s it for Recruitment teams maintaining job links on external boards/career sites. Coordinators who want a daily, hands‑off nudge to refresh or unlist outdated posts. Teams using Google Sheets to store job URLs and owner contacts. How it works Cron (10:00 IST) triggers daily. Google Sheets reads the Job Posts tab (joburl, recruitername, recruiter_email). Validate rows (URL + email format, weekend rule via config). HTTP HEAD to fetch headers; if Last-Modified missing, HTTP GET and parse common meta tags (article:modifiedtime, og:updatedtime, lastmod, dateModified). Compute age (days since last modified in your configured timezone). If agedays ≥ THRESHOLDDAYS, prepare a personalized email using templates. DRY_RUN? If true, output a preview; if false, rate‑limit and send emails via SMTP. How to set up Create the Sheet Tab name: Job Posts Columns: joburl, recruitername, recruiter_email Credentials in n8n Google Sheets (OAuth) SMTP (Gmail) (use an app password if 2FA) Open “Set: Config” and set: SPREADSHEET_ID = your Sheet ID SOURCE_SHEET = Job Posts TIMEZONE = Asia/Kolkata THRESHOLD_DAYS = 30 (change if needed) USER_AGENT = n8n-job-checker/1.0 HTTPTIMEOUTSECONDS = 10 HTTP_RETRIES = 2 RATELIMITHTTP_SECONDS = 5 RATELIMITEMAIL_SECONDS = 2 SMTP_FROM = sender email (e.g., hiring-ops@company.com) SUBJECTTEMPLATE, HTMLTEMPLATE, TEXTTEMPLATE (placeholders: {{recruitername}}, {{joburl}}, {{agedays}}, {{last_modified}}) INCLUDE_WEEKENDS = true DRY_RUN = false (set true to preview) Activate the workflow. Requirements Google Sheet with Job Posts tab and required columns. SMTP (Gmail) account to send emails. n8n (cloud or self‑hosted) with Google Sheets + SMTP credentials. How to customize Threshold: Change THRESHOLD_DAYS (e.g., 15, 45). Schedule: Adjust the Cron time from 10:00 IST to your preferred hour. Templates: Edit SUBJECTTEMPLATE, HTMLTEMPLATE, and TEXT_TEMPLATE. Rate limits: Tune RATELIMITHTTPSECONDS and RATELIMITEMAILSECONDS for your environment. Weekend behavior: Toggle INCLUDE_WEEKENDS. Preview runs: Use DRY_RUN=true to check recipients before real sends. Add‑ons Helper columns: Write back lastmodifiedhttp, agedays, remindersentat, lastchecked_at, notes to the sheet. Per‑row override: Add threshold_days column to override the global threshold per job. Slack notifications: DM the recruiter or a channel in addition to (or instead of) email. One‑time reminders: Email only once until the page updates (track remindersentat). Robots/backoff: Respect robots.txt or add exponential backoff for high‑traffic sites. Use Case Examples Career site posts that haven’t been updated in 30+ days. Remind owners to refresh copy or close the listing. Third‑party boards (e.g., niche communities) where Last‑Modified is available — automate hygiene checks. Agency partnership links — ensure outdated roles aren’t left live, protecting brand experience. Common troubleshooting | Issue | Possible Cause | Solution | | --- | --- | --- | | No emails sent | DRYRUN is true | Set DRYRUN=false to actually send. | | Rows skipped | Invalid/missing joburl or recruiteremail | Fix the row values; ensure valid URL and email. | | “Stale” not detected | Page has no Last-Modified header and no recognizable meta tags | Add manual review; consider the Helper columns add‑on to log missing dates, or track firstseenat. | | Wrong time math | Timezone mismatch | Confirm TIMEZONE=Asia/Kolkata (or your TZ) in Set: Config. | | Too many requests | Sites rate‑limit frequent checks | Increase RATELIMITHTTP_SECONDS; consider running less frequently. | | Emails fail to send | SMTP auth or quota issues | Verify SMTP credentials, sender address, and provider limits; try a different sender or schedule. | Need Help? If you’d like help tailoring the templates, adding Slack notifications or writing back helper columns for audit, just message us at WeblineIndia and we will be happy to help you get this running smoothly.

WeblineIndiaBy WeblineIndia
229

Advanced market trends & competitor GPT-4o intelligence hub

How It Works Automated daily scraping of competitor websites, pricing pages, job postings, and press releases feeds into an AI analyzer powered by OpenAI or Claude to extract trends, insights, and key metrics. The analyzed results are stored in Google Sheets for historical tracking and longitudinal comparison, and are automatically shared with stakeholders via email or WhatsApp. This workflow eliminates manual competitive research, enabling product teams and executives to monitor market movements efficiently and make timely, data-driven decisions. Setup Steps Configure the daily schedule trigger. Define competitor URLs using workflow variables. Add and configure the OpenAI or Claude API key. Authenticate Google Sheets using the appropriate credentials. Connect Gmail and WhatsApp Business API tokens. Test each scraper individually before enabling full automation. Prerequisites OpenAI/Claude API account, Google Sheets access, Gmail account, WhatsApp Business API, web scraping enabled Use Cases Market share monitoring, pricing strategy updates, competitor talent movement tracking, industry trend reports Customization Modify scrape targets, adjust AI prompt for different metrics, change alert frequency Benefits Real-time competitive visibility, reduced manual research 15+ hours/week, faster decision-making

Cheng Siong ChinBy Cheng Siong Chin
184

LinkedIn to Gmail: generate cold emails with Dumpling AI, GPT-4 & Dropcontact

Who’s it for This template is perfect for digital agencies, SDRs, lead generators, or outreach teams that want to automatically convert LinkedIn company profiles into high-quality cold emails. If you spend too much time researching and writing outreach messages, this workflow does all the heavy lifting for you. --- What it does Once a LinkedIn company profile URL is submitted via a web form, the workflow: Scrapes detailed company data using Dumpling AI Enriches the contact (email, name, country) using Dropcontact Sends company data and contact info to GPT-4, which generates: A personalized subject line (max 8 words) A short HTML cold email (4–6 sentences) Sends the cold email via Gmail Logs the lead details to Airtable for tracking All AI-generated content follows strict formatting and tone guidelines, ensuring it's professional, human, and clean. --- How it works Form Trigger: Collects the LinkedIn URL Dumpling AI: Extracts company name, description, size, location, website, etc. Dropcontact: Finds the contact's email and name based on enriched company details GPT-4: Writes a structured cold email and subject line in JSON format Gmail: Sends the personalized email to a fixed recipient Airtable: Logs the lead into a specified base/table for follow-up --- Requirements ✅ Dumpling AI API key (stored in HTTP header credentials) ✅ Dropcontact API key ✅ OpenAI GPT-4 credentials ✅ Gmail account (OAuth2) ✅ Airtable base & table set up with at least these fields: Name LinkedIn Company URL People website --- How to customize Modify the GPT prompt to reflect your brand tone or service offering Replace Gmail with Slack, Outlook, or another communication tool Add a “review and approve” step before sending emails Add logic to avoid duplicates (e.g., check Airtable first) --- &gt; This workflow lets you go from LinkedIn profile to inbox-ready cold email in less than a minute—with full AI support.

YangBy Yang
176

Generate SSL/TLS certificate expiry reports with AWS ACM and AI for Slack & email

Automated SSL/TLS Certificate Expiry Report for AWS &gt; Automatically generates a weekly report of all AWS ACM certificates, including status, expiry dates, and renewal eligibility. The workflow formats the data into both Markdown (for PDF export to Slack) and HTML (for email summary), helping teams stay on top of certificate compliance and expiration risks. Who’s it for This workflow is designed for DevOps engineers, cloud administrators, and compliance teams who manage AWS infrastructure and need automated weekly visibility into the status of their SSL/TLS certificates in AWS Certificate Manager (ACM). It's ideal for teams that want to reduce the risk of expired certs, track renewal eligibility, and maintain reporting for audit or operational purposes. How it works / What it does This n8n workflow performs the following actions on a weekly schedule: Trigger: Automatically runs once a week using the Weekly schedule trigger. Fetch Certificates: Uses Get many certificates action from AWS Certificate Manager to retrieve all certificate records. Parse Data: Processes and reformats certificate data (dates, booleans, SANs, etc.) into a clean JSON object. Generate Reports: 📄 Markdown Report: Uses the Certificate Summary Markdown Agent (OpenAI) to generate a Markdown report for PDF export. 🌐 HTML Report: Uses the Certificate Summary HTML Agent to generate a styled HTML report for email. Deliver Reports: Converts Markdown to PDF and sends it to Slack as a file. Sends HTML content as a formatted email. How to set up Configure AWS Credentials in n8n to allow access to AWS ACM. Create a new workflow and use the following nodes in sequence: Schedule Trigger: Weekly (e.g., every Monday at 08:00 UTC) AWS ACM → Get many certificates Function Node → Parse ACM Data: Converts and summarizes certificate metadata OpenAI Chat Node (Markdown Agent) with a system/user prompt to generate Markdown Configure Metadata → Define file name and MIME type (.md) Create document file → Converts Markdown to document stream Convert to PDF Slack Node → Upload the PDF to a channel (Optional) Add a second OpenAI Chat Node for generating HTML and sending it via email Connect Output: Markdown report → Slack file upload HTML report → Email node with embedded HTML Requirements 🟩 n8n instance (self-hosted or cloud) 🟦 AWS account with access to ACM 🟨 OpenAI API key (for ChatGPT Agent) 🟥 Slack webhook or OAuth credentials (for file upload) 📧 Email integration (e.g., SMTP or SendGrid) 📝 Permissions to write documents (Google Drive / file node) How to customize the workflow Change report frequency: Adjust the Weekly schedule trigger to daily or monthly as needed. Filter certificates: Modify the function node to only include EXPIRED, IN_USE, or INELIGIBLE certs. Add tags or domains to include/exclude. Add visuals: Enhance the HTML version with colored rows, icons, or company branding. Change delivery channels: Replace Slack with Microsoft Teams, Discord, or Telegram. Send Markdown as email attachment instead of PDF. Integrate ticketing: Create a JIRA/GitHub issue for each certificate that is EXPIRED or INELIGIBLE.

Trung TranBy Trung Tran
135
All templates loaded