by Daniel Shashko
This workflow automates daily or manual keyword rank tracking on Google Search for your target domain. Results are logged in Google Sheets and sent via email using Bright Data's SERP API. Requirements: n8n (local or cloud) with Google Sheets and Gmail nodes enabled Bright Data API credentials Main Use Cases Track Google search rankings for multiple keywords and domains automatically Maintain historical rank logs in Google Sheets for SEO analysis Receive scheduled or on-demand HTML email reports with ranking summaries Customize or extend for advanced SEO monitoring and reporting How it works The workflow is divided into several logical steps: 1. Workflow Triggers Manual:** Start by clicking 'Test workflow' in n8n. Scheduled:** Automatically triggers every 24 hours via Schedule Trigger. 2. Read Keywords and Target Domains Fetches keywords and domains from a specified Google Sheets document. The sheet must have columns: Keyword and Domain. 3. Transform Keywords Formats each keyword for URL querying (spaces become +, e.g., seo expert → seo+expert). 4. Batch Processing Processes keywords in batches so each is checked individually. 5. Get Google Search Results via Bright Data Sends a request to Bright Data's SERP API for each keyword with location (default: US). Receives the raw HTML of the search results. 6. Parse and Find Ranking Extracts all non-Google links from HTML. Searches for the target domain among the results. Captures the rank (position), URL, and total number of results checked. Saves timestamp. 7. Save Results to Google Sheets Appends the findings (keyword, domain, rank, found URL, check time) to a “Results” sheet for history. 8. Generate HTML Report and Send Email Builds an HTML table with current rankings. Emails the formatted table to the specified recipient(s) with Gmail. Setup Steps Google Sheets: Create a sheet named “Results”, and another with Keyword and Domain columns. Update document ID and sheet names in the workflow’s config. Bright Data API: Acquire your Bright Data API token. Enter it in the Authorization header of the 'Getting Ranks' HTTP Request node. Gmail: Connect your Gmail account via OAuth2 in n8n. Set your destination email in the 'Sending Email Message' node. Location Customization: Modify the gl= parameter in the SERP API URL to change country/location (e.g., gl=GB for the UK). Notes This workflow is designed for n8n local or cloud environments with suitable connector credentials. Customize batch size, recipient list, or ranking extraction logic per your needs. Use sticky notes in n8n for further setup guidance and workflow tips. With this workflow, you have an automated, repeatable process to monitor, log, and report Google search rankings for your domains—ideal for SEO, digital marketing, and reporting to clients or stakeholders.
by Danielle Gomes
Automatically classify incoming leads based on the sentiment of their message using Google Gemini, store them in Supabase by category, and send tailored WhatsApp messages via the official WhatsApp Cloud API. ✅ Use Case: This workflow is ideal for sales, onboarding, and customer support teams who want to: Understand the tone and urgency of each lead Prioritize hot leads instantly Send smart, automatic WhatsApp replies based on user sentiment 🧠 How it works: Capture lead via a Typeform webhook Clean and structure the data (name, email, message, etc.) Run sentiment analysis using Google Gemini to classify the message as: Positive → Hot Lead Neutral → Warm Lead Negative → Cold Lead Store lead data in Supabase under the corresponding category Merge data to unify flow paths Send WhatsApp message using the official WhatsApp Cloud API, with a custom reply for each sentiment result 🔧 Tools used: Typeform (incoming data) Google Gemini (AI-based sentiment classification) Supabase (database) WhatsApp Cloud API (response automation) 🏷 Tags: AI, Sentiment Analysis, Lead Qualification, Supabase, WhatsApp, Gemini, Typeform, CRM, Automation, Customer Engagement
by Dvir Sharon
📰 Publish Latest News on X and Other Social Media Platforms Using Keyword A comprehensive n8n automation that fetches the latest news based on keywords, generates AI-powered social media content, and automatically publishes to X (Twitter) with complete tracking and notification systems. 📋 Overview This workflow provides a professional news publishing solution that automatically discovers breaking news, creates engaging social media content using AI, and publishes to X (Twitter) with comprehensive tracking. Perfect for news organizations, content creators, social media managers, and businesses wanting to stay current with automated news sharing. The system uses BrightData's Google News dataset, OpenAI's GPT-4o for content generation, and multi-platform integration for complete automation. ⭐ Key Features 📝 Form-Based Input**: Clean web form for keyword and country submission 📰 Real-Time News Fetching**: BrightData Google News integration for latest articles 🤖 AI Content Generation**: GPT-4o powered tweet creation with hashtags 📱 Auto X Publishing**: Direct posting to X (Twitter) with URL tracking 📊 Complete Tracking**: Google Sheets logging of all published content 🔔 Email Notifications**: Success alerts with tweet links 🌍 Multi-Country Support**: Localized news for US, India, UK, Australia ⚡ Status Monitoring**: Real-time progress tracking with retry logic 🛡 Error Handling**: Robust error management and validation 🔄 Loop Management**: Intelligent waiting for news processing completion 🎯 What This Workflow Does Input: News Name**: Keyword or topic for news search (required) Country**: Target country for localized news (dropdown: US/IN/GB/AU) Processing: Form Submission: Captures news keyword and target country News Triggering: Initiates BrightData Google News scraping job Status Monitoring: Checks scraping progress with intelligent retry loop Data Retrieval: Fetches latest news articles when ready AI Content Creation: Generates engaging tweet content using GPT-4o Social Publishing: Posts content to X (Twitter) automatically URL Generation: Creates direct tweet links for tracking Data Logging: Saves content and URLs to Google Sheets Email Notification: Sends success confirmation with tweet link Completion: Workflow ends with full audit trail 📋 Output Data Points | Field | Description | Example | | :------------ | :---------------------------------- | :----------------------------------------------------------------------------------------------------- | | TweetMessage | AI-generated social media content | "Breaking: AI revolution transforming healthcare with 40% efficiency gains. New study shows promising results in patient care automation. #AI #Healthcare #Innovation #TechNews #US" | | TweetURL | Direct link to published tweet | https://twitter.com/i/web/status/1234567890123456789 | 🛠️ Setup Instructions Prerequisites: n8n instance (self-hosted or cloud) X (Twitter) account with API v2 access OpenAI account with GPT-4o access Gmail account for notifications Google account with Sheets access BrightData account with Google News dataset access Basic understanding of social media automation Step 1: Import the Workflow Copy the JSON workflow code from the provided file. In n8n, click "+ Add workflow". Select "Import from JSON". Paste the workflow code and click "Import". The workflow will appear with all nodes properly connected. Step 2: Configure API Credentials X (Twitter) API Setup: Create X Developer Account at developer.twitter.com. Create new app and generate API keys. In n8n: Credentials → + Add credential → Twitter OAuth2 API. Add your Twitter API credentials: API Key API Secret Key Bearer Token Access Token Access Token Secret Test the connection with a sample tweet. OpenAI API Configuration: Get API key from platform.openai.com. Ensure GPT-4o model access is available. In n8n: Credentials → + Add credential → OpenAI API. Add your OpenAI API key. Verify model access in the "OpenAI Chat Model" node. Gmail Integration: Create "Gmail OAuth2" credential. Follow OAuth setup process. Grant email sending permissions. Test with sample email. BrightData News API: The workflow uses pre-configured token: 5662edde-6735-4c5d-a6c6-693043a5a9a5. Dataset ID: gd_lnsxoxzi1omrwnka5r (Google News). Verify access to Google News dataset. Test API connection. Google Sheets Integration: Create "Google Sheets OAuth2 API" credential. Complete OAuth authentication. Grant read/write permissions. Test connection. Step 3: Configure Google Sheets Integration Create Google Sheets Structure: Sheet Name: "Publish Latest News on Social Media Platforms Using Keyword" Tab: "Data" (default) Columns: Tweet Message: AI-generated content posted to X Tweet URL: Direct link to published tweet Sheet Configuration: Create new Google Sheet or use existing one. Add the required column headers. Copy Sheet ID from URL: https://docs.google.com/spreadsheets/d/SHEET_ID_HERE/edit. Current configured Sheet ID: 1koxNrwdeuaSBdREuKc7JQh3d9blEk0sQDJ8VgVLjPOo. Update Workflow Settings: Open "Google Sheets" node. Replace Document ID with your Sheet ID. Select your Google Sheets credential. Choose "Data" sheet/tab. Verify column mapping is correct. Step 4: Configure Form Interface Form Settings: Open "On form submission" node. Form configuration: Title: "News Publisher" Description: "publish latest news to direct social media" Fields: News Name (text, required) Country (dropdown: US, IN, GB, AU, required) Webhook URL: Copy webhook URL from form trigger node. Current webhook ID: 8d320705-688c-4150-a393-cf899d2bbb52. Test form accessibility and submission. Step 5: Configure Email Notifications Gmail Setup: Open "Gmail" node. Update recipient email: raushan@iwantonlinemarketing.com. Email template includes: Success confirmation Direct tweet link Professional formatting Test email delivery. Step 6: Test the Workflow Sample Test Data: Use these examples for testing: | News Name | Country | Expected Results | | :-------------------- | :------ | :------------------------------------------------- | | artificial intelligence | US | Latest AI news with US-specific hashtags | | cricket world cup | IN | Sports news with India-focused content | | brexit update | GB | UK political news with British hashtags | | bushfire news | AU | Australian environmental news | Testing Process: Activate the workflow (toggle switch). Navigate to the webhook form URL. Submit test data. Monitor execution progress: News fetching (30-60 seconds) AI content generation (10-15 seconds) X publishing (5-10 seconds) Sheet update and email (5 seconds) Verify results in all platforms. 📖 Usage Guide Using the Form Interface Navigate to the webhook URL provided by the form trigger. Enter news keyword or topic (e.g., "climate change", "stock market", "technology"). Select target country from dropdown. Click submit and wait for processing. Check email for success notification with tweet link. Example Inputs to Test | News Name | Country | Expected | | :-------------------------------- | :------ | :----------------------------------------------------- | | "artificial intelligence breakthrough" | "US" | Latest AI developments with tech hashtags | | "football premier league" | "GB" | UK football news with sports hashtags | | "stock market updates" | "IN" | Indian market news with finance hashtags | | "hollywood movies" | "AU" | Entertainment news with Australian perspective | Country-Specific Considerations United States (US)**: Focus on national news and global impact. Hashtags: #USA, #American, #Breaking, #News. Time zone considerations for optimal posting. India (IN)**: Emphasis on regional relevance. Hashtags: #India, #Indian, #News, #Breaking. Cultural context in content generation. United Kingdom (GB)**: British perspective and terminology. Hashtags: #UK, #British, #News, #Breaking. Focus on European context. Australia (AU)**: Australian angle and regional focus. Hashtags: #Australia, #Australian, #News, #Breaking. Pacific region context. 📊 Reading the Results Google Sheets Data The output sheet contains: Complete tweet content with hashtags and formatting. Direct tweet URLs for easy access and sharing. Chronological record of all published content. Audit trail for content management. Email Notifications Success emails include: Confirmation that content was published. Direct link to view the tweet. Professional formatting for easy reference. X (Twitter) Posts Published content features: AI-optimized messaging within 260 character limit. Relevant hashtags based on topic and country. Engaging format designed for social media. Professional tone suitable for news sharing. 🔧 Customization Options Expanding Social Media Platforms Add more platforms to the publishing workflow: // Add LinkedIn publishing { "node": "LinkedIn", "type": "n8n-nodes-base.linkedin", "parameters": { "text": "={{ $json.output }}", "additionalFields": {} } } // Add Facebook posting { "node": "Facebook", "type": "n8n-nodes-base.facebook", "parameters": { "pageId": "YOUR_PAGE_ID", "message": "={{ $json.output }}" } }
by Davide
This workflow is designed to automate the generation and updating of SEO meta titles and descriptions for WooCommerce products using n8n. It leverages Google Sheets for data input, a FREE language model (Gemini 2.0 Flash Exp. via OpenRouter) for generating SEO-optimized meta tags, and WooCommerce for updating product details. How It Works: Trigger: The workflow can be triggered manually or on a schedule. The manual trigger allows for testing, while the schedule trigger can be set to run at regular intervals (e.g., every few minutes) to process new products. Data Retrieval: The workflow starts by retrieving product IDs from a Google Sheets document. It looks for products that do not yet have meta titles or descriptions. Using the retrieved product ID, the workflow fetches the corresponding product details from WooCommerce, including the product name, description, short description, and categories. Meta Tag Generation: The product details are passed to a language model (Gemini 2.0 Flash Exp) via OpenRouter. The model generates SEO-optimized meta titles and descriptions based on the provided content. The generated meta tags are structured and validated to ensure they meet SEO best practices, such as character limits and keyword inclusion. Update WooCommerce: The generated meta title and description are then updated in the WooCommerce product metadata using the Yoast SEO fields. Update Google Sheets: Finally, the workflow updates the Google Sheets document with the newly generated meta tags, along with the product URL, title, and the timestamp of the update. Set Up Steps: Google Sheets Setup: Create a copy of the provided Google Sheets template and insert WooCommerce product IDs in column "B". Ensure the Google Sheets document has columns for METATITLE, METADESCRIPTION, URL, TITLE POST, and DATA (timestamp). n8n Workflow Configuration: Google Sheets Node: Configure the "Get product ID" node to connect to your Google Sheets document. Use OAuth2 for authentication. WooCommerce Node: Set up the WooCommerce nodes to connect to your WooCommerce store using the WooCommerce API credentials. OpenRouter Node: Configure the "Gemini 2.0 Flash Exp" node with your OpenRouter API credentials to access the language model. Structured Output Parser: Ensure the output parser is set to handle the structured data format for meta titles and descriptions. Workflow Execution: Trigger the workflow manually to test the process or set up a schedule trigger to automate the workflow at regular intervals. Monitor the workflow execution to ensure that meta tags are generated and updated correctly in both WooCommerce and Google Sheets. Validation: After the workflow runs, verify that the meta titles and descriptions in WooCommerce are correctly updated and that the Google Sheets document reflects the changes. This workflow streamlines the process of optimizing WooCommerce product pages for SEO, saving time and ensuring consistency in meta tag generation. Need help customizing? Contact me for consulting and support or add me on Linkedin.
by Angel Menendez
Who is this for? This workflow is for professionals and teams who want to automate LinkedIn message replies with intelligent, human-like responses — without losing control over tone or accuracy. Ideal for founders, sales teams, DevRel, or community managers handling high-volume inbound messages. What problem is this workflow solving? Responding to every LinkedIn message manually is slow and inconsistent. Basic AI bots generate replies without context or nuance. This subworkflow solves both problems by using structured message routing from Notion and profile insights from UniPile to craft smart, context-aware responses. What this workflow does This workflow takes the sender’s message and profile (from LinkedIn Auto Message Router with Request Detection) and references your centralized Notion database of message types. It uses that to either match the message to a known response or generate a new one using OpenAI's GPT model — all while following professional tone guidelines. This is the third workflow in a 3-part automation system: Receives data from LinkedIn Auto Message Router with Request Detection Uses UniPile LinkedIn Profile Lookup Subworkflow to enrich responses based on follower count or org data Example Use Case If a message comes from someone with low reach (e.g., under 1,000 followers), the AI politely deflects a meeting request. If an influencer reaches out, the AI immediately offers a booking link. Your team controls this logic by updating the Notion database — no edits to the workflow required. Setup Connect this workflow as a subworkflow in your router or Slack approval flow Store your Notion API key and database ID in n8n Provide the following parent inputs: message – The LinkedIn message text sender – Name of the sender chatid – Session ID (optional for memory) linkedinprofile – Enriched array with LinkedIn context (follower count, connection info, etc.) Add your preferred AI model credentials (supports OpenAI, Gemini, or Ollama) Optional: Customize system prompt to better match your brand voice How to customize this workflow to your needs Update the Notion schema to include industry-specific categories or actions Change the AI tone (e.g., humorous, more corporate, etc.) Add conditional logic for auto-sending messages without Slack approval Extend to support multiple platforms (e.g., email, X/Twitter, Instagram DMs)
by Robert Breen
This n8n workflow reads emails from your Outlook inbox, drafts AI-powered replies using OpenAI, and routes them through the gotoHuman node for human approval before replying automatically. ✅ Key Features Reads Outlook emails** from today only (excluding those from your own address). AI-generated replies** crafted using OpenAI based on the subject and body of the email. Community node integration**: Uses the gotoHuman node for human review and approval of replies before sending. Safe sending**: Only approved responses are automatically sent back via Outlook. Expandable**: Can be easily modified to: Send drafts instead of full replies Include additional email filters Trigger at intervals or via webhook 🧠 Nodes Used Microsoft Outlook – Fetch and reply to emails OpenAI – Generates smart reply text gotoHuman – Human-in-the-loop approval system Loop Over Items, IF, Code, and Set nodes for processing logic Manual Trigger – For testing 🔧 Setup Instructions 1. Connect APIs Outlook OAuth2**: Go to Azure Portal Register an app Add Mail.Read, Mail.Send scopes Set redirect URI: https://api.n8n.cloud/oauth2-credential/callback Paste credentials in n8n credential manager OpenAI API**: Create account at OpenAI Create an API Key Add it to n8n credentials gotoHuman API**: Go to https://gotoHuman.ai and sign in Create a review template (e.g., “Email Responses”) Copy the Template ID and API key into n8n credentials 🪜 Workflow Steps Overview 1. Trigger Use the Manual Trigger to test or schedule execution with a cron node. 2. Filter Emails from Today A Code node outputs today's date in the proper yyyy-mm-dd format. const today = new Date(); today.setHours(0, 0, 0, 0); return [{ json: { searchQuery: received:${today.toISOString().split('T')[0]} } }]; 3. Search and Filter Outlook Messages Uses the Outlook node with a search query like: received:2025-08-06 -from:rbreen@ynteractive.com (Update to your email) 4. Generate AI Response Text prompt to OpenAI: subject: {{ $json.subject }} body: {{ $json.body.content }} System prompt: > You are a personal assistant helping respond to emails. I am an AI automation expert specializing in helping small and medium-size businesses automate processes. Create a short response to the email. Sign the email as Robert Breen. 5. Review with gotoHuman Submit AI output for human approval using the gotoHuman node. The output schema should match the Review Template fields (e.g., "email", "OriginalEmail"). 6. IF Node Decision If status is approved, send reply If not, return to loop for revision or skip ✏️ Customization Ideas ✉️ Send only drafts by skipping the "reply" step and storing results. 🕒 Schedule the workflow with a Cron trigger for automation. 🔎 Add label filters or subject keywords for advanced targeting. 🔗 External Links gotoHuman Community Node OpenAI Microsoft Outlook API Setup 💬 Need More Help? If you'd like help customizing this or building similar automations, reach out: Robert Breen AI & Automation Consultant 🌐 https://ynteractive.com 📧 robert.j.breen@gmail.com 🔗 LinkedIn
by WeblineIndia
Smart Document Parser for Invoices, Logs or Sensor Reports (PDF/Image to Google Sheets) This n8n workflow automatically parses documents such as invoices, sensor logs or structured PDFs/images (including scanned docs or CSVs), extracts key fields like totals, dates and customer/vendor info using OCR and AI, and writes the structured output into Google Sheets. Who’s it for Finance or Ops teams automating invoice processing. SaaS platforms parsing uploaded reports or documents. Anyone needing a no-code backend for PDF/image/CSV document parsing. AI-powered data capture pipelines. How it works Webhook Trigger receives file uploads (/uploadDoc) Switch Node checks the file type: If image → Use Tesseract OCR If PDF → Use PDF parser If CSV → Extract as-is Extracted text is passed to: Google Gemini or Gemini Flash AI model Prompt extracts fields like invoice_id, total, customer_name, etc. JSON string is parsed and cleaned Data is appended to Google Sheets using appendOrUpdate How to set up Create a Google Sheet with columns like: invoice_id, invoice_date, due_date, customer_name, vendor_name, subtotal, tax_total, total, currency Connect: Google Sheets OAuth Google Gemini (PaLM API key) for LLM parsing Deploy the webhook endpoint: /uploadDoc Upload sample files (PDFs, images, CSVs) to test Review and map sheet columns in the Invoice Data node Requirements | Tool | Purpose | | ------------- | --------------------------------- | | n8n | Automation framework | | Google Sheets | To store structured output | | Tesseract OCR | For scanned image text extraction | | Google Gemini | For natural language parsing | How to customize Add extraction for line items using structured prompts. Change prompt to extract sensor readings, log types, or custom keys. Add support for other file types (e.g., XLSX, DOCX). Add Slack/Email notifications on success/failure. Swap Gemini with OpenAI or Hugging Face if preferred. Add‑ons Save uploaded files to Google Drive or S3 Add auth for secure uploads Use charting/dashboard nodes to visualize extracted data Integrate with billing/accounting software Use Case Examples | Scenario | What Happens | | ----------------------- | ------------------------------------------------------- | | Invoice Upload (PDF) | Extracts totals, customer, tax data into a Google Sheet | | Scanned Receipt (Image) | OCR + LLM extracts structured data | | Log File (CSV) | Parses and logs entries into Sheets | Common troubleshooting | Issue | Possible Cause | Solution | | --------------------------------- | ----------------------- | ------------------------------------------- | | Webhook not triggered | URL or method mismatch | Use correct POST URL /uploadDoc | | Text is blank | OCR failed | Check image quality or Tesseract config | | Gemini model not returning JSON | Prompt formatting issue | Ensure prompt ends with valid JSON schema | | Sheet not updated | Invalid Sheet ID or tab | Double-check sheet credentials and tab name | Need Help? Need help fine-tuning the Gemini prompt for better field accuracy? Want to extract full tables, multi-page invoices or convert PDFs to JSON lines? Our automation team at WeblineIndia can help you extend this into a full-blown document automation pipeline.
by Trung Tran
SmartSupport Flow: Auto-Handle IT Requests from Email to JIRA with Slack notification Watch the demo video below: Who’s it for > This workflow is built for lean IT teams, office managers, and business operators who receive support requests via email and want to automate ticket creation, smart AI resolution advice, and seamless communication with both users and internal teams, all without lifting a finger. If your team is tired of manually triaging inbox requests, this AI-powered flow will transform your support handling process. How it works / What it does Trigger on New Email: Uses Gmail Trigger to detect new support request emails. Fetch Email Content: Retrieves the full message body and metadata. Check for Duplication: Skips processing if the email has already been handled (based on READ/UNREAD label). Mark as Read: Updates Gmail to mark the email as processed. Extract Structured Request: Uses the Support Request Reader Agent powered by OpenAI to extract: Request title Request description Requested by Department Category and priority Create Jira Ticket: A main issue is created in Jira using the structured request. Generate AI-Based Solution: Invokes the IT Support Advisor Agent to propose resolution(s). Post Comment to Jira: Adds the suggested solution(s) to the issue as a comment. Notify IT Team: Sends the ticket and context to a Slack channel for visibility and action. (Optional) Send Email to Requester: Currently deactivated. Can be enabled to acknowledge receipt. How to set up Gmail Integration Connect Gmail in the “Gmail Trigger” and “Get Email Content” nodes. OpenAI Configuration Use OpenAI API credentials in both the Reader and Advisor agent models. Jira Integration Authenticate your Jira account. Set project key and issue fields in the “Create Main Issue” node. Slack Notification Configure Slack connection and select a target channel. Set up Jira, Slack, Email Set your company Jira based URL, IT Support slack channel and IT Support email in the Edit Fields (Set) node (Optional) Email Acknowledgment Provide SendGrid credentials and email template in the “Send email to requester” node if re-enabled. Requirements Gmail API access with appropriate permissions OpenAI account with API access (for GPT-4 or GPT-3.5) Jira instance with project and permission to create/comment on issues Slack workspace and Webhook or OAuth setup n8n instance running with all above integrations configured How to customize the workflow Enhance Email Deduplication**: Adjust the deduplication logic to use message-id, threadId, or custom headers. Expand Reader Agent**: Configure the LLM to extract more details such as asset tags, urgency levels, or locations. Tailor Advisor Agent**: Adjust prompt to generate multiple solutions, troubleshooting guides, or internal references. Routing by Department**: Add logic to forward requests to different teams based on the request category or department. Enable Email Acknowledgment**: Activate and customize the email notification step to inform requesters that their issue is being handled.
by Atta
What it does Customer support calls contain a wealth of valuable feedback and urgent issues, but manually reviewing audio files is inefficient. This workflow acts as an AI assistant for your call log, transforming unstructured audio recordings into structured, actionable data. It provides a clean summary, sentiment analysis, and a list of required actions for every call, eliminating the need for manual listening and ensuring key insights are never missed. How it works The workflow runs on a schedule to fully automate the call analysis process from start to finish. Fetch New Recordings: The workflow triggers on a schedule (e.g., every 5 minutes), searches a designated Google Drive folder for new call recordings, and downloads any new files it finds. Transcribe Audio: Each audio file is sent to the ElevenLabs API to be converted from speech to a text transcript. The result is then formatted into a conversational, multi-speaker format. AI-Powered Analysis: The transcript is passed to a Google Gemini node, which is prompted to return a structured JSON object. This JSON contains a complete analysis of the call, including speaker identification (agent_name, client_name), a summary, the client_sentiment, a call_topic, a department_tag, and a list of action_items. Log the Results: The complete, structured analysis output from Gemini is appended as a new row in a Google Sheet, creating a centralized log with all the extracted call details and the full transcript. Take Action: The workflow uses conditional logic based on the detected sentiment: Negative Sentiment: If a call was negative, an immediate alert containing the call summary and action items is sent to a manager's group on Telegram. Positive Sentiment: If a call was positive, a kudos message is sent to the support team's Telegram channel to celebrate good work. File Management: After processing, the original audio file is automatically moved to a separate "Processed" folder in Google Drive to ensure it isn’t analyzed again. Setup Instructions To configure this workflow, you will need to set up your file storage in Google Drive, create a Google Sheet for logging, and configure credentials for all connected services. Required Credentials Google: You will need Google OAuth2 credentials that have permission for Google Drive, Google Sheets, and the Google AI (Gemini) APIs. ElevenLabs: Sign up for an account at ElevenLabs and get your API Key. You will add this directly into the HTTP Request node for transcription. Telegram: Create a bot using the BotFather in Telegram to get your Bot Token. You will also need the specific Chat ID for the managers' channel and the team's channel. Step-by-Step Configuration Google Drive: Create two folders in your Google Drive: one named "Company - Support Call Recordings" and another named "Processed Recordings". Copy the unique Folder ID from the URL for each and paste it into the respective Google Drive nodes. Google Sheets: Create a new Google Sheet to log the results. In the first row, create the following headers exactly as written: Recording File, Sentiment, Department, Topic, Agent, Client, Summary, Actions, and Fulltext. Copy the Sheet ID from the URL and paste it into the "Log Recording Analysis" (Google Sheets) node. ElevenLabs Node: In the "Convert Speech To Text" (HTTP Request) node, make sure the URL is set to the correct ElevenLabs API endpoint for speech-to-text. Add your ElevenLabs API Key to the authentication header. Telegram Nodes: In the "Send Alert To Managers" node, enter the Chat ID for your managers' group. In the "Send Kudos to Team" node, enter the Chat ID for the main team channel. How to Adapt the Template This workflow is a powerful starting point. Based on your specific needs, you can customize the inputs, the AI analysis, the logging method, and the final actions. Input Method Change File Source:* Instead of Google Drive, you can adapt the workflow to fetch recordings from other services like *Dropbox, **OneDrive, or a custom FTP server. Use a Webhook:* Replace the *Schedule Trigger* with a *Webhook Trigger** to process calls in real-time as they are added from your call software (if it supports webhooks). Final Actions Create Service Tickets:* This is a key area for customization. Replace the *Telegram* nodes with nodes for ticketing systems. For a negative call, you can automatically create a high-priority ticket in *Jira, **Zendesk, or ServiceNow. Create Tasks:* For calls with specific action items, use a node like *Asana, **Trello, or Todoist to automatically create a task and assign it to the correct team member. Send Email Notifications:* Use the *Send Email** node to dispatch summaries and alerts to stakeholders who are not on Telegram. Logging and Analysis Log to a Database:* Instead of Google Sheets, you can use a *Postgres, **MySQL, or Data Warehouse node to log the structured data for more advanced business intelligence and dashboarding. Customize the AI Prompt:** The prompt in the Google Gemini node is the "brain" of the operation. It specifically instructs the AI to return a JSON object with a predefined structure. To change what data is extracted, you can modify this structure in the prompt. For example, you could add a new key-value pair like "competitor_mentioned": "Name of competitor if mentioned, otherwise null" to the JSON structure. The current workflow asks the AI to populate a JSON object like this: { "speaker_identification": { "agent": "speaker_id", "agent_name": "The agent's name", "client": "client_id", "client_name": "The client's name" }, "summary": "A concise summary.", "client_sentiment": "Positive, Negative, or Neutral", "call_topic": "A brief phrase for the topic.", "department_tag": "The most relevant department.", "action_items": [ "A list of actionable tasks." ] } Change AI or STT Service:* You can swap out the *Google Gemini* node for an *OpenAI* node, or change the *HTTP Request* node to use a different transcription service like *AssemblyAI* or *Deepgram**.
by Md Sabirul Islam
🦷 Dental Clinic Appointment Booking System (n8n) This project is an automated appointment booking system for a dental clinic, built using #n8n. It helps streamline clinic operations by checking availability, creating events in Google Calendar, and sending email notifications to both the doctor and the patient. ✨ Features ✅ Check available slots before booking ✅ Create event in Google Calendar after patient confirmation ✅ Send email notification to the Doctor with appointment details ✅ Send email confirmation to the Patient with their booking details ✅ Unique Appointment ID generation for every booking 🚀 Live Demo https://devsabirul.github.io/Dental-Clinic-Receptionist-N8n/ 🛠 Tech Used n8n.io (Automation Platform) Google Calendar API (Manage bookings) SMTP / Gmail (Send email notifications) 📂 Workflow Setup Import Workflow JSON In n8n, go to Workflows → Import from File. Set Credentials Configure Google Calendar API Credentials in n8n. Configure Email SMTP / Gmail Credentials for sending emails. Update Clinic Info Replace placeholder Doctor’s email with the real email. Customize messages (email subject, body). 📧 Example Email Sent To Doctor: New Appointment Booked Patient: John Doe Phone: +123456789 Email: john@example.com Date: 31st August 2025 Time: 2:15 PM Appointment ID: APT-20250831-ABCD12 To Patient: Hello John Doe, Your appointment has been successfully booked. 📅 Date: 31st August 2025 🕒 Time: 2:15 PM 📍 Appointment ID: APT-20250831-ABCD12 Thank you, Dental Clinic 📌 Tags #n8n #automation #dentalclinic #calendar #appointment 🙌 Author 👨💻 Developed by MD Sabirul Islam
by Kaden Reese
SignSnapHome to Multi-CRM Auto Follow-up: Complete Real Estate Open House Automation Transform Your Open House Leads into Clients with Zero Manual Work Are you tired of manually entering open house visitor information into your CRM? Losing hot leads because you didn't follow up fast enough? This powerful n8n workflow automatically syncs every SignSnapHome open house sign-in to three major real estate CRMs and executes a customizeable 7-day follow-up sequence via email and SMS. Setup Video Here 🎯 What This Workflow Does This automation creates a complete, hands-free lead nurturing system for real estate agents using SignSnap Home for open house visitor management. Every time someone signs in at your open house, this workflow: Instantly captures all visitor data from SignSnap Home via webhook Intelligently scores each lead based on agent status and property interest Automatically syncs contact information to three CRMs simultaneously: HubSpot - For marketing automation and pipeline management Follow Up Boss - For real estate-specific lead management Monday.com - For team collaboration and task tracking Logs everything to Google Sheets for complete audit trail and reporting Sends personalized follow-ups over 7 days for qualified leads: Day 0: Immediate thank you email Day 2: SMS text message check-in Day 5: Market update email with consultation offer Day 7: Automatic task created in HubSpot for agent to call 🔥 Key Features Smart Lead Qualification Not all open house visitors are equal. This workflow automatically identifies qualified leads who receive the full follow-up sequence: ✅ Visitors who don't currently have a real estate agent ✅ Visitors who have an agent but haven't signed a buyer agreement Leads who already have representation get the basic treatment (thank you email + CRM sync) to respect existing relationships while still capturing their information for future opportunities. Multi-CRM Distribution Why limit yourself to one CRM? This workflow syncs to three platforms simultaneously: HubSpot**: Creates/updates contacts with full lead scoring and property visit history Follow Up Boss**: Adds leads with source attribution and detailed notes Monday.com**: Creates board items for team visibility and collaboration Complete Activity Tracking Every touchpoint is logged to Google Sheets across three tabs: Lead Master Log**: Complete record of every visitor with lead scores and qualification status Follow-up Activity**: Timestamp of every email, SMS, and task created Errors**: Captures any visitors without email addresses for manual follow-up TCPA-Compliant SMS Follow-up Automated SMS messaging via Twilio includes: Proper consent tracking (via open house sign-in) "Reply STOP to unsubscribe" compliance footer Personalized messaging based on agent status Complete activity logging for audit trail 💼 Perfect For Real Estate Agents** using SignSnap Home for open house management Real Estate Teams** who need centralized lead tracking across multiple CRMs Brokerages** wanting to standardize follow-up processes across agents Property Marketing Teams** managing multiple open houses simultaneously 🛠️ What You'll Need Required Accounts & Credentials: SignSnapHome account with webhook integration enabled HubSpot account (Free or paid tier) with API access Follow Up Boss account with API key Monday.com account with API token Twilio account with SMS-enabled phone number SMTP Email service (Gmail, SendGrid, etc.) Google Sheets with OAuth2 access Technical Requirements: Active n8n instance (cloud or self-hosted) Basic familiarity with n8n workflows 30 minutes for initial setup and credential configuration 📊 Lead Scoring Algorithm This workflow includes intelligent lead scoring to help you prioritize follow-up: Base Score: 50 points Scoring Adjustments: No real estate agent: +30 points (HOT lead!) Property rating 4-5 stars: +20 points Property rating 1-2 stars: -20 points No buyer agreement signed: +10 points Lead Status Categories: 70-100 points**: HOT 🔥 50-69 points**: WARM 40-49 points**: OPEN 0-39 points**: COLD The Day 7 follow-up task is automatically prioritized as HIGH for leads scoring 70+ points. 🚀 Setup Overview Step 1: Import Workflow Download this workflow JSON and import it into your n8n instance. Step 2: Configure Credentials Set up authentication for all seven services: HubSpot OAuth2 or API Token Follow Up Boss HTTP Basic Auth (API key as username) Monday.com API Token Twilio API credentials SMTP email settings Google Sheets OAuth2 Step 3: Create Google Sheets Structure Create one Google Sheet with three tabs: Tab 1: "Lead Master Log" Timestamp First Name Last Name Email Phone Property Lead Score Lead Status Has Agent Buyer Agreement Qualifies for Follow-up Source Tab 2: "Follow-up Activity" Timestamp Contact Email Contact Name Activity Type Message Property Success Notes Tab 3: "Errors" Timestamp Guest Name Property Phone Error Reason Step 4: Update Placeholders Replace these values in the workflow nodes: YOUR_GOOGLE_SHEET_ID_HERE - Your Google Sheet ID (or select manually) YOUR_EMAIL@DOMAIN.COM - Your from email address YOUR_TWILIO_PHONE_NUMBER - Your Twilio phone number (format: +15551234567) YOUR_MONDAY_BOARD_ID - Your Monday.com board ID Step 5: Configure SignSnap Home Activate the workflow in n8n Copy the webhook URL Go to SignSnapHome.com → Settings → Integrations Paste webhook URL and enable "Send on each submission" Step 6: Test! Have someone sign in at your next open house (or use test mode) and watch the magic happen! 📈 Expected Results Time Savings: 15-20 minutes per open house visitor (data entry, CRM updates, follow-up scheduling) Response Rate Improvements: Immediate thank you email: Builds rapport instantly Day 2 SMS: 98% open rate (vs 20-30% for email) Day 5 market update: Re-engages interested prospects Day 7 agent call task: Ensures no lead falls through cracks, make sure you set up your crm or change this to a simple notification node. Conversion Rate Impact: Many agents report 2-3x increase in open house visitor conversions with automated follow-up vs manual processes. 🎨 Customization Ideas This workflow is designed to be easily customizable: Adjust Follow-up Timing Change Wait node durations (Day 2 → Day 1, Day 5 → Day 3, etc.) Add more touchpoints (Day 10, Day 30, Day 90) Remove SMS and use email-only sequence Modify Lead Scoring Edit the JavaScript code in "Parse SignSnap Data" node Add new scoring criteria (property price range, visit duration, etc.) Change threshold values for HOT/WARM/COLD status Expand CRM Coverage Add Salesforce using HTTP Request node Include Pipedrive (native node available) Connect Zoho CRM (native node available) Add your brokerage's proprietary CRM via API Enhance Email Content Add property photos and listing details Include market statistics and neighborhood data Embed video tours or agent introduction videos Add social proof (testimonials, recent sales) Create Property-Specific Sequences Use IF nodes to branch by property address Send different messaging per listing Customize follow-up based on price range Include neighborhood-specific content 🔐 Compliance & Privacy This workflow is designed with real estate compliance in mind: TCPA Compliance (SMS): Consent established via open house sign-in "Reply STOP to unsubscribe" included in all messages Complete activity logging for audit trail Business relationship already established CAN-SPAM Compliance (Email): Easy unsubscribe mechanism Clear sender identification Accurate subject lines Business address included Data Privacy: No data stored in n8n workflow memory All data passed through encrypted connections CRM platforms handle data retention per their policies Google Sheets can be restricted to specific users 🆘 Troubleshooting "No email address" errors Make email required in SignSnap Home form settings Check "Errors" tab in Google Sheet for missed leads Follow up manually via phone using logged information CRM sync failures Verify all API credentials are current and not expired Check API rate limits (especially HubSpot free tier) Review execution logs in n8n for specific error messages SMS not sending Confirm Twilio account has sufficient balance Verify phone number format: +1XXXXXXXXXX (E.164 format) Check that recipient's country allows SMS from your Twilio number Ensure phone number was captured in SignSnap Home Wait nodes not resuming Confirm workflow is ACTIVE (not just saved) Check n8n queue system is running properly Verify execution mode settings allow waiting executions 📚 Additional Resources SignSnap Home: Website: https://signsnaphome.com Documentation: Contact SignSnap Home support Webhook setup guide: Available in app settings n8n Documentation: Webhook nodes: https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.webhook/ Wait node: https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.wait/ Code node: https://docs.n8n.io/code-examples/ CRM API Documentation: HubSpot: https://developers.hubspot.com/ Follow Up Boss: https://docs.followupboss.com/ Monday.com: https://developer.monday.com/ 🌟 Success Story "Before this automation, I was spending 30+ minutes after every open house manually entering contacts into HubSpot, then setting reminders to follow up. Now it's completely hands-free. The SMS follow-up on Day 2 alone has doubled my response rate. Best workflow I've ever implemented!" 🚦 Next Steps Download this workflow from the n8n Creator Hub Import into your n8n instance Follow the setup guide in the sticky notes Test with a sample submission before your next open house Monitor results in your Google Sheets activity log Customize and optimize based on your response rates 💡 Pro Tips A/B test your messaging**: Duplicate the workflow and test different email subject lines or SMS wording Track conversion rates**: Add a "Converted" column to your Google Sheet and update it when leads become clients Segment by property**: Use IF nodes to send different follow-up sequences for luxury vs starter homes Add social media enrichment**: Connect Clearbit or Hunter.io to automatically find LinkedIn profiles Create dashboard reports**: Connect Google Sheets to Data Studio for visual analytics 📞 Support For workflow-specific questions, please comment on this workflow in the n8n Creator Hub. For SignSnap Home account issues, contact SignSnap Home support directly. For CRM-specific questions, consult each platform's documentation linked above. 🏷️ Tags real-estate open-house crm-automation lead-nurturing sms-marketing email-automation hubspot follow-up-boss monday.com twilio google-sheets webhook multi-crm lead-scoring signsnap-home Version: 1.0 Last Updated: January 2025 Compatibility: n8n v1.0+ License: MIT Built with ❤️ for the real estate community. Questions or improvements? Drop a comment below!
by David Olusola
Overview: GitHub to WordPress Tutorial Generator This workflow automates the process of creating technical tutorials for your blog. It runs on a weekly schedule, automatically identifies trending GitHub repositories, uses an AI to generate a detailed tutorial for each one, and then saves the content as a draft post on your WordPress site. Finally, it sends you an email notification so you can review and publish the new content. This is an excellent way to keep your blog fresh with relevant, trending topics without manual effort. How It Works Weekly Trigger: The workflow is set to activate every Monday at 10 AM, starting the entire process. Get Trending Repositories: The workflow makes an HTTP request to the GitHub API to find the most popular repositories. Split Items: The Split node processes the list of repositories from the GitHub API, handling each one as a separate item. This ensures that a unique tutorial is created for every trending repository. AI Tutorial Generation: The AI Tutorial Generator node, powered by the Google Gemini Chat Model, takes the information for each repository and, following a detailed prompt, creates a comprehensive tutorial. The prompt instructs the AI to include an introduction, prerequisites, code examples, best practices, and more. Format Content: A Code node then processes the AI's output. It extracts the title and content, ensuring the data is correctly formatted for the next steps. It's a key step to handle potential variations in the AI's output. Create WordPress Post: The WordPress node takes the formatted tutorial content and creates a new post on your blog, automatically setting the title, tags, and categories. It's saved as a draft, allowing you to review and edit it before publishing. Send Notification: Once the post is created, the Email node sends a notification to your email address, letting you know a new tutorial is ready for your review. Setup Steps Configure WordPress Credentials: In the Create Tutorial Post node, add your WordPress credentials. This includes your site URL, username, and application password. Set Up Email Credentials: In the Notify Admin node, add your email service credentials (e.g., SMTP, Gmail) to enable sending email notifications. Configure GitHub API Access: Manual Mapping: Run the Get Trending Repos node once to get sample data. In the Split Repository Items node, manually map the data by setting the "Field to Split Out" to json.items. This tells the workflow to process each repository in the API response. Optional: For higher API limits, you can create a GitHub Personal Access Token and configure the Get Trending Repos node to use it. Review AI Prompt: Go to the AI Tutorial Generator node and read the system message. You can adjust the prompt to change the style, length, or content of the tutorials the AI generates.