by Alex Berman
Who is this for This workflow is built for digital agencies and sales teams that sell services to ecommerce brands. If you prospect Shopify store owners and want a repeatable, automated pipeline from discovery to CRM -- this template handles the entire process. How it works A configuration node lets you set your target country, lead volume, and filters before anything runs. ScraperCity's store-leads API scrapes live Shopify stores and returns emails, phone numbers, and social profiles. The workflow polls for job completion every 60 seconds, then downloads and parses the CSV results. All harvested emails are sent in bulk to ScraperCity's email-validator API, which checks deliverability, MX records, and catch-all status. Only contacts with valid or acceptable email status pass through a filter node. Duplicate records are removed before each verified lead is created or updated as a contact in HubSpot CRM. How to set up Create a ScraperCity account at app.scrapercity.com and copy your API key. In n8n, create an HTTP Header Auth credential named "ScraperCity API Key" with the header name "Authorization" and value "Bearer YOUR_KEY". Connect your HubSpot account using the HubSpot App Token credential. Open the Configure Search Parameters node and set your target country code and lead volume. Requirements ScraperCity account (app.scrapercity.com) -- store-leads and email-validator products HubSpot account with a private app token n8n instance (cloud or self-hosted) How to customize the workflow Change countryCode in the config node to target any market (GB, AU, CA, etc.) Adjust totalLeads to control scrape volume per run Add a filter node after email validation to restrict to specific domains or revenue signals Swap HubSpot for another CRM by replacing the final node with a Salesforce, Pipedrive, or Airtable node
by Madame AI
Automate B2B lead research from Google Sheets to Airtable With BrowserAct This workflow automates the time-consuming process of B2B market research. It takes a list of company website URLs from a Google Sheet, uses BrowserAct to scrape their profiles and news sections, analyzes the data using AI to determine strategic focus and key activities, and saves a comprehensive executive summary into an Airtable database. Target Audience Sales operations managers, SDRs (Sales Development Representatives), market researchers, and venture capital analysts who need to process large volumes of company data efficiently. How it works Ingest Data: The workflow retrieves a list of target company URLs from a Google Sheet. Scrape Content: It loops through each URL and triggers BrowserAct (using the "B2B Contact Research" template) to scrape company profiles, about pages, and news sections. Analyze & Stage: An AI Agent (using OpenRouter/GPT-5) processes the raw scraped text to identify whether it is news or profile data, extracting key insights like strategic focus and recent updates. This raw analysis is staged back into the Google Sheet. Synthesize: The workflow retrieves the staged data and aggregates it. Final Summary: A second AI Agent compiles all data points into a cohesive "Research Record," writing a high-impact executive summary and formatting notes with Markdown. Database Entry: The final structured data (Name, Notes, Strategic Focus) is created as a new record in Airtable. How to set up Configure Credentials: Connect your BrowserAct, Google Sheets, Airtable, and OpenRouter accounts in n8n. BrowserAct Template: Ensure you have the B2B Contact Research template saved in your BrowserAct account. Prepare Google Sheet: Create a Google Sheet with a tab named "DataBase". Add the headers listed below. Populate the Page URL column with the companies you want to research. Configure Nodes: Open the Google Sheets nodes and select your file. Open the Airtable node and select your Base and Table. Run: Execute the workflow to start processing the list. Google Sheet Headers To use this workflow, create a Google Sheet with the following headers: Page URL (Input - put your links here) Page Data (Output - leave blank, populated by bot) row_number (Output - leave blank, populated by bot) Requirements BrowserAct* account with the *B2B Contact Research** template. Google Sheets** account. Airtable** account. OpenRouter** account (or credentials for a specific LLM like GPT-4o or Gemini). How to customize the workflow Change the CRM: Replace the final Airtable node with HubSpot, Salesforce, or Pipedrive nodes to inject research directly into your CRM deals. Adjust AI Prompts: Modify the system prompt in the "Analyze the Company Page" agent to focus on specific criteria relevant to your business (e.g., look specifically for "pricing models" or "hiring trends"). Email Alerts: Add a Gmail or Slack node at the end of the workflow to notify your sales team immediately when a high-value prospect has been researched. Need Help? How to Find Your BrowserAct API Key & Workflow ID How to Connect n8n to BrowserAct How to Use & Customize BrowserAct Templates Workflow Guidance and Showcase Video How to Structure Airtable for Automated Company Research (n8n Tutorial)
by Yar Malik (Asfandyar)
Who’s it for This template is perfect for marketers, sales teams, and entrepreneurs who need verified business leads without spending hours on manual research. If you’re running outreach campaigns, selling B2B services, or building prospect databases, this workflow saves you time and ensures your lead list is always fresh. How it works Start with a Google Maps search for a chosen business type and location (e.g., “Call centers in New York”). The workflow scrapes raw data, extracting business names, phone numbers, addresses, websites, and emails. Using regex logic, it filters and cleans data, ensuring valid contact details. Finally, it exports all leads into Google Sheets, giving you a ready-to-use contact list for outreach or CRM import. How to set up Replace the placeholder values in the Set Form Fields node with your target industry and location. Connect your Google Sheets account and provide the sheet ID. Run the workflow to start building your lead list. Requirements Google Sheets credentials Business type + location input How to customize the workflow Change the max_results field to control the number of businesses scraped. Add extra regex filters to capture more fields (e.g., social links). Integrate with your CRM or email platform to send leads directly to your outreach pipeline.
by Omer Fayyaz
Who's it for This template is perfect for business owners, developers, and marketers who want to add a professional, branded AI chatbot to their website. Whether you're running an e-commerce site, a SaaS platform, or a corporate website, this template gives you a fully customizable chat widget that integrates seamlessly with your brand. How it works The template creates a webhook endpoint that receives chat messages and processes them through an AI agent powered by DeepSeek. The workflow includes: Webhook endpoint** that accepts POST requests from your website AI Agent** that processes user messages and maintains conversation context Memory buffer** that remembers conversation history for each user session Response formatting** that sends AI replies back to your chat widget The chat widget itself is a vanilla JavaScript component that you embed on your website. It features: Customizable colors, branding, and positioning Light/dark theme support Mobile-responsive design Local conversation history Session management with expiration WordPress plugin integration How to set up Import the workflow into your n8n instance Configure your DeepSeek API credentials in the DeepSeek Chat Model node Activate the workflow to generate your webhook URL Copy the webhook URL from the Webhook node Embed the chat widget on your website using the provided JavaScript files Requirements n8n instance** (self-hosted or cloud) DeepSeek API account** and API key Website** where you want to embed the chatbot Basic HTML/JavaScript knowledge** for customization How to customize the workflow AI Agent Configuration Modify the AI Agent prompt to change how the bot responds Adjust the memory buffer settings for conversation context Change the AI model parameters for different response styles Webhook Customization Add authentication headers if needed Modify the response format to match your requirements Add additional processing nodes before the AI Agent Chat Widget Styling Change brandColor and accentColor to match your brand Customize the bot name, avatar, and welcome message Adjust positioning and launcher style Enable dark mode or HTML responses as needed Advanced Features Add user authentication integration Implement rate limiting Connect to your CRM or support system Add analytics and tracking Template Features ✅ No hardcoded API keys - uses n8n credential system ✅ Sticky notes included - explains the entire workflow ✅ Professional branding - fully customizable appearance ✅ WordPress ready - includes plugin and shortcode support ✅ Mobile responsive - works on all devices ✅ Session management - remembers conversations per user Use Cases Customer Support**: Provide instant AI-powered assistance Lead Generation**: Engage visitors and collect contact information Product Guidance**: Help customers find the right products/services FAQ Automation**: Answer common questions automatically Booking Assistant**: Help with appointments and reservations E-commerce Support**: Guide customers through purchases Technical Details The workflow uses the LangChain AI Agent with DeepSeek as the language model and includes a Memory Buffer for conversation context. The webhook response format is optimized for the chat widget. Live Demo Try it online: Live Demo Experience the chatbox widget in action with a working n8n webhook integration. The demo showcases all features including light/dark themes, HTML responses, and session management. Note: This template includes a complete JavaScript chat widget and WordPress plugin, making it ready for immediate use on any website. The workflow is designed to be production-ready with proper error handling and security considerations.
by Rahul Joshi
Description: Eliminate duplicate entries and streamline your lead management process with this n8n workflow template! Automatically capture new form submissions, check against existing records, update duplicates, and sync leads seamlessly into GoHighLevel (GHL) CRM and your Google Sheets database. This automation monitors Google Form submissions in real time, verifies if a lead already exists, and routes them accordingly: ✅ New leads are created in GoHighLevel and logged in your master database. ♻️ Duplicates are updated with the latest details and tracked in a dedicated duplicate log. Perfect for sales, marketing, and operations teams that need clean, accurate, and up-to-date lead records without manual effort. What This Template Does 📥 Captures new lead form submissions from Google Sheets 🔎 Checks existing records to detect duplicate entries 🆕 Creates new contacts in GoHighLevel CRM for unique leads ♻️ Updates existing GHL contacts with fresh submission details 📂 Logs new leads in a master database spreadsheet 📑 Tracks duplicate leads in a dedicated log for analytics 🌟 Fully automated: ensures a clean, organized, and deduplicated lead pipeline How It Works Google Sheets Trigger – Monitors your form response sheet for new submissions. Process Contact Data – Evaluates lead details and checks for duplicates. Duplicate Check – Compares against your master database. New Lead Handling – Creates a new contact in GoHighLevel and adds it to the master sheet. Duplicate Handling – Updates the existing contact in GoHighLevel and logs the activity in the duplicate log sheet. Setup Instructions- Google Sheets Setup Prepare three sheets: Form Responses Sheet → where new leads from your form are captured Master Lead Database → stores all unique leads Duplicate Log Sheet → tracks duplicate entries for reporting Required columns: Name Email Address Phone Number Company (optional) Submission Time (timestamp) GoHighLevel Setup Log into your GoHighLevel account. Generate an API key under settings. Store the key securely in n8n credentials. n8n Setup Import the workflow into your n8n instance. Update all node credentials (Google Sheets + GoHighLevel). Rename the Code node to Process Contact Data. Test the workflow with a sample form submission. Customization 🕒 Business Logic: Adjust duplicate detection rules (e.g., match on email only, or email + phone). 📑 Data Fields: Add more fields (e.g., industry, source, notes) and map them to GHL + Sheets. 📊 Reporting: Use the Duplicate Log Sheet for analytics, dashboards, or reporting pipelines. 🔔 Notifications: Add a Telegram or Slack node to notify your team when duplicates occur. Security Best Practices ❌ Do not hardcode your GoHighLevel API key. Use n8n credentials. ✅ Remove private sheet IDs and tokens before sharing workflows. ✅ Restrict credential access to authorized team members only. Requirements Google Sheets (form responses, master database, duplicate log) GoHighLevel (GHL) account with API access n8n instance (self-hosted or cloud) This workflow is perfect for: 🏢 Sales Teams managing growing lead databases 📈 Marketing Teams syncing form submissions with CRM ⚙️ Operations Teams preventing duplicate records 🚀 Businesses wanting a reliable, automated lead pipeline
by Wyeth
Are you writing complex Code nodes and need Intellisense support? Follow this simple pattern to get autocomplete for any n8n or custom classes.
by manohar
This workflow assigns a user to an issue if they include "assign me" when opening or commenting. To use this workflow you will need to update the credentials used for the Github nodes.
by Alex Berman
Who is this for Sales teams, lead generation agencies, and growth marketers who want to pull targeted B2B contacts from Apollo.io, enrich them with verified emails and mobile numbers, and push clean records directly into an Airtable CRM -- without manual data entry or expensive Apollo subscriptions. How it works A manual trigger kicks off the workflow. A configuration node lets you define your target job titles, industry, company size, and lead count. The workflow calls the ScraperCity Apollo Filters API to start an async scrape job and captures the returned run ID. An async polling loop checks the scrape status every 60 seconds until the job succeeds. On success, the raw lead data is downloaded and parsed. Contacts without a work email are filtered out and duplicates are removed. Clean, enriched records (name, title, company, email, phone, LinkedIn URL) are written to your Airtable base as new rows. How to set up Create a ScraperCity account at scrapercity.com and copy your API key. In n8n, add an HTTP Header Auth credential named "ScraperCity API Key" with the header name Authorization and value Bearer YOUR_KEY. Open the Configure Search Parameters node and edit job titles, industry, company size, and lead count. Open the Save Leads to Airtable node and connect your Airtable credential, then set your Base ID and Table name. Requirements ScraperCity account (scrapercity.com) -- Apollo scraper billed at $0.0039 per contact n8n instance (cloud or self-hosted) Airtable account with a base and table ready to receive contacts How to customize the workflow Change the filter conditions in Filter Contacts with Email to also require a phone number. Add a ScraperCity Mobile Finder step after download to enrich contacts with mobile numbers before writing to Airtable. Swap the Airtable output node for a HubSpot or Google Sheets node to route leads to a different destination.
by Jitesh Dugar
Eliminate the manual chaos of HR and legal document management. This workflow automates the transition from a raw document upload to a structured, audit-ready archive by combining UploadToURL for instant CDN hosting, Google Drive for long-term storage, and Airtable for status tracking and database management. 🎯 What This Workflow Does Transforms loose document scans into a structured corporate filing system: 📝 Captures Legal Assets - Receives signed contracts or IDs via mobile scan (binary) or remote URL. 🛡️ Duplicate Prevention - Checks Airtable first to ensure a contract isn't already filed for that specific Employee ID. ☁️ Instant CDN Hosting - UploadToURL hosts the document to provide a high-speed link for immediate HR review. 📁 Smart Folder Logic - Automatically navigates or creates a structured Google Drive path: HR/Contracts/{Year}/{Department}/{EmployeeName}/. 🗃️ Database Synchronization - Updates (or creates) an Airtable record to tick "Contract Received," logging both the Drive URL and the CDN backup. 📧 Automated Confirmation - Sends a professional HTML email to HR and the employee with access links and filing metadata. ✨ Key Features UploadToURL Integration**: Provides a redundant, accessible CDN link stored alongside your primary Drive storage for total data reliability. Auto-Nomenclature**: Renames files using a strict audit-ready format: {EmployeeID}{LastName}{Type}_{Date}.pdf. Intelligent Folder Creation**: Never manually create a folder again; the workflow builds the entire hierarchy on the fly. Audit Trail Generation**: Captures "Filed By," "Filed At," and unique "Upload IDs" for every document. Conflict Handling**: Built-in 409 Conflict logic prevents accidental overwrites or double-filing of critical legal papers. 💼 Perfect For HR Teams**: Managing onboarding documents and employment contracts at scale. Legal Departments**: Archiving NDAs, vendor agreements, and compliance certifications. Small Businesses**: Moving away from "loose files in folders" to a searchable, automated database. Remote Teams**: Enabling employees to "upload and forget" their paperwork via a simple link. 🔧 What You'll Need Required Integrations UploadToURL** - To host documents and provide public CDN backup links. n8n Community Node** - n8n-nodes-uploadtourl must be installed. Google Drive** - OAuth2 credentials for secure document storage. Airtable** - Personal Access Token to manage your employee/document database. Gmail / SMTP** - To send automated filing confirmations. Configuration Variables GDRIVE_ROOT_FOLDER_ID: The ID of your main HR folder in Google Drive. AIRTABLE_BASE_ID: Your specific Airtable base for HR/Legal tracking. 🚀 Quick Start Import Template - Copy the JSON and import it into your n8n workspace. Install Node - Ensure the UploadToURL community node is active. Set Credentials - Link your UploadToURL, Google Drive, Airtable, and Gmail accounts. Define Variables - Set your Root Folder ID and Airtable Base details in n8n variables. Test the Pipeline - Send a test POST with a sample PDF to the Webhook URL. Activate - Enable the workflow to begin hands-free archiving. 🎨 Customization Options Expiration Alerts**: Add a node to calculate 1-year expiry dates and set an automated reminder in Slack. OCR Processing**: Integrate an OCR step to read the content of scans and verify names automatically. Watermarking**: Add a "Confidential" or "Draft" watermark to documents before they are uploaded to the CDN. Multi-Base Routing**: Route documents to different Airtable bases depending on the "Department" field. 📈 Expected Results 100% Consistency** in file naming and folder structures across the entire organization. Zero manual data entry**—employee records and checkboxes update automatically. Audit-ready in minutes**: Every file has a timestamped trail and redundant storage links. Instant Accessibility**: HR can view documents via the CDN link before Drive permissions even propagate. 🏆 Use Cases High-Growth Onboarding A startup hiring 20 people a month can automate all contract filings, ensuring the "Contract Received" flag is always accurate for payroll. Compliance Audits When auditors ask for specific contracts, use the Airtable "Structured Filename" column to find and share the relevant Drive or CDN links in seconds. Field Service Scans Technicians in the field can upload signed site reports via a mobile app; the workflow handles the filing and notifies the office immediately. 💡 Pro Tips Folder IDs**: You can find your GDRIVE_ROOT_FOLDER_ID by looking at the last string in the URL when you are inside that folder in your browser. Structured JSON**: Use the returned auditTrail object to build a log of all uploads in a separate "Master Audit" spreadsheet. Employee IDs**: If no ID is provided, the workflow generates a temporary one using a timestamp to ensure the archive never breaks. Ready to secure your document pipeline? Import this template and connect UploadToURL to build a world-class archiving system in under 20 minutes. Need help with Airtable field mapping? The workflow includes detailed sticky notes explaining the exact field names required for the automation to run.
by Pernille-AI
Automatically retrieve AWS invoices and create corresponding bills in FreeAgent, marking them as paid. This workflow eliminates manual data entry for AWS billing. What It Does Fetches invoices from AWS Invoicing API for the previous month Filters invoices by issue date to ensure only new ones are processed Checks PostgreSQL database for previously processed invoices Creates a bill in FreeAgent with correct dates and amounts Marks the bill as paid with a bank transaction explanation Records the invoice in the database to prevent future duplication Prerequisites AWS account with Invoicing API access FreeAgent account with OAuth API access PostgreSQL database (you could modify to use n8n Data Table?) AWS IAM user with invoicing:ListInvoiceSummaries permission Quick Setup Checklist [ ] Create PostgreSQL table (see below) [ ] Add PostgreSQL credentials in n8n [ ] Set up FreeAgent OAuth2 credentials [ ] Update AWS access key and secret key in "Generate AWS Signature" node [ ] Update AWS account ID in "Calculate Last Month" node [ ] Get and update FreeAgent contact ID for AWS [ ] Get and update FreeAgent category ID (cloud services/hosting) [ ] Get and update FreeAgent bank account ID Configuration Required This template has placeholders that you need to replace: In Code Nodes YOUR_AWS_ACCESS_KEY_ID - Your AWS access key YOUR_AWS_SECRET_ACCESS_KEY - Your AWS secret key YOUR_AWS_ACCOUNT_ID - Your 12-digit AWS account number YOUR_CONTACT_ID - FreeAgent contact ID for AWS YOUR_CATEGORY_ID - FreeAgent category for cloud services YOUR_BANK_ACCOUNT_ID - FreeAgent bank account for payments Credentials to Add PostgreSQL database credentials (3 nodes) FreeAgent OAuth2 credentials (2 nodes) Use Cases Freelancers & Consultants**: Automatically track AWS infrastructure costs Small Businesses**: Streamline bookkeeping for cloud expenses Agencies**: Manage multiple AWS accounts with separate workflows Accountants**: Reduce manual data entry for client AWS bills Database Schema The workflow uses a PostgreSQL table to track processed invoices - To initially create the table you need to run : CREATE TABLE aws_invoices_processed ( id SERIAL PRIMARY KEY, aws_invoice_id VARCHAR(255) UNIQUE NOT NULL, freeagent_invoice_url TEXT NOT NULL, billing_period VARCHAR(7) NOT NULL, amount DECIMAL(10, 2) NOT NULL, currency VARCHAR(3) NOT NULL, processed_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ); Customization VAT Rate**: Default is 20% (UK), adjust in "Prepare FreeAgent Bill" node Schedule**: Modify cron expression in "Schedule Trigger" node Description Format**: Customize invoice description in code nodes Multi-Account**: Duplicate workflow for each AWS account Notes AWS dates are reversed: DueDate is earlier than IssuedDate, so the workflow swaps these All amounts are processed in the currency specified by AWS The "DELETE Test Record" node is disabled by default - use for testing only
by Khairul Muhtadin
This n8n workflow automates WooCommerce order processing by capturing order updates via webhook and converting them into Discord notifications and Google Sheets entries. What This Workflow Does Automatically captures WooCommerce orders and sends real-time Discord notifications while logging paid orders to Google Sheets for tracking and reporting. Key Benefits Save 90% Time**: Eliminates manual order logging and monitoring Never Miss Orders**: Instant Discord alerts for all order activities 80% Faster Response**: Team gets structured order info immediately Dual Tracking**: Real-time alerts + permanent spreadsheet records Perfect For Ecommerce Teams**: Monitor orders without constantly checking admin panel Small Business Owners**: Professional order tracking without extra staff Fulfillment Teams**: Get organized order data for quick processing How It Works WooCommerce sends order webhook to n8n Order data is parsed and formatted beautifully All orders trigger Discord notifications (color-coded by status) Paid orders (PROCESSING status) are logged to Google Sheets Webhook confirms successful receipt to WooCommerce Features Smart Status Colors**: Yellow (pending), Blue (processing), Green (completed), Gray (cancelled) Rich Discord Embeds**: Customer info, items, shipping, totals - all formatted nicely Flexible Data Parsing**: Handles various WooCommerce webhook structures Indonesian Currency**: Proper IDR formatting for local businesses Product Thumbnails**: Shows product images in Discord notifications Setup Requirements n8n instance (self-hosted or cloud) Discord server with bot access Google account for Sheets WooCommerce admin access Quick Setup Import workflow JSON to n8n Add Discord bot token Connect Google Sheets OAuth Set WooCommerce webhook to n8n endpoint Create Google Sheet with required columns Test with a sample order Customization Options Change Discord embed colors for your brand Modify which order statuses get logged Add custom fields to Google Sheets Adjust currency and language settings Filter orders by specific conditions Google Sheets Columns Month (order date) Brand Name Web Order Number Expedition (shipping method) Tracking Number Status Future Enhancement Ideas Add SMS/WhatsApp customer notifications Connect to shipping label services Integrate with CRM for customer insights Add inventory management triggers Create sales analytics dashboard Support Created by Khmuhtadin Need customization? Contact us!
by Milo Bravo
RSVP Lead Scoring for Events with GPT, HubSpot & Slack Who is this for? Event organizers, RevOps teams, sales managers, and marketers running conferences, webinars, or meetups who want to automatically qualify RSVPs and turn attendees into revenue opportunities. What problem is this workflow solving? RSVP lead qualification is manual and slow: Reviewing 1000+ registrations takes hours Missing high-fit prospects (directors, founders) No instant sales handoff or nurture segmentation Leads leak between events and CRM This workflow auto-scores RSVPs 0-100 and routes high-fits to sales instantly. What this workflow does Trigger**: Google Forms/Typeform RSVP webhook AI Scoring: GPT-4o-mini analyzes job title, company, intent → **0-100 fit score High Scorers (80+)**: HubSpot CRM contact + Slack "#sales: Director @ Acme (87) → Book now [Calendly]" Low Scorers**: Nurture sequence (email lists) Dashboard**: Google Sheets with scores, conversions tracked Setup (3 minutes) Forms**: Google Forms/Typeform → n8n webhook (copy/paste URL) AI**: OpenAI API key (GPT-4o-mini - cheap & fast) CRM**: HubSpot API key (works Free tier) Slack**: #sales channel + bot token Fully configurable—no code changes needed. How to customize to your needs Scoring**: Adjust GPT thresholds (80→90 for enterprise) CRM**: Swap HubSpot for Salesforce/Pipedrive Channels**: Add Teams/Email + multiple Slack rooms Events**: Multi-event scoring by form source Follow-up**: Auto-Calendly, SMS, or email sequences ROI: 3x qualified leads** to sales team 5x faster sales response** 40% less lead leakage** (proven 500+ runs) Zero manual qualification** Need help customizing?: Contact me for consulting and support: LinkedIn / Message Keywords: event RSVP, AI lead scoring, conference lead qualification, event lead gen RevOps, lead fit scoring.