by Hirokazu Kawamoto
How it works This workflow is triggered when the contact form is submitted. It automatically saves the inquiry details to Google Sheets and sends a notification to Slack. You can then review the inquiry and reply directly from Slack using the Contact button. How to use Open the Gmail node and set up the Credential. Open the Google Sheets node and set up the Credential. Open the Slack node and set up the Credential to allow sending messages. You can create a new Slack App here. Open the ContactWebhook node and configure Basic Auth. Open the Config node and update the contactWebhookUrl parameter to match the Production URL from the ContactWebhook node. Customizing this workflow You can customize the Slack notification message in the Config node. You can modify the reply email body in the Gmail node. We recommend including a scheduling link (e.g., to book a meeting).
by Oneclick AI Squad
Streamline invoice management with this automated n8n workflow. Triggered daily at 9 AM, it fetches pending invoices, filters overdue ones, uses AI to generate personalized reminders, and sends them to clients. It also tracks payments via webhooks, updates statuses, and provides daily summaries to the finance team, ensuring efficient cash flow oversight. Key Features Daily checks at 9 AM ensure timely invoice tracking. AI generates personalized reminders and payment confirmations. Real-time webhook integration for payment updates. Daily summaries and activity logs enhance financial visibility. Workflow Process Schedule Daily Check** runs every day at 9 AM to initiate the workflow. Fetch Pending Invoices** queries the database for unpaid invoices. Filter Overdue Invoices** separates overdue invoices based on due dates. Calculate Reminder Logic** applies smart logic for reminder timing and urgency. Prepare AI Prompt** formats data into a tailored prompt for AI. AI Agent for Generate Email** uses AI to create personalized reminder emails. Format Email** styles the email with HTML for a professional look. Send Email Reminder** delivers the reminder to clients. Update Reminder Status** logs the sent reminder in the database. Create Activity Log** generates a manual log for auditing. Save Input Log** archives raw input data for analysis. Generate Daily Summary** creates a report of daily metrics. Send Summary to Finance Team** emails the summary to the team. Webhook Payment Received** captures payment confirmations via POST. Update Payment Status** updates the invoice status to "paid" in the database. Webhook Response** sends an acknowledgment to the payment gateway. Webhook Logic Filtering** validates webhook data. Prepare AI Prompt (in payment branch)** formats payment data for AI. Chat Memory Tool (in payment branch)** maintains context for AI. Generate Email (in payment branch)** creates a payment confirmation email. Send Payment Confirmation** emails the confirmation to the client. Setup Instructions Import the workflow into n8n and configure database credentials (e.g., Google Sheets or SQL) for "Fetch Pending Invoices." Set up the AI service (e.g., OpenAI GPT) with an API key for email generation. Configure Gmail API Key for sending emails and Slack (if integrated) for team alerts. Test the workflow by adding overdue invoices and simulating a payment webhook. Adjust reminder logic and thresholds (e.g., 7 days overdue) as needed. Prerequisites Database access (e.g., Google Sheets OAuth2 or SQL credentials) OpenAI API key for AI email generation Gmail API Key for email notifications Payment gateway webhook integration (e.g., Stripe) Structured invoice data format Database Structure: Create a table/sheet with columns: Invoice ID Client Name Amount Due Date Status Reminder Sent Payment Date Modification Options Adjust the "Schedule Daily Check" to a different time (e.g., 8 AM IST). Customize "Calculate Reminder Logic" for escalation (e.g., multiple reminders). Modify AI prompts for branded or localized email content. Integrate with accounting software (e.g., QuickBooks) for real-time data. Enhance "Generate Daily Summary" with custom financial metrics. Discover more workflows – Get in touch with us
by masahiro hanawa
Who is this for? This template is ideal for event organizers, conference managers, and community teams who need an automated participant management system. Perfect for workshops, conferences, meetups, or any event requiring registration and check-in tracking. What this workflow does This workflow provides end-to-end event management with two main flows: Registration Flow: ⦁ Receives participant registration via webhook ⦁ Generates unique ticket ID and stores in Google Sheets ⦁ Creates QR code using the QR Code node ⦁ Sends confirmation email with QR code attached Check-in Flow: ⦁ Scans and decodes QR code at venue entrance ⦁ Validates ticket against participant database ⦁ Blocks duplicate check-ins with clear error messages ⦁ Sends Slack notification for VIP arrivals ⦁ Returns real-time attendance statistics Setup Create a Google Sheet with columns: Ticket ID, Event ID, Name, Email, Ticket Type, Registered At, Checked In, Check-in Time Connect your Google Sheets and Gmail credentials Configure Slack for VIP notifications Set up the webhook URLs in your registration form Requirements ⦁ Google Sheets (participant database) ⦁ Gmail account (confirmation emails) ⦁ Slack workspace (VIP notifications) How to customize ⦁ Add capacity limits by checking row count before registration ⦁ Modify QR code size and format in the QR Code node ⦁ Add additional ticket types beyond VIP/standard ⦁ Integrate with payment systems for paid events
by Mohamed Abubakkar
Overall Description This workflow fully automates the process of creating and publishing professional LinkedIn posts based on real-world experience in AI automation and workflow engineering, enriched with latest industry insights from the internet, and paired with a relevant high-quality image The workflow ensures: Content relevance to AI automation, backend/frontend systems, IT Professional, human-friendly post tone Image validation before posting Post validation before publishing Automatic success/failure email alerts Worflow Logic Trigger workflow (daily, weekly, custom date) Define posting context (based on your expertise) Fetch latest AI/automation trends (you can change based on your interested trends) Filter insights relevant to your field Generate linkedin ready post using AI Agent (OpenAI API) Generate image from Open AI Image model related to the post Validate image and text quality Merge approved text and image Convert content into LinkedIn format Publish post on LinkedIn Send email notification on success or failure Setup Instructions Credentials OpenAI API Key – For text generation. LinkedIn API Token – For publishing posts. Image Generation API – DALL-E, Pollinations, or MidJourney. Gmail / SMTP – For notifications. Optional APIs: SERP API for trending topics.
by Harvex AI
AI Sales Analyst & Lead Router This n8n template handles the post-call process for your business. It uses the call recording to extract valuable data and handles the prospect based on their budget. Some use cases: Sales follow-ups, auto-qualifying leads based on budget, monetizing low-budget leads, and automatic data entry. How it works Ingestion: When a call recording is uploaded to a specific Google Drive folder, the workflow is triggered. Transcription: OpenAI's model transcribes the call recording. Analysis: The GPT-4o model analyzes the transcript and extracts crucial information. Lead classification: The extracted budget is checked against your defined threshold (e.g., $5,000). Hot leads (Budget > 5k): The workflow logs the data in Airtable (CRM), creates a high-priority task, and instantly alerts the team via a Slack channel. Warm leads (Budget < 5k): The workflow logs the data, creates a low-priority task, and emails the lead, offering a cheaper alternative. Logging: Every execution is logged in Airtable. How to use the workflow Configure Google Drive: Open the Trigger node and select the destination folder for the call recordings. Set your Threshold: Open the If node and set your desired budget (currently set to 5,000). Customize the email: Open the Gmail node in Phase 2B and modify the email according to your own preferences. Database mapping: Ensure that your Airtable base has the following columns: Client Name, Budget, Sentiment, Summary, Date, and Timeline. Test it out! Generate a sample audio file on ElevenLabs and upload it to your Google Drive folder. Requirements Google Drive** (For storing audio recordings) OpenAI API Key** (Access to OpenAI models) Airtable** (For CRM and System Logging) Trello** (For Task Management) Slack** (For Team Notifications) Gmail** (For sending automated emails)
by yu-ya
Automate order fulfillment and inventory sync from WooCommerce to Google Sheets and Slack This workflow provides a robust, end-to-end automated pipeline for managing e-commerce orders. It bridges the gap between your storefront and your fulfillment team by handling inventory validation, multi-channel notifications, and centralized data logging. Who’s it for? This template is designed for e-commerce business owners and operations managers using WooCommerce who want to eliminate manual order processing. It is ideal for teams that need real-time updates on stock availability and automated communication with both customers and warehouse staff. How it works Order Capture: The workflow triggers via a WooCommerce Webhook (real-time) or a Schedule Trigger (hourly sync). Data Extraction: It parses complex order JSON into a clean, usable format. Inventory Check: The system iterates through each line item to verify stock levels. Fulfillment Logic: It determines if an order is "Ready" or "Backordered" and calculates estimated shipping priorities. Multi-Channel Notification: In-Stock: Sends a confirmation email to the customer and alerts the fulfillment team on Slack. Backordered: Sends a delay notice to the customer and alerts the inventory manager on Slack. Data Logging: Every order is appended to a Google Sheet for long-term analytics and tracking. Requirements WooCommerce**: REST API access and Webhook setup. Gmail**: OAuth2 credentials for sending automated emails. Slack**: A Bot Token with permissions to post in #fulfillment and #alerts channels. Google Sheets**: A spreadsheet prepared with headers matching the order data. How to set up Credentials: Connect your WooCommerce, Gmail, Slack, and Google Sheets accounts in the respective nodes. WooCommerce Webhook: Copy the Webhook URL from the first node and paste it into your WooCommerce Webhook settings (Topic: Order Created). Inventory Logic: The "Check Inventory" node currently uses a simulated Code node. Replace this logic with a lookup to your actual inventory database or ERP system. Google Sheets: Open the "Log Order to Sheets" node and select your specific Spreadsheet ID and Sheet Name. How to customize Shipping Rates**: Modify the "Process Order Logic" node to include your specific carrier rates or integrate a shipping API (like ShipStation). Priority Rules**: Adjust the logic to flag "High Value" orders or specific VIP customers for faster processing. Messaging**: Customize the Gmail and Slack message templates to match your brand's voice.
by Ian Kerins
Overview This n8n template automates the generation of local business leads by scraping Google Maps. It goes beyond basic search results by visiting individual business pages to extract detailed contact information, reviews, and attributes (like LGBTQ+ friendly status). It includes built-in deduplication against a Google Sheet to ensure you only receive alerts for new leads. Who is this for? Marketing Agencies**: Finding local clients for services. Sales Teams**: Building lists of prospects in specific cities. Recruiters**: Finding businesses in specific niches. Researchers**: Gathering data on local business landscapes. What problems it solves Manual Data Entry**: Eliminates the need to copy-paste business details from Maps. Duplicate Leads**: Automatically checks against your database to prevent duplicate entries. Incomplete Data**: Performs a "deep scrape" to get data often missing from list views (websites, full phone numbers, reviews). Delayed Action**: Sends instant alerts via Gmail and Slack so you can act on new leads immediately. How it works Input: Takes a city name via a form (or can be scheduled). Search: Uses ScrapeOps to search Google Maps for your target keyword (e.g., "Dentist"). Deep Extraction: Visits each business profile to scrape phone numbers, websites, ratings, and reviews. Validation: Compares found businesses with your existing Google Sheet database. Action: Saves new leads to the sheet and notifies you via Gmail and Slack. Set up steps (~ 10-15 minutes) ScrapeOps Account: Register for a free API key at ScrapeOps. Google Sheet: Create a new Google Sheet. Add these headers: businessName, phone, website, rating, totalReviews, address, city, category, mapUrl, status, checkedAt, lgbtqFriendly, review1, review2, review3. Or duplicate this Template Sheet. Configure Nodes: Set Google Maps Configuration: Set your keyword (e.g., "dentist", "plumber"). Google Sheets Nodes: Connect your account and select the sheet you created. Gmail & Slack Nodes: Update with your email address and Slack channel. Pre-conditions An n8n instance (Cloud or Self-hosted). A ScrapeOps API Key (Free tier available). Google Cloud Console project with Gmail and Sheets APIs enabled (for credentials). Disclaimer This template uses ScrapeOps as a community node. You are responsible for complying with Google's Terms of Use, robots directives, and applicable laws in your jurisdiction. Scraping targets may change at any time; adjust render/scroll/wait settings and parsers as needed. Use responsibly for legitimate business purposes. Key Features The ScrapeOps n8n node provides access to three main APIs: 1. Proxy API Access to ScrapeOps' proxy aggregator for reliable web scraping: Smart proxy rotation across multiple providers JavaScript rendering support Anti-bot bypass capabilities Geo-targeting options Mobile and residential proxy support Full Documentation: n8n Proxy API Aggregator 2. Parser API Extract structured data from popular websites without maintaining your own parsers: Supported Sites:** Amazon, eBay, Walmart, Indeed, Redfin Page Types:** Product pages, search results, reviews, categories Returns clean, structured JSON data Full Documentation: n8n Parser API 3. Data API Direct access to structured data endpoints: Amazon Product API:** Get product details by ASIN or URL Amazon Search API:** Search products and get structured results Full Documentation: n8n Data APIs
by ScoutNow
Instantly Track Reddit Discussions and Generate Insights Manually monitoring Reddit for relevant discussions can be overwhelming. This automation does all the heavy lifting by automatically searching for keywords across selected subreddits or the entire Reddit, analyzing each post with GPT-5-Mini, and saving structured insights in your Notion database. Optionally, receive daily email notifications summarizing new discussions without lifting a finger. Key Features Daily Automated Reddit Monitoring** Checks Reddit once a day for new posts matching your keywords in selected subreddits or across all of Reddit. AI-Powered Analysis with Custom Prompts** Uses GPT-5-Mini to: Assign a relevance score to each post based on your defined priorities. Generate a suggested comment tailored to your audience or engagement strategy. Allow custom prompts so you can tweak AI behavior for lead generation, competitor monitoring, or brand mentions. Notion Integration** Saves all posts, relevance scores, and AI-generated comments directly into your Notion database for easy tracking and collaboration. Optional Email Alerts** Sends a clean, HTML-formatted email summarizing new discussions and insights. No API Keys Required for Reddit** Works with the official Reddit API without requiring users to create credentials. Customizable Inputs** Users define keywords, subreddits, relevance criteria, custom prompts, and notification preferences with minimal setup. Setup Instructions 1. Configure Keywords and Subreddits Open the Define Keywords and Subreddits node. Enter your target keywords and choose specific subreddits, or enable search across all Reddit. Map the inputs to the workflow’s search nodes. 2. Connect OpenAI (GPT-5-Mini) Create an OpenAI account and obtain your API key. Open the AI Analysis Node in the workflow. Paste your OpenAI API key into the credentials field. Customize your prompts to define how GPT-5-Mini: Scores relevance based on your specific criteria. Generates suggested comments tailored to your objectives (e.g., lead generation, brand engagement, competitor analysis). Test the node to ensure relevance scoring and suggested comments are generated correctly. 3. Connect Notion Duplicate the provided Notion template into your workspace. Obtain your Notion integration secret from Notion settings. Paste the secret into the Add Each Post to Notion Database node. Test the connection to ensure posts are saved correctly. 4. Optional Email Notifications Setup Google API credentials in the Google Cloud Console. Authenticate Gmail in the workflow. Map the recipient email and customize the notification format. Test sending an email to confirm delivery. 5. Configure Workflow Trigger Import the workflow into n8n. Ensure the daily trigger is enabled. Optionally adjust schedule or notification settings. How It Works Daily Trigger: Starts the workflow once per day. Reddit Search: Queries new posts based on user-defined keywords. AI Analysis: GPT-5-Mini evaluates relevance score and generates suggested comments based on your custom prompts. Save & Notify: Posts are saved to Notion and optionally summarized via email. Example Use Cases Generate leads by identifying potential prospects discussing your industry or product. Monitor brand mentions to stay on top of conversations around your company. Track competitor activity across relevant subreddits. Keep a daily digest of trending posts for market research or content ideas. Automate engagement by posting AI-generated suggested comments. Requirements | Tool | Purpose | | -------------- | ------------------------------------------------- | | Notion Account | Store posts, relevance scores, and comments | | Gmail Account | Optional daily email notifications | | n8n | Run, schedule, and manage the workflow | | OpenAI API Key | Access GPT-5-Mini for relevance scoring and AI-generated comments |
by Oneclick AI Squad
Enhance financial oversight with this automated n8n workflow. Triggered every 5 minutes, it fetches real-time bank transactions via an API, enriches and transforms the data, and applies smart logic to detect critical, high, and medium priority alerts based on error conditions, amounts, or risk scores. It sends multi-channel notifications via email and Slack, logs all data to Google Sheets, and generates summary statistics for comprehensive tracking. 💰🚨 Key Features Real-time monitoring every 5 minutes for instant alerts. Smart prioritization (Critical, High, Medium) based on risk and errors. Multi-channel notifications via email and Slack. Detailed logging and summary reports in Google Sheets. How It Works Schedule Trigger: Runs every 5 minutes. Fetch Transactions: HTTP request retrieves real-time transaction data. API Error?: If condition for error logic is met, sends error alert. Enrich & Transform Data: Advanced risk calculation enhances data. Critical Alert?: If condition (50% or risk > 8) is met, raises alert. High Priority?: If condition (5% or risk > 7) is met, raises alert. Medium Priority?: If condition is met, raises alert. Log Priority to Sheet: Google Sheets appends critical, high, or medium priority data. Send Critical Email: HTML email to execute sheets append. Send High Priority Email: Email to finance team. Send High Priority Slack: Slack notification to finance team. Send Medium Priority Email: Email to finance team. Merge All Alerts: Combines all alerts for comprehensive tracking. Generate Summary Stats: Code block for analytics. Log Summary to Sheet: Summary statistics storage. Setup Instructions Import the workflow into n8n and configure the bank API credentials in "Fetch Transactions." Set up Google Sheets OAuth2 and replace the sheet ID for logging nodes. Configure Gmail API Key and Slack Bot Token for alerts. Test the workflow with sample transaction data exceeding risk or amount thresholds. Adjust priority conditions (e.g., 50%, 5%, risk > 8) based on your risk policy. Prerequisites Bank API access with real-time transaction data (e.g., https://api.bank.com) Google Sheets OAuth2 credentials Gmail API Key for email alerts Slack Bot Token (with chat:write permissions) Structured transaction data format Google Sheet Structure: Create a sheet with columns: Transaction ID Amount Date Risk Score Priority (Critical/High/Medium) Alert Sent Summary Stats Updated At Modification Options Adjust the "Schedule Trigger" interval (e.g., every 10 minutes). Modify "Critical Alert?" and "High Priority?" conditions for custom thresholds. Customize email and Slack templates with branded messaging. Integrate with fraud detection tools for enhanced risk analysis. Enhance "Generate Summary Stats" with additional metrics (e.g., average risk). Discover more workflows – Get in touch with us
by Rahul Joshi
Description Streamline client retention and contract renewals by automatically identifying expiring accounts, sending personalized reminder emails, and notifying account managers through Slack. This workflow ensures timely outreach, improved renewal rates, and centralized tracking — without manual effort. 🔁📧📅 What This Template Does Triggers daily at 9 AM to check for contracts expiring within 10 days. ⏰ Fetches all client records from GoHighLevel CRM. 🗂️ Validates client data to ensure required custom fields (Contract End Date & Account Manager) are available. 🧩 Filters expiring contracts and formats key client details (name, email, expiry date). 🔍 Sends renewal reminder emails to clients using Gmail. 💌 Notifies account managers in Slack with full client and renewal details. 💬 Generates a summary report of total reminders sent and execution status. 📋 Logs all reminders and timestamps into Google Sheets for performance tracking. 📊 Key Benefits ✅ Never miss renewal deadlines again ✅ Improve client retention and satisfaction ✅ Reduce manual tracking and follow-up work ✅ Keep account managers informed in real-time ✅ Maintain a clear audit trail of renewal activities Features Automated daily scheduling (9 AM trigger) GoHighLevel integration for client data Dynamic filtering for contracts expiring within 10 days Gmail email automation for personalized messages Slack notifications for internal visibility Google Sheets logging for analytics and reporting Requirements GoHighLevel account with access to Contacts API Custom fields: Contract End Date and Account Manager Gmail account with OAuth2 credentials Slack Bot token with chat:write permission Google Sheets OAuth2 credentials Target Audience Account management and client success teams Agencies handling multiple client contracts Businesses with recurring subscriptions or service renewals Teams wanting automated retention workflows Step-by-Step Setup Instructions Connect your GoHighLevel account and ensure contract-related custom fields are configured. Set your Slack channel ID where renewal notifications will be sent. Connect Gmail for automated client communication. Link Google Sheets for centralized renewal logging. Adjust reminder window in the code node (daysUntilExpiry <= 10) as per your needs. Test the workflow once manually, then enable scheduling for automation.
by Oneclick AI Squad
Optimize your performance review process with this automated workflow. Running daily at 8 AM, it retrieves scheduled reviews from a Google Sheet, validates upcoming sessions, processes each review, and sends email reminders to participants. It also updates Google Calendar events, notifies HR via Slack, and logs review statuses back into the sheet — ensuring a seamless, tracked, and multi-channel communication experience. 📅🤖 What This Template Does Step 1: Triggers Daily Check at 8 AM to initiate the review process. ⏰ Step 2: Gets Review Schedule by reading planned reviews from a Google Sheet. Step 3: Filters Upcoming Reviews to focus on sessions within the next 3 days. Step 4: Validates Reviews Scheduled? Ensures reviews exist and are ready to process. Step 5: Splits into Manual to handle each review individually. Step 6: Prepares Review Data for notifications and updates. Step 7: Branches actions: → Sends Email Reminder to participants. → Updates Calendar Event with the scheduled session. → Notifies HR on Slack with review details. → Updates Review Status in the Google Sheet with logged feedback. Key Benefits Automates daily review scheduling and reminders Ensures timely calendar updates and notifications Centralizes feedback logging in Google Sheets Enhances HR visibility with Slack alerts Reduces manual coordination efforts Improves review process consistency Features Daily trigger at 8 AM Google Sheet integration for review schedule Filtering for upcoming reviews (next 3 days) Validation of scheduled reviews Multi-channel notifications (email, Slack) Google Calendar event creation Real-time status updates in sheets Manual processing for individual reviews Requirements GOOGLE_SHEET_ID**: Your Google Sheet ID (structured as below) Credentials Needed:** Google Sheets OAuth2 Gmail API Key Google Calendar OAuth2 Slack Bot Token (with chat:write permissions) Customize:** • Review schedule columns (e.g., Employee, Date, Reviewer, Status) • Reminder email template • Slack channel for HR notifications • Calendar event duration Google Sheet Structure: Create a sheet with columns: Employee Name Review Date Reviewer Status Feedback Updated At Target Audience HR teams managing performance reviews 👥 Managers scheduling regular check-ins ⏳ Organizations ensuring review compliance 📋 Remote teams needing centralized updates 🌐 Companies prioritizing employee feedback 📈 Step-by-Step Setup Instructions Set up Google Sheet → Create a sheet with columns: Employee Name, Review Date, Reviewer, Status, Feedback, Updated At. → Replace YOUR_SHEET_ID in the workflow with your actual Sheet ID. Configure Daily Trigger → Set the "Daily Check at 8 AM" node to run at 8:00 AM IST (adjust for timezone if needed). Connect Google Calendar → Enable Google Calendar OAuth2 and select the relevant calendar (e.g., hr@company.com). Customize Review Filter → In "Filter Upcoming Reviews," set the range to check the next 3 days from today (e.g., October 24–27, 2025). Set Up Notifications → Edit the "Send Email Reminder" template (e.g., include review date and link). → Configure "Notify HR on Slack" with your HR channel ID. Test the Flow → Add a test review entry in the sheet (e.g., date within 3 days). → Run manually or wait until 8 AM IST on October 25, 2025 → Verify email, calendar event, Slack message, and sheet update. Go Live → Enable the daily trigger. → Monitor sheet and notifications for the first run. Workflow Complete! Reviews scheduled, reminders sent, and feedback logged — all on autopilot. Metrics to Track: Reviews scheduled daily Reminder delivery success Calendar update rate Feedback logging completion
by Habeeb Mohammed
Who's it for This workflow transforms hours of manual video editing into an automated AI-powered pipeline. Perfect for anyone looking to repurpose long-form content into viral short-form clips. Ideal users include: Content Creators** - YouTubers producing long-form videos who want to maximize reach by automatically generating TikTok, Reels, and Shorts from their content Social Media Managers** - Agencies and freelancers handling multiple clients who need to scale clip production without hiring additional editors Podcasters** - Audio and video podcast hosts wanting to create promotional clips highlighting the best moments from each episode Video Editors** - Professional editors looking to automate repetitive clipping tasks and focus on creative decisions rather than technical execution Marketing Teams** - B2B and B2C teams extracting key moments from webinars, product demos, tutorials, and educational content for social campaigns Whether you're a solo creator or managing content at scale, this workflow saves 5-10 hours per video while maintaining professional quality output. How it works This workflow combines AI analysis with professional video editing tools to automatically identify and produce viral-ready clips from any YouTube video. The process flows through three main stages: Stage 1: Download and Analysis Submit a YouTube URL through the built-in form trigger yt-dlp simultaneously downloads the video in highest quality and extracts subtitles or auto-generated transcripts The transcript is intelligently chunked into 150-segment batches for optimal AI processing Each batch is analyzed by Gemini AI using specialized prompts that evaluate viral potential based on hooks, pacing, emotional peaks, and engagement triggers AI identifies 3-5 high-quality moments per batch and assigns virality scores to each potential clip Stage 2: Clip Selection and Extraction All AI-identified clips are merged and sorted by their virality scores The top 10 candidates are automatically selected for processing FFmpeg extracts each clip segment from the original video at precise timestamps Clips are processed sequentially to prevent system overload Stage 3: Professional Editing Pipeline Each clip enters a multi-stage editing subworkflow with automated operations: Smart 9:16 cropping that intelligently frames the subject for vertical platforms Precise trimming to remove dead air and optimize pacing Dynamic subtitle generation with sizing calculated based on video resolution Professional subtitle styling including bold text, high-contrast colors, strategic positioning, and text wrapping Subtitles are burned directly into the video as permanent overlays Final Delivery: The workflow processes clips with configurable wait times to match your system's capabilities. When all clips complete processing, you receive an email notification and find your social-ready clips in the /data/clips/ directory, ready for upload to any platform. Requirements ⚠️ Self-hosted n8n only - This workflow requires command-line access and cannot run on n8n Cloud due to its dependency on system-level tools. System dependencies you must install: FFmpeg** - Industry-standard video processing tool for trimming, cropping, and subtitle burning. Install on your n8n host system following this comprehensive guide. Most Linux systems can install via package manager: apt-get install ffmpeg or yum install ffmpeg. yt-dlp** - Advanced YouTube downloader that handles video and subtitle extraction. Follow official installation instructions. Recommended: pip install yt-dlp or direct binary download. FFprobe** - Usually included with FFmpeg, used for detecting video dimensions for dynamic subtitle sizing. Credentials needed: Google Gemini API account** - Powers the AI analysis for clip identification and editing instructions. Get your free API key with generous free tier limits. Gmail OAuth2 credentials** - Enables email notifications when clips are ready. Set up through n8n's credential system. Storage requirements: Ensure /data/clips/ directory exists with write permissions Plan for 2-3x the original video size in temporary storage during processing Final clips typically use 10-30% of original video size How to set up Step 1: Install system dependencies SSH into your n8n host and install required tools. For Ubuntu/Debian systems, run: apt-get update apt-get install ffmpeg pip install yt-dlp Verify installations by running ffmpeg -version and yt-dlp --version. Step 2: Configure directory structure Create the clips output directory with proper permissions: mkdir -p /data/clips chmod 755 /data/clips Step 3: Import the workflow Download the workflow JSON and import it into your n8n instance. You'll see several sticky notes color-coded by stage: yellow for description, blue for download/analysis, pink for editing operations, and green for clipping. Step 4: Set up credentials Navigate to the "viral clips identification" node and add your Google Gemini API credentials. The workflow uses the gemini-2.5-flash model for optimal speed and quality balance. Then configure Gmail OAuth2 in the "Send a message" node following n8n's authentication wizard. Step 5: Update email notification Open the "Send a message" node and replace habeebmohammedfaiz@gmail.com with your email address. Step 6: Create the editing subworkflow The workflow references a separate subworkflow for the editing pipeline. Create a new workflow in n8n, copy all nodes from the "EDITING" section (between the Execute Workflow Trigger and the final output), and save it. Note the workflow ID from the URL. Step 7: Link the subworkflow In the main workflow, open the "Call subworkflow" node and update the workflow ID to match your newly created editing workflow. Step 8: Test with a short video Start with a 5-10 minute YouTube video for your first test. Use the manual trigger or form submission. Monitor the execution to ensure all nodes complete successfully and clips appear in /data/clips/. Step 9: Adjust performance settings Based on your system's performance during the test, modify the Wait node durations. Systems with 8GB+ RAM and modern CPUs can reduce wait times to 30 seconds. Limited systems should keep 60-second waits or increase them. How to customize the workflow Adjust clip quantity and quality thresholds Open the "filter out top clips according to score" node. The code currently uses .slice(0, 10) to select the top 10 clips. Change this number based on your needs: use .slice(0, 5) for only the best clips, or .slice(0, 20) for more options. You can also add score filtering by adding results.filter(c => c.score > 0.7) before the slice operation to only include clips with virality scores above 70%. Customize subtitle appearance Navigate to the "calculate relative subtitle size" node. The JavaScript code defines several styling variables you can modify: fontSize - Currently calculated dynamically, but you can hardcode it: const fontSize = 48; fontName - Change from Arial to any system font: const fontName = 'Impact'; primaryColor - Modify text color using BGR hex format: '&H00FF00&' for green, '&HFF0000&' for red borderColor - Adjust outline color for better contrast outlineWidth - Increase from 1 to 2 or 3 for thicker borders marginV - Control vertical position (higher values move text up from bottom) Modify AI analysis prompts In the "viral clips identification" node, edit the Gemini prompt to target specific content types. For educational content, add "Focus on key teaching moments and actionable tips." For entertainment, emphasize "Identify funny moments, reactions, and unexpected events." For podcast clips, specify "Extract controversial opinions, storytelling segments, and quotable statements." Change aspect ratios The workflow defaults to 9:16 for vertical video. To create horizontal clips for YouTube or other platforms, open the "Analyze the actual whole video" node and change the aspect ratio in the JSON schema from "aspect_ratio": "9:16" to "aspect_ratio": "16:9". The AI will automatically adjust cropping coordinates accordingly. Enable audio normalization By default, audio normalization is disabled for faster processing. To enable it, open the "extract all actionable operations" node, find the audio_normalize task object, and change enabled: false to enabled: true. This ensures consistent volume levels across all clips but adds processing time. Add custom editing operations The editing pipeline is modular. You can add new operations like: Color grading by inserting FFmpeg color filters Logo overlays by adding watermark commands Intro/outro sequences by concatenating video files Background music by mixing audio tracks Add these as new task objects in the "extract all actionable operations" node following the existing pattern. Customize notification content Open the "Send a message" node to modify the email subject, body text, or add clip details. You can include clip metadata like timestamps, scores, and descriptions using expressions like {{ $json.hook }} or {{ $json.score }}. Integrate with cloud storage Add nodes after clip generation to automatically upload finished clips to Google Drive, Dropbox, AWS S3, or any n8n-supported storage service. Use the Loop Over Items1 output to access completed clip file paths. Schedule automated processing Replace the Form Trigger with a Schedule Trigger to automatically process videos from a spreadsheet or RSS feed. Combine with Google Sheets integration to maintain a queue of videos to process overnight.