by PollupAI
Who is this for This workflow is designed for Customer Success Managers and Sales Teams who manage high-volume pipelines in HubSpot. If you have prospects who stop responding after the contract is sent, this automation helps you recover them without manual follow-up. What it does This template automatically identifies deals that have "stalled" in your pipeline (specifically in the Contract Sent stage) and initiates a personalized re-engagement sequence. Monitors Pipeline: Runs on a schedule to find deals marked as stalled in HubSpot. Smart Filtering: Identifies all associated contacts for a deal and selects the first available contact. This ensures the email goes to a real person involved in the deal. Spam Prevention: Fetches the Last Contacted date from HubSpot. If there has been any activity (call, email, meeting) in the last 7 days, the workflow skips that contact. This safety gate prevents automation from interfering with active conversations. AI Personalization: Uses GPT-5-mini (via OpenAI) to generate a helpful check-in email. The prompt is context-aware, using the contact's name and deal stage to sound personal rather than generic. Multi-Channel Sync: Sends the approved email via Gmail, alerts the internal team in Slack, and logs the email body to the HubSpot Activity Timeline. How to set up Credentials: Connect your HubSpot, OpenAI, Slack, and Gmail accounts in n8n. Configuration: Open the Config: Setup Variables node and enter your Sender Name, Company Name, and Calendar Link. Slack Channel: Open the Slack: Notify CSM node and select the channel where you want your team to be alerted (e.g., #sales-alerts). HubSpot Settings: By default, this targets the contractsent stage. Ensure your HubSpot pipeline matches this ID. Requirements n8n** (Cloud or Self-hosted) HubSpot** account OpenAI** API Key Gmail* & *Slack** accounts How to customize the workflow Target Different Stages: To re-engage leads in other phases (e.g., "Qualification" or "Onboarding"), open the **HubSpot: Search Stalled Deals node and change the dealstage filter to your desired pipeline stage ID. Adjust the Safety Gate: The workflow blocks emails if there has been contact in the last **7 days. To change this window (e.g., to 30 days for cold leads), open the Filter: Last Activity Check node and edit the time value in the expression. Modify the AI Persona: Open the **AI: Generate Email node to edit the System Prompt. You can adjust the tone (formal vs. casual), lengths constraints, or language to match your brand voice.
by Țugui Dragoș
This workflow is a comprehensive, production-grade automation for B2B lead management and multichannel outreach, designed for Sales Development Representatives (SDRs), growth teams, and sales operations. It covers the entire SDR pipeline: from lead ingestion and validation, through enrichment, scoring, AI-powered outreach, reply handling, analytics, and reporting. Key Features: Lead validation (email, suppression, geo/GDPR) Multi-source data enrichment Lead scoring and tiering (HIGH/MEDIUM/LOW) AI-generated personalized cold emails (with A/B subject testing) Multichannel outreach (Email, LinkedIn, WhatsApp) with rate limiting and compliance AI-based reply simulation and intent classification Automated routing (qualification, follow-up, manual review) Full event logging to database Aggregated analytics and daily reporting Human-readable AI summary and Slack notifications What This Workflow Does 1. Lead Ingestion & Validation Loads leads from a source (test data, CRM, webhook, etc.) Validates email format and checks against suppression lists (blocked domains/emails) Applies geo and GDPR compliance logic (blocks/flags leads from restricted countries) 2. Data Enrichment Enriches each lead via one or more external APIs (company info, tech stack, revenue, etc.) Handles enrichment failures gracefully and logs them for analytics 3. Lead Scoring & Segmentation Scores leads based on industry, country, company size, revenue, and pain points Segments leads into HIGH, MEDIUM, or LOW tiers for tailored outreach 4. AI-Powered Outreach Generation Uses OpenAI (or compatible LLM) to generate personalized cold email content Creates A/B tested subject lines for each email Generates LinkedIn and WhatsApp message variants for multichannel outreach 5. Multichannel Outreach Execution Sends emails via SMTP (with rate limiting and quiet hours) Simulates LinkedIn and WhatsApp sends (can be replaced with real integrations) Logs all outreach events to a Postgres database 6. Reply Simulation & AI Classification Simulates a variety of lead replies (interested, not interested, follow-up, unclear) Uses AI to classify reply intent and suggest next actions 7. Automated Routing & Follow-up Routes leads based on AI classification: Interested: Schedules meeting, logs qualification, proposes follow-up Follow-up Later: Schedules future follow-up Not Interested: Marks as closed/lost Unclear: Flags for manual review and notifies team via Slack 8. Event Logging & Analytics Logs every significant event (enrichment, outreach, reply, status change) to a database Aggregates results by lead score, channel, and status Calculates key metrics (qualification rate, enrichment success, multichannel rate, etc.) 9. Reporting & Team Notification Generates a daily analytics row and stores it in the database Uses AI to create a human-readable summary of the run Posts a detailed summary to a Slack channel Use Cases Automated SDR Workflows:** Replace manual lead research, outreach, and follow-up with a fully automated, auditable process. Growth Experiments:** Run A/B tests on messaging, subject lines, and channels at scale. Sales Analytics:** Get transparent, granular reporting on every step of the SDR funnel. Compliance-First Outreach:** Ensure all outreach respects geo, GDPR, and suppression rules. AI-Driven Personalization:** Use LLMs to generate highly relevant, non-generic outreach at scale. Installation & Setup 1. Import the Workflow Download or copy the workflow from the n8n Template Store. In your n8n editor, click Import and paste the workflow JSON, or use the "Use Template" button. 2. Configure Required Credentials Postgres:** Set up a Postgres credential for event and analytics logging. SMTP:** Add your email provider's SMTP credentials for sending emails. OpenAI:** Add your OpenAI API key for AI-powered nodes. Slack:** Add your Slack API credential for notifications. Enrichment APIs:** Add credentials for any external enrichment APIs you use. 3. Customize Lead Source Replace the test data in the Load Test Leads node with your real lead source (e.g., webhook, CRM, Google Sheets, etc.). 4. Adjust Compliance & Suppression Logic Update the suppression lists and geo/GDPR logic in the relevant nodes to match your organization's requirements. 5. Review Multichannel Logic The workflow simulates LinkedIn and WhatsApp sends. Replace these with real integrations if needed. 6. Database Preparation Ensure your Postgres database has the following tables (or adjust node configs): lead_events (for all event logs) analytics_daily (for daily summary rows) meetings (for scheduled meetings) execution_runs (for workflow run metadata) 7. Test the Workflow Run the workflow manually with sample data. Check the database and Slack for logs and notifications. Review AI-generated content for tone and compliance. Configuration Details Rate Limiting:** Email, LinkedIn, and WhatsApp sends are rate-limited and respect quiet hours. A/B Testing:** Each email uses a randomly selected subject variant for ongoing optimization. AI Models:** Uses OpenAI GPT-4o-mini by default; can be swapped for other models. Event Logging:** Every action (enrichment, outreach, reply, status change) is logged with timestamp and payload for full traceability. Analytics:** Aggregates by lead score, channel, and status; calculates rates and averages. Slack Notifications:** Posts a summary of each run, including key metrics and AI-generated insights. Advanced Customization Add/Replace Enrichment APIs:** Plug in any HTTP-based enrichment service. Custom Lead Scoring:** Adjust the scoring logic in the Compute Lead Score node to fit your ICP. Custom AI Prompts:** Edit the system messages in AI nodes for your brand voice. Additional Channels:** Integrate SMS, phone, or other channels as needed. Webhook Triggers:** Replace manual trigger with webhook for real-time automation. Requirements n8n version 1.123.0 or later Postgres database (or adapt for your DB) SMTP email provider OpenAI API key (or compatible LLM) Slack workspace (for notifications) (Optional) Enrichment API keys Template Store Submission Notes All credentials are handled via n8n's credential system (no hardcoded secrets). The workflow is modular, well-commented, and ready for production use. All event and analytics logging is auditable and GDPR-compliant. Please review and test all integrations in your environment before using in production. Example Analytics Output | Metric | Value | |-----------------------|---------| | Total Leads | 100 | | Qualified | 22 | | Follow-up Scheduled | 15 | | Closed Lost | 40 | | Manual Review | 3 | | Qualification Rate | 22% | | Enrichment Success | 90% | | Multichannel Rate | 60% | Ready to automate your SDR pipeline? Import this workflow and start scaling your B2B outreach today!
by 荒城直也
Workflow Overview Zoom Attendance Evaluator with Follow-up is an n8n automation workflow that automatically evaluates Zoom meeting attendance and sends follow-up emails to no-shows and early leavers with recordings and materials. Who's it for Companies and organizations that regularly host online seminars and webinars Educational institutions conducting online classes Anyone looking to streamline participant attendance management and follow-up processes How it works Scheduled execution: Runs automatically every hour Fetch meeting data: Retrieves recent Zoom meetings and participant information Evaluate attendance: Automatically classifies participants into four categories: No-show: 0 minutes attended Early-leaver: Less than 50% attendance Partial attendance: 50-80% attendance Full attendance: Over 80% attendance Automatic follow-up: Sends automated emails with recording links and materials to no-shows and early leavers Record keeping: Logs all follow-ups to Google Sheets for tracking Requirements Zoom account: OAuth2 authentication setup required SMTP email server: Configuration needed (Gmail, SendGrid, etc.) Google Drive: For storing handout materials Google Sheets: For attendance logging Credentials for each service configured in n8n How to customize the workflow Adjust attendance thresholds: Modify the 50% and 80% values in the "Evaluate Attendance" node code Change execution frequency: Configure the time interval in the "Schedule Trigger" node Customize email template: Edit subject and body in the "Prepare Email Data" node Next session registration link: Replace the placeholder URL in the code with your actual registration link This workflow completely automates post-meeting follow-up tasks, helping improve participant engagement and reduce manual work.
by Stefan Joulien
How it works A prospect submits a form with their email and website URL The workflow fetches and cleans the website HTML, extracting key business signals An Analyst Agent reads the content and produces a structured JSON diagnostic (business type, offers, pain points, funnels, copy kit) A Writer Agent converts the diagnostic into a personalised email with 10 actionable improvements, written automatically in the lead's language A branded HTML email is assembled and sent via Gmail with numbered improvement cards, a booking CTA and a professional footer Set up steps Connect your OpenAI API credentials to both AI model nodes (~2 min) Connect your Gmail account to the Send Email node (~1 min) Open the Build Email HTML node and fill in the 6 constants at the top: your name, email, cal.com booking link, Instagram URL, LinkedIn URL and logo image URL (~3 min) Activate the workflow and share the form URL with your leads
by Aslamul Fikri Alfirdausi
This n8n template demonstrates how to build O'Carla, an advanced all-in-one Discord AI assistant. It intelligently handles natural conversations, professional image generation, and visual file analysis within a single server integration. Use cases are many: Deploy a smart community manager that remembers past interactions, an on-demand artistic tool for your members, or an AI that can "read" and explain uploaded documents and images! Good to know API Costs:** Each interaction costs vary depending on the model used (Gemini vs. OpenRouter). Check your provider's dashboard for updated pricing. Infrastructure:* This workflow requires a separate Discord bot script (e.g., Node.js) to forward events to the n8n Webhook. It is recommended to host the bot using *PM2** for 24/7 uptime. How it works Webhook Trigger: Receives incoming data (text and attachments) from your Discord bot. Intent Routing: The workflow uses conditional logic to detect if the user wants an image (via keyword gambar:), a vision analysis (via attachments), or a standard chat. Multi-Model Intelligence: Gemini 2.5: Powers rapid and high-quality general chat reasoning. Llama 3.2 Vision (via OpenRouter): Specifically used to describe and analyze images or text-based files. Flux (via Pollinations): Uses a specialized AI Agent to refine prompts and generate professional-grade images. Contextual Memory: A 50-message buffer window ensures O'Carla maintains the context of your conversation based on your Discord User ID. Clean UI Output: Generated image links are automatically shortened via TinyURL to keep the Discord chat interface tidy. How to use Connect your Google Gemini and OpenRouter API keys in the respective nodes. Replace the Webhook URL in your bot script with this workflow's Production Webhook URL. Type gambar: [your prompt] in Discord to generate images. Upload an image or file to Discord to trigger the AI Vision analysis. Requirements n8n instance (Self-hosted or Cloud). Google Gemini API Key. OpenRouter API Key. Discord Bot Token and hosting environment. Customising this workflow O'Carla is highly flexible. You can change her personality by modifying the System Message in the Agent nodes, adjust the memory window length, or swap the LLM models to specialized ones like Claude 3.5 or GPT-4o.
by Avkash Kakdiya
How it works This workflow automatically generates and sends personalized sales proposals when a new row is added to Google Sheets. It uses AI to create proposal content, updates contact details in HubSpot, and generates a formatted document. The document is converted into a PDF and emailed to the client. This eliminates manual proposal writing and ensures fast, consistent delivery. Step-by-step Capture lead and generate AI content** Google Sheets Trigger – Detects new form submissions in your sheet. Loop Over Items – Processes each new entry individually. Message a model – Uses Gemini AI to generate the proposal content. Code in JavaScript – Cleans and splits AI output into structured fields. Create contact and generate document** Create or update a contact – Stores or updates client data in HubSpot. Copy file – Duplicates a proposal template from Google Drive. Update a document – Replaces placeholders with real client and AI data. Download file – Converts the final document into a PDF file. Send proposal to client** Send a message – Emails the generated PDF proposal to the client. Why use this? Automatically generates professional proposals without manual writing Ensures consistent formatting using templates and placeholders Saves time by combining CRM, AI, and document creation Improves response speed for leads and increases conversion chances Scales easily for handling multiple client requests simultaneously
by Databox
Stop spending hours manually pulling paid ads data. This workflow connects to Databox via MCP, auto-discovers every connected paid platform, fetches 6 key metrics, and delivers a consolidated weekly report to Slack and email - every Monday at 9 AM, completely hands-free. Who's it for Performance marketers** managing campaigns across multiple platforms Marketing managers** who need a weekly cross-platform overview Agencies** automating paid ads reporting for clients How it works Schedule Trigger fires every Monday at 9 AM AI Agent connects to Databox via MCP and discovers all connected paid platforms (Google Ads, Facebook Ads, LinkedIn Ads, TikTok Ads, and 6 more) Fetches Spend, Clicks, CPC, CTR, Impressions, and Conversions for this week and last week Calculates week-over-week changes and formats two outputs - a Slack summary and a color-coded HTML email Delivers both simultaneously Requirements Databox account** with at least one paid ads platform connected (free plan works) OpenAI API key (or Anthropic) Slack account Gmail account How to set up Click Databox MCP Tool - set Authentication to OAuth2 and authorize Add your OpenAI API key to the Chat Model node Connect Slack and update the channel ID in the Send to Slack node Connect Gmail and set the recipient address in the Send Email node Activate - your first report arrives next Monday
by PDF Vector
This workflow contains community nodes that are only compatible with the self-hosted version of n8n. Intelligent Document Monitoring and Alert System This workflow creates an automated monitoring system that watches for new PDF reports across multiple sources, extracts key insights using AI, and sends formatted alerts to your team via Slack or email. By combining PDF Vector's parsing capabilities with GPT-powered analysis, teams can stay informed about critical documents without manual review, ensuring important information never gets missed. Target Audience & Problem Solved This template is designed for: Finance teams** monitoring quarterly reports and regulatory filings Compliance officers** tracking policy updates and audit reports Research departments** alerting on new publications and preprints Operations teams** monitoring supplier reports and KPI documents Executive assistants** summarizing board materials and briefings It solves the problem of information overload by automatically processing incoming documents, extracting only the most relevant insights, and delivering them in digestible formats to the right people at the right time. Prerequisites n8n instance with PDF Vector node installed PDF Vector API credentials with parsing capabilities OpenAI API key for insight extraction Slack workspace admin access (for Slack alerts) SMTP credentials (for email alerts) FTP/Cloud storage access for document sources Minimum 50 API credits for continuous monitoring Step-by-Step Setup Instructions Configure Document Sources Set up FTP credentials in n8n for folder monitoring Or configure Google Drive/Dropbox integration Define the folder paths to monitor Set file naming patterns to watch (e.g., "report.pdf") Set Up API Integrations Add PDF Vector credentials in n8n Configure OpenAI credentials with appropriate model access Set up Slack app and add webhook URL Configure SMTP settings for email alerts Configure Monitoring Schedule Open the "Check Every 15 Minutes" node Adjust frequency based on your needs: // For hourly checks: "interval": 60 // For real-time monitoring (every 5 min): "interval": 5 Customize Alert Channels Slack Setup: Create dedicated channels (#reports, #alerts) Configure webhook for each channel Set up user mentions for urgent alerts Email Setup: Define recipient lists by document type Configure email templates Set up priority levels for subject lines Define Alert Rules Modify the "Extract Key Insights" prompt for your domain Set conditions for high-priority alerts Configure which metrics trigger notifications Define sentiment thresholds Implementation Details The workflow implements a comprehensive monitoring pipeline: Source Monitoring: Polls multiple sources for new PDFs Intelligent Parsing: Uses LLM-enhanced parsing for complex documents Insight Extraction: AI analyzes content for key information Priority Classification: Determines alert urgency based on content Multi-Channel Delivery: Sends formatted alerts via configured channels Audit Trail: Logs all processed documents for compliance Customization Guide Adding Custom Document Types: Extend the routing logic for specific document types: // In "Route by Document Type" node: const documentTypes = { 'invoice': /invoice|bill|payment/i, 'contract': /contract|agreement|terms/i, 'report': /report|analysis|summary/i, 'compliance': /audit|compliance|regulatory/i }; Customizing Insight Extraction: Modify the AI prompt for domain-specific analysis: // Financial documents: "Extract: 1) Revenue figures 2) YoY growth 3) Risk factors 4) Guidance changes" // Compliance documents: "Extract: 1) Policy changes 2) Deadlines 3) Required actions 4) Penalties" // Research papers: "Extract: 1) Key findings 2) Methodology 3) Implications 4) Future work" Advanced Alert Formatting: Create rich Slack messages with interactive elements: // Add buttons for quick actions: { "type": "actions", "elements": [ { "type": "button", "text": { "type": "plain_text", "text": "View Full Report" }, "url": documentUrl }, { "type": "button", "text": { "type": "plain_text", "text": "Mark as Read" }, "action_id": "mark_read" } ] } Implementing Alert Conditions: Add sophisticated filtering based on content: // Alert only if certain conditions are met: if (insights.metrics.revenue_change < -10) { priority = 'urgent'; alertChannel = '#executive-alerts'; } if (insights.findings.includes('compliance violation')) { additionalRecipients.push('legal@company.com'); } Adding Document Comparison: Track changes between document versions: // Compare with previous version: const previousDoc = await getLastVersion(documentType); const changes = compareDocuments(previousDoc, currentDoc); if (changes.significant) { alertMessage += \n⚠️ Significant changes detected: ${changes.summary}; } Alert Features: Monitor multiple document sources (FTP, cloud storage, email) Extract key metrics and findings with AI Send rich, formatted notifications Track document processing history Conditional alerts based on content analysis Multi-channel alert routing Use Cases: Financial report monitoring Compliance document tracking Research publication alerts Customer report distribution Board material summarization Regulatory filing notifications Advanced Configuration Performance Optimization: Implement caching to avoid reprocessing Use batch processing for multiple documents Set up parallel processing for different sources Security Considerations: Encrypt sensitive document storage Implement access controls for different alert channels Audit log all document access
by Tony Adijah
Who is this for? This workflow is built for founders, sales teams, solopreneurs, and agencies who want to automate outbound sales without expensive tools. Perfect for anyone doing cold email outreach who wants AI-powered personalization at scale. What it does The workflow runs three automated flows: Flow 1 — New Lead Processing (8 AM weekdays): Reads new leads from Google Sheets Scrapes the lead's website to build a research dossier AI scores each lead (0–100) on company fit, role fit, timing signals, and engagement potential For leads scoring 40+, AI generates 3 personalized cold emails with different angles Sends Email 1 immediately and saves all 3 emails to the sheet Low-fit leads are marked as skipped Flow 2 — Follow-up Engine (every 2 hours weekdays): Checks for leads that need follow-ups Sends Email 2 after 3 days, Email 3 after 7 days Automatically marks sequence as complete after Email 3 Skips leads that have already replied Flow 3 — Reply Detection (every 2 hours weekdays): Searches Gmail for replies from active leads Filters out your own sent emails to avoid false positives When a reply is found, marks the lead as "replied" and stops the sequence Sends a Telegram alert with the reply preview Setup steps Google Sheets — Create a spreadsheet with columns: Lead Name, Email, Company, Website, Role/Title, Status, Reply Date, Reply Subject, Reply Snippet, and email tracking columns (see sticky notes in the workflow for full list) Gmail OAuth2 — Connect your Gmail account for sending emails and searching replies Ollama — Install locally and pull your preferred model (e.g., ollama pull mistral). You can also swap for OpenAI or Anthropic Telegram Bot — Create via @BotFather, get your bot token and chat ID AI Lead Scorer prompt — Edit the system prompt with your product, ICP, and scoring criteria AI Email Writer prompt — Edit with your name, company, value prop, and one specific result Sender name — Update the sender name in the Extract Emails code node (line 12) and Find Follow-ups code node (line 9) Gmail address — Set your sending Gmail address in the Filter Active Leads code node (line 10) and Check Reply Results code node (line 10) Test — Add a test lead with status "new", run the research flow manually, verify emails generate correctly, then enable all schedules Requirements Self-hosted n8n (uses Ollama nodes) Ollama running locally with at least one model installed Google Sheets OAuth2 credentials Gmail OAuth2 credentials Telegram Bot credentials How to customize Adjust the scoring threshold (default 40) in the Extract Score node to be more or less selective Change follow-up timing (default 3 and 7 days) in the Find Follow-ups code node Modify cron schedules on any trigger to match your timezone and preferences Swap Ollama for OpenAI or Anthropic by replacing the LLM nodes Add a LinkedIn enrichment step before the dossier builder for richer research Customize email tone and sign-off in the AI Email Writer system prompt
by Oneclick AI Squad
Automatically converts your daily WhatsApp messages and photos from travels into beautifully structured travel stories, saved as documents in Google Drive. How it works Receive WhatsApp Updates - Webhook captures messages, photos, and locations from your travel day Validate & Aggregate Content - JavaScript organizes messages by day, extracts metadata, validates media Fetch Previous Entries - Retrieves existing journal from Google Drive for context and continuity Prepare AI Context - JavaScript builds comprehensive prompt with photos, messages, locations, and timeline Claude AI Story Generation - Transforms raw messages into narrative travel journal with insights Parse & Format Story - JavaScript structures the output into readable document format Wait for Finalization - Brief pause to ensure all processing completes Save to Google Drive - Creates or updates your travel journal document Send Confirmation - WhatsApp notification with preview of generated story Respond to Webhook - Returns success confirmation Setup Steps Import workflow into n8n Configure credentials: Anthropic API - Claude AI for story generation Google Drive - Document storage and retrieval WhatsApp Business API or Twilio WhatsApp - Message integration Create a Google Drive folder for your travel journals Set up WhatsApp webhook integration: Point WhatsApp webhook to: https://your-n8n-instance.com/webhook/travel-journal Configure to send: messages, media, locations Update the "Fetch Previous Journal" node with your Drive folder ID Activate the workflow Sample WhatsApp Input Messages throughout the day: 09:30 AM: "Just arrived in Kyoto! The train station architecture is stunning 🚄" 11:45 AM: "Fushimi Inari shrine - thousands of orange torii gates going up the mountain" 📸 Photo: Torii gates pathway 02:15 PM: "Tried okonomiyaki for lunch. Amazing! The chef made it right in front of us" 📸 Photo: Okonomiyaki cooking 05:30 PM: "Gion district at sunset. Spotted two geishas!" 📍 Location: Gion, Kyoto, Japan 08:45 PM: "Dinner at an izakaya. Made friends with locals who taught us drinking games 😄" Generated Journal Output Day 3: Kyoto - Ancient Temples and Modern Connections The day began with anticipation as the shinkansen pulled into Kyoto Station at 9:30 AM. The station itself was an architectural marvel—a blend of traditional Japanese aesthetics and contemporary design that set the tone for what would be an unforgettable day. By mid-morning, I found myself at Fushimi Inari Taisha, one of Kyoto's most iconic sites. The seemingly endless tunnel of vermillion torii gates created a mesmerizing pathway up Mount Inari. Each gate, donated by individuals and businesses, bore inscriptions in black kanji. The experience was both spiritual and surreal—the way light filtered through the gates, creating dancing shadows on the stone path... [Full narrative continues with integrated photos, locations, and emotional insights] Features Smart Aggregation** - Groups messages by day, even across time zones Photo Integration** - Embeds images inline with contextual descriptions Location Awareness** - Maps locations and adds geographical context Narrative Style** - Converts casual messages into polished travel prose Emotional Intelligence** - Captures mood and significance beyond literal text Timeline Coherence** - Maintains chronological flow and story arc Automatic Continuity** - Links to previous days for multi-day trip journals Format Flexibility** - Outputs as Google Docs with proper formatting Privacy & Data Messages are processed in real-time and not stored long-term Photos are referenced but can be embedded or linked based on preference Journal documents are private in your Google Drive No message content is retained after journal generation
by Incrementors
Description This workflow automates AI Search Engine Optimization (ASEO) tracking for digital marketing agencies. It tests your client's website visibility across four major AI platforms—ChatGPT, Claude, DeepSeek, and Perplexity—using brand-neutral prompts, analyzes ranking position and presence strength on each platform, identifies top competitors, and returns a structured 27-field scorecard with actionable recommendations. Designed as a sub-workflow, it integrates directly into your existing client audit or reporting pipeline. Key Features Brand-neutral prompt generation (no client name used—tests true organic AI discoverability) Simultaneous visibility testing across ChatGPT, Claude, DeepSeek, and Perplexity Presence strength scoring (0–100%) per platform Competitor identification across all four AI platforms Strongest and weakest platform detection AI-generated actionable recommendations for improvement Structured 27-field output ready for Google Sheets or database insertion Error handling on all agent nodes (partial results if any platform fails) Sub-workflow design—integrates cleanly into larger audit pipelines What This Workflow Does Input This workflow is triggered by a parent workflow and receives two parameters: Website**: The client's website URL (e.g., https://example.com) Website Summary**: A plain-text description of what the business does and its core services Processing Stage 1 — Brand-Neutral Prompt Generation GPT-4.1-mini generates a realistic search prompt that potential customers would type into an AI chatbot to find a company like the client. Critically, the prompt does not include the client's brand name—it focuses on their services and industry instead. For example, for a Los Angeles product photography studio, the prompt would be something like "best product photography studio for Amazon listings in Los Angeles" rather than the studio's name. This tests true organic discoverability, not brand recall. Stage 2 — Four-Platform Sequential Testing The same generated prompt is submitted sequentially to four AI platforms: ChatGPT via GPT-4o-mini Claude via Claude Sonnet 3.7 DeepSeek Perplexity Each platform agent runs independently with error handling enabled. If one platform API is down or throws an error, the workflow continues and returns partial results—it does not fail entirely. Stage 3 — Cross-Platform Analysis DeepSeek analyzes all four platform outputs together and produces a structured JSON report covering each platform's ranking (Yes/No), position (1–10 or null), presence strength percentage, key mentions, and top competitors. It also generates an overall summary comparing all platforms. Stage 4 — Data Flattening The nested JSON is flattened into 27 individual fields that can be directly inserted into a Google Sheet row, database, or passed back to the parent workflow for reporting. Output The workflow returns 27 structured data fields: Search prompt used (1 field) Per-platform metrics for ChatGPT, Claude, DeepSeek, Perplexity: Ranking (Yes/No), Position, Presence Strength %, Key Mentions, Top Competitors (5 fields × 4 platforms = 20 fields) Overall summary: Total platforms ranking, Average presence strength, Strongest platform, Weakest platform, Main competitors across all platforms, Recommendations (6 fields) Setup Instructions Prerequisites Active n8n instance (self-hosted or n8n Cloud) Parent workflow with Execute Workflow node (this workflow does not run standalone) OpenAI API key (used for prompt generation and ChatGPT testing) Anthropic API key (used for Claude testing) DeepSeek API key (used for DeepSeek testing and final analysis) Perplexity API key (used for Perplexity testing) Estimated setup time: 20–25 minutes Step 1: Understand how this workflow is triggered This is a sub-workflow. It does not have its own schedule trigger. It runs when a parent workflow calls it using n8n's Execute Workflow node. Setting up the parent workflow: Open or create your parent workflow (e.g., a client audit scheduler, a Google Sheets loop, or a manual trigger) Add an Execute Workflow node to your parent workflow Inside the Execute Workflow node: Source: Select "Database" Workflow: Search for and select this AI Search Ranking Analyzer workflow Mode: Choose "Run once for all items" or "Run once for each item" depending on your setup Under Fields, add two parameters to pass: Name: Website | Value: your client's website URL expression (e.g., ={{ $json['Website URL'] }}) Name: Website Summary | Value: your client's business description (e.g., ={{ $json['Business Description'] }}) Example parent workflow structure: Schedule Trigger (Weekly / Monthly) → Read Client List from Google Sheets → Loop Over Each Client → Execute Workflow (this AI Search Ranking Analyzer) Pass: Website = {{ $json['Website URL'] }} Pass: Website Summary = {{ $json['Summary'] }} → Append 27 Fields to Reporting Sheet → Send Report Email or Slack Notification Testing the trigger connection: Open this workflow and click on the Receive Website and Summary from Parent node You will see "Waiting for input from parent workflow..." Go to your parent workflow and click Execute node on the Execute Workflow node The data will flow into this workflow for testing Both workflows must be set to Active for production use Step 2: Connect OpenAI credentials This workflow uses two OpenAI models: GPT-4.1-mini** — used by Generate Brand-Neutral Search Prompts, Parse Prompt as JSON, and GPT Model for Parser Support GPT-4o-mini** — used by Test Visibility on ChatGPT To connect: In n8n go to Credentials → Add credential → OpenAI API Paste your API key from https://platform.openai.com/api-keys Name it clearly (e.g., "OpenAI Main") Open each of these nodes and select your credential: GPT Model for Prompt Generation → select your OpenAI credential, set model to gpt-4.1-mini GPT Model for Parser Support → select your OpenAI credential, set model to gpt-4.1-mini GPT-4o-mini for ChatGPT Test → select your OpenAI credential, set model to gpt-4o-mini Step 3: Connect Anthropic credentials Used by the Test Visibility on Claude agent via Claude Sonnet 3.7 Model. To connect: Go to Credentials → Add credential → Anthropic API Get API key from https://console.anthropic.com/ Open the Claude Sonnet 3.7 Model node and select your credential Verify the model is set to claude-3-7-sonnet-20250219 Step 4: Connect DeepSeek credentials Used by two nodes: DeepSeek Model for Testing (platform test) and DeepSeek Model for Analysis (final summarizer). To connect: Go to Credentials → Add credential → DeepSeek API Get API key from https://platform.deepseek.com/ Open DeepSeek Model for Testing node → select your credential Open DeepSeek Model for Analysis node → select your credential Step 5: Connect Perplexity credentials Used by the Test Visibility on Perplexity node (Perplexity native node, not an AI agent). To connect: Go to Credentials → Add credential → Perplexity API Get API key from https://www.perplexity.ai/settings/api Open the Test Visibility on Perplexity node and select your credential Step 6: Test the complete workflow Temporarily add a Manual Trigger node at the start and connect it to Generate Brand-Neutral Search Prompts (bypass the executeWorkflowTrigger for isolated testing) Set the Manual Trigger to pass test data: { "Website": "https://your-test-site.com", "Website Summary": "A company that provides [your service] in [your city]" } Execute and verify: Generate Brand-Neutral Search Prompts produces a sensible search query Each platform node returns output (or gracefully continues on error) Analyze All Platform Results produces structured JSON Flatten JSON to 27 Data Fields produces all 27 fields correctly Remove the test Manual Trigger once testing is complete Activate this workflow and your parent workflow Workflow Node Breakdown Receive Website and Summary from Parent The entry point of this sub-workflow. Listens for execution from a parent workflow via n8n's Execute Workflow node. Receives two inputs: Website (client URL) and Website Summary (business description text). These values are referenced by subsequent nodes throughout the workflow. Generate Brand-Neutral Search Prompts An AI agent powered by GPT-4.1-mini that creates a realistic search query a potential customer might type into an AI chatbot to find a business like the client—without using the client's brand name. This tests organic discoverability based on services and industry positioning rather than brand recognition. The output is a single focused search prompt. Parse Prompt as JSON A Structured Output Parser that enforces JSON schema {"Prompts": "..."} on the generated prompt. Uses GPT Model for Parser Support as its language model and has autoFix enabled, so malformed outputs are automatically retried and corrected. Test Visibility on ChatGPT An AI agent that submits the generated search prompt to ChatGPT (GPT-4o-mini) and records the response. This captures what ChatGPT currently recommends when users search for services like the client's. Test Visibility on Claude An AI agent powered by Claude Sonnet 3.7 (Anthropic) that receives the same prompt and records Claude's recommendations. Has onError: continueRegularOutput so the workflow continues if Claude's API is unavailable. Test Visibility on DeepSeek An AI agent powered by DeepSeek that tests the same prompt on DeepSeek's platform. Also has onError: continueRegularOutput for resilience. Test Visibility on Perplexity Uses n8n's native Perplexity node (not an AI agent) to submit the prompt to Perplexity's search-augmented AI. Perplexity is particularly important because it uses real-time web search, making its recommendations highly relevant for current visibility. Has onError: continueRegularOutput. Analyze All Platform Results A DeepSeek-powered AI agent that receives all four platform outputs simultaneously along with the client website URL and the original search prompt. It analyzes each platform independently—determining whether the client appears (Yes/No), at what position (1–10), how strongly (0–100%), how they are mentioned, and which competitors appear. It also generates an overall summary comparing all platforms and provides specific improvement recommendations. Uses Parse Analysis as Structured JSON as its output parser. Flatten JSON to 27 Data Fields A Set node that extracts values from the nested JSON output of the analyzer into 27 flat fields. This makes the data ready for direct insertion into a Google Sheets row, Airtable record, or database table—or for return to the parent workflow. Output Data Complete A No Operation node marking the successful completion of the workflow. The parent workflow receives all 27 fields as the execution output. Usage Guide Adding clients for analysis In your parent workflow, maintain a Google Sheet with columns: | Client Name | Website URL | Business Description | Last Checked | |---|---|---|---| | Example Corp | https://example.com | A SaaS company that provides... | 2025-01-15 | Your parent workflow reads each row, passes the Website URL and Business Description to this sub-workflow, and writes the 27 returned fields back into the sheet for tracking. Understanding the output After execution, check the Flatten JSON to 27 Data Fields node output. For each platform you get: Ranking:** Yes (client appears) or No (client not mentioned) Position:** Numeric position in the AI's recommendations (1 being top) Presence Strength:** 0–100% measuring how positively and prominently the client is featured Key Mentions:** How the AI described or mentioned the client Ranking Competitors:** Which competitors the AI recommended instead The Overall Summary tells you: How many of 4 platforms are currently ranking your client The average presence strength across all platforms Which platform is your strongest opportunity Which platform needs the most improvement The 3 main competitors appearing consistently Specific recommendations for improving AI discoverability Tracking over time Run this workflow monthly per client. Append results to a Google Sheet with a date column. Track whether presence strength is improving, whether the client appears on more platforms over time, and whether competitors are losing or gaining ground. Customization Options Change the number of platforms: Remove any platform agent node and update the Analyze All Platform Results prompt to exclude that platform's output reference. Add more platforms: Add new AI agent nodes (e.g., Grok, Gemini) between Test Visibility on Perplexity and Analyze All Platform Results. Update the analyzer prompt to include the new platform's output. Generate multiple prompts: Modify Generate Brand-Neutral Search Prompts to produce 3–5 different prompts. Loop through each and aggregate results for more comprehensive testing. Write results directly to Google Sheets: After Flatten JSON to 27 Data Fields, add a Google Sheets Append node in your parent workflow to log each audit automatically. Add email or Slack notifications: After the workflow completes in the parent, add a Send Email or Slack node that formats the key metrics (Overall Ranking, Average Presence Strength, Recommendations) into a readable client report. Adjust presence strength scoring: Modify the Analyze All Platform Results prompt to change how the AI scores presence strength—for example, weighting first-position mentions more heavily. Troubleshooting Parent workflow not triggering this workflow Verify both workflows are toggled to Active In the Execute Workflow node, confirm the correct workflow is selected Check that the Mode is set (not left blank) Test by clicking Execute node directly on the Execute Workflow node in the parent Website and Website Summary parameters not passing In the Execute Workflow node, confirm the field names are exactly Website and Website Summary (case-sensitive, space in second parameter) Check the parent workflow is actually passing values, not empty expressions Use the Receive Website and Summary from Parent node's input panel to verify received data One platform returns empty output The workflow continues even if one platform fails (onError: continueRegularOutput is set) Check the specific platform node for the error message Verify API credentials are valid and have available credits Perplexity free tier has strict rate limits—upgrade plan if hitting limits Structured output parser fails Parse Prompt as JSON has autoFix enabled—it will retry malformed outputs automatically If Parse Analysis as Structured JSON fails, simplify the prompt in Analyze All Platform Results or increase max tokens Check that DeepSeek credentials are active (DeepSeek handles the analysis output parsing) Generated prompt includes client brand name The Generate Brand-Neutral Search Prompts agent prompt instructs GPT to avoid brand names If brand names slip through, add to the system prompt: "Never mention any specific company name, brand, or trademark in the generated prompt" All 27 fields not appearing in output Run the workflow with test data and inspect Analyze All Platform Results node output If a platform returned empty output due to an error, its fields will be null Check that Flatten JSON to 27 Data Fields expressions reference the correct node names Use Cases Digital marketing agencies offering ASEO services: Run monthly AI visibility audits for 20–50 clients from one parent workflow. Generate client reports showing AI platform rankings, presence strength trends, and competitor comparisons. Position ASEO as a premium new service. SEO teams expanding beyond Google: Use this alongside traditional Google ranking reports. Show clients their full search visibility picture—covering both Google and the AI chatbots that are increasingly influencing purchase decisions. Competitive intelligence: Run this workflow for your own site and 3–5 competitors simultaneously. Identify which competitors dominate AI recommendations and reverse-engineer their content strategy. Brand monitoring: Track how AI chatbots describe your brand over time. Detect if competitors are gaining ground or if negative associations are appearing in AI responses. New market entry research: Before entering a new market or launching a new service line, test whether your website would appear in AI searches for that service category. Use results to guide content strategy before launch. Expected Results Time savings: 45–60 minutes of manual AI testing per client, eliminated per audit cycle Coverage: 4 major AI platforms tested in a single automated run Output quality: Structured, consistent 27-field data format—ready for Google Sheets, dashboards, or PDF reports Scalability: Process 50+ clients per parent workflow run with no additional manual effort Competitive advantage: One of the first systematic approaches to measuring AI Search Engine Optimization (ASEO)—a space with no established tooling yet For any questions, custom development, or workflow integration support: 📧 Email: info@incrementors.com 🌐 Website: https://www.incrementors.com/
by Cheng Siong Chin
Introduction Automate price monitoring for e-commerce competitors—ideal for retailers, analysts, and pricing teams. Scrapes competitor sites, extracts pricing/stock data via AI, detects changes, and sends instant alerts for dynamic pricing strategies. How It Works Scrapes competitor URLs via Firecrawl and Apify, extracts data with AI, detects price/stock changes, logs to Google Sheets, and sends Telegram alerts. Workflow Template Trigger → Scrape URL → AI Extract → Parse → Merge Historical → Detect Changes → Update Sheets + Send Telegram Alert Workflow Steps Trigger & Scrape → Manual/scheduled trigger → Firecrawl + Apify fetch competitor data AI Processing → Claude extracts product details → Parses and structures data Change Detection → Reads historical prices → Merges with current data → Identifies updates Output → Logs alerts to Sheets → Updates historical data → Sends Telegram notification Setup Instructions 1. Firecrawl API Get key from dashboard → Add to n8n 2. Apify API Get key from console → Add to n8n → Configure actors 3. AI Model (Claude/OpenAI) Get API key → Add to n8n 4. Google Sheets OAuth2 Create OAuth2 in Google Cloud Console → Authorize in n8n → Enable API 5. Telegram Bot Create via BotFather → Get token & chat ID → Add to n8n 6. Spreadsheet Setup Create Sheet with required columns → Copy ID → Paste in workflow Prerequisites Self-hosted n8n, Firecrawl account, Apify account, Claude/OpenAI API key, Google account (Sheets OAuth2),Telegram bot Customization Add more URLs, adjust scraping intervals, change detection thresholds, switch to Slack/email alerts, integrate databases Benefits Saves 2+ hours daily, real-time tracking, automated alerts, historical analysis, multi-source scraping