by Utkarsh Kapoor
Quick Overview This workflow runs daily to generate a YouTube Shorts topic and script with Groq, render a faceless vertical video via SamAutomation (images, voiceover, subtitles), upload it to YouTube, and track status in Google Sheets. How it works Runs every day at 10:00 on a schedule. Reads niche, sub-niche, and voice settings from a Google Sheets “Config” tab. Calls the Groq Chat Completions API to generate three Shorts topic ideas and selects the first topic. Appends the selected topic to a Google Sheets “Topic Bank” tab with status set to “scripting,” then calls Groq again to generate a scene-based script plus YouTube metadata. Builds a SamAutomation render payload that generates Flux images, adds TTS voiceover, and burns word-level subtitles into a 1080×1920 video. Starts a SamAutomation render job and polls until the status is “done,” then captures the hosted MP4 URL. Uploads the video to YouTube with the generated title, description, and tags, and updates the Google Sheets “Topic Bank” row to “published” with a timestamp. Setup Create credentials for Groq (HTTP Header Auth with Authorization: Bearer ) and SamAutomation (HTTP Header Auth with X-API-Key: ). Connect Google Sheets OAuth2 and update the spreadsheet URL/ID in the Google Sheets nodes, with tabs named “Config” (selected_niche, selected_sub_niche, voice_id) and “Topic Bank” (date, niche, topic_title, hook_line, angle, target_emotion, status, published_at). Connect YouTube OAuth2, enable the YouTube Data API v3 in Google Cloud, and ensure your OAuth scopes allow uploading (for example youtube.upload). Review the YouTube upload settings (privacy status, categoryId, language) and adjust the daily cron schedule time if needed.
by WeblineIndia
Quick Overview This workflow collects income, savings, investment, and expense data via an n8n form, calculates a financial health score, generates personalized advice with Groq, stores results in Google Sheets, and posts a formatted summary and expense alert to Slack. How it works Receives financial inputs (monthly income, savings, investments, and expenses) from an n8n form submission. Normalizes the submitted values and calculates savings and investment ratios. Validates that the required numeric inputs are present and greater than zero before continuing. Computes savings, investment, and expense scores, derives an overall financial health score, and assigns a status (Excellent/Good/Needs Improvement). Uses the Groq Chat Model to generate 1–2 lines of personalized financial advice based on the computed results. Evaluates expense levels against income to create an expense alert message, waits briefly, then appends the results to Google Sheets and posts a formatted report to a Slack channel. Setup Configure the n8n Form Trigger fields as needed and share the form URL with users who will submit their financial data. Add a Groq API credential and select the model used for generating personalized financial advice. Add a Google Sheets OAuth2 credential, set the target spreadsheet and sheet tab, and ensure columns exist for income, saved, invested, expenses, scores, status, and date. Add a Slack credential, choose the target channel, and adjust the message template if you want different formatting or fields.
by n8n Lab
Quick Overview This workflow runs weekly to pull existing blog titles and prior AI ideas from Google Sheets, gathers recent keyword-matching headlines from multiple RSS feeds, uses OpenAI to generate 12 fresh blog title ideas, and appends the results back into a “New ideas” Google Sheet. How it works Runs on a weekly schedule trigger. Reads existing blog titles and previously generated AI blog titles from two tabs in Google Sheets and combines them into a single list. Fetches entries from several RSS feeds, filters for items mentioning a target keyword and published within the last 30 days, and aggregates the matching RSS titles. Merges the Google Sheets title list with the aggregated RSS titles and sends them to OpenAI with brand and editorial guidelines to generate 12 new blog title ideas as structured JSON. Splits the 12 generated items into individual rows and appends each new title into the “New ideas” tab in Google Sheets. Setup Add Google Sheets OAuth2 credentials and set the correct spreadsheet ID and sheet/tab names for the existing titles and “New ideas” tabs. Add an OpenAI API credential and select the model to use in the OpenAI chat node. Update the RSS feed URLs and the keyword filter (currently matching “n8n”) to fit your niche, and adjust the schedule trigger time if needed.
by Divyanshu Gupta
What this workflow does Automatically monitors restaurant ratings on Google Places daily, detects meaningful changes, uses Google Gemini AI to diagnose the root cause from real customer reviews, and delivers smart alerts to Slack — categorised as 🔴 Critical, 🟡 Watch, or 🟢 Positive. Why it's unique Most monitoring tools just tell you that a rating changed. RestaurantPulse tells you why — by reading actual customer reviews through AI and suggesting one concrete action to fix it. How it works Reads restaurant list from Google Sheets (add any restaurant via place_id) Fetches live rating + reviews from Google Places API Compares against last known state stored in Google Sheets AI diagnoses root cause if change detected Routes alert to Slack by severity level Logs all alerts to Google Sheets for history Prerequisites Google Places API key (console.cloud.google.com) Google Sheets OAuth2 credentials Google Gemini API key Slack OAuth2 credentials Google Sheets Setup Create a spreadsheet with two sheets: Sheet 1 — restaurant_list Columns: place_id | name | last_rating | last_review_count | last_checked Sheet 2 — alert_history Columns: timestamp | restaurant_name | old_rating | new_rating | rating_diff | alert_level | ai_diagnosis | place_id How to find place_id Call this URL in your browser: https://maps.googleapis.com/maps/api/place/findplacefromtext/json?input=RESTAURANT+NAME+CITY&inputtype=textquery&fields=place_id,name&key=YOUR_KEY Alert Levels 🔴 Critical — rating dropped 0.3+ points 🟡 Watch — rating dropped 0.1+ points OR 50+ new reviews 🟢 Positive — rating improved 0.2+ points Sample Output
by JESUS PACAHUALA ARROYO
This workflow automates the process of identifying local businesses with a weak digital presence to offer them specialized marketing services. By combining real-time data from Google Maps with the analytical power of Gemini AI, it transforms raw search results into a structured sales pipeline. How it works Data Extraction: The process starts with a form where you enter search keywords (e.g., "restaurants in Lima"). The workflow then queries the SerpApi to fetch the top local results from Google Maps. Filtering & Prioritization: It filters results by region and sorts them by rating. It specifically targets the top 5 businesses with the lowest ratings or missing information, as these represent the highest conversion opportunities. AI Analysis: The Gemini AI agent acts as a senior consultant. It analyzes each lead's weaknesses, assigns a priority score, and generates a personalized sales pitch and email copy. Record Keeping: Finally, all enriched data, including the AI-generated strategy, is formatted and saved into a Google Sheet for immediate sales action. Setup steps SerpApi:** Register at serpapi.com to get your API key and add it to the HTTP Request node credentials. Google Gemini:** Set up your Google AI Studio credentials for the AI Agent node. Google Sheets:** Create a spreadsheet with columns for Company Name, Rating, Address, AI Score, and Sales Strategy. Link it in the final node.
by Redowan Ahmed Farhan
Quick overview This workflow generates baseline website screenshots with Apify, stores them in Google Drive, and logs the file IDs in Google Sheets, then runs scheduled visual regression checks by comparing new screenshots against the baselines with Google Gemini Vision and creating a consolidated Linear issue when changes are detected. How it works Manually starts to backfill missing baselines by reading URLs from Google Sheets that do not yet have a stored base image. For each missing baseline URL, calls Apify’s screenshot actor, downloads the rendered image, uploads it to Google Drive, and updates the matching Google Sheets row with the Drive file ID. Runs weekly on a schedule and reads the list of webpages to test from Google Sheets. For each webpage, downloads the baseline image from Google Drive and captures a fresh screenshot via Apify. Sends both images to Google Gemini (vision) to detect visual differences and returns a structured list of regressions (text, number, image, color, or position). Filters out pages with no detected changes, aggregates the remaining results, and creates a Linear issue containing the regression report. Setup Add an Apify API token as HTTP Query Auth for both Apify screenshot requests. Connect Google Sheets credentials and set the correct spreadsheet/sheet, ensuring columns exist for the page URL and the baseline Drive file ID. Connect Google Drive credentials and set the destination folder for storing baseline images. Add Google Gemini API credentials for the Gemini chat model used to compare screenshots. Connect Linear credentials and select the target team ID for creating the regression report issue.
by Zain Khan
Quick Overview This scheduled workflow scans competitor ads via Adyntel (Meta, Google, and LinkedIn), extracts newly appearing terms from ad copy, and uses OpenAI to classify potential launch signals, then logs results and updates baselines in Google Sheets. How it works Runs on a schedule and reads competitor domains marked as Pending from a Google Sheets spreadsheet. For each competitor, fetches active ads from Meta, Google Ads, and LinkedIn Ads using Adyntel and combines the results. Extracts and deduplicates ad headlines and body text, then compiles a single text corpus for the current week. Loads previously known terms for the competitor from Google Sheets and deterministically extracts new terms from this week’s ads by comparing against the baseline. If no qualifying new terms are found, writes baseline terms derived from this week’s ad titles to the known_terms sheet, marks the competitor as Done, and continues to the next competitor. If new terms are found, sends the terms and ad-copy context to OpenAI to classify each term and decide whether the pattern indicates a product launch. When a launch signal is detected, appends a record to the launch_signals sheet, adds the newly discovered terms (with categories) to known_terms, updates the competitor status to Done, and formats a Slack-ready alert message. Setup Create a Google Sheets spreadsheet with three tabs named competitors, known_terms, and launch_signals, and ensure the expected columns exist (at minimum: competitors.domain and competitors.status, known_terms.domain and known_terms.term, and the launch_signals columns used for logging). Connect Google Sheets OAuth2 credentials in n8n and update the spreadsheet ID/sheet selectors if you are not using the provided document. Add an Adyntel API credential so the workflow can query Meta, Google Ads, and LinkedIn Ads by company domain. Add an OpenAI API credential (Chat Model) and select the model you want to use for term classification and launch-signal detection. Populate the competitors sheet with competitor_name, domain, and set status to Pending for rows you want processed, then adjust the schedule interval to your preferred scan frequency.
by Nitesh
🚀 How the System Works This automation operates in three distinct phases: Ingestion, Storage, and Generation. | Phase | Component | What Happens | | --- | --- | --- | | 1. The Trigger | Google Drive | Every time you update your rag_posts.csv in your Drive folder, the system wakes up. | | 2. The Brain | Gemini Embeddings | It turns your text into "Vectors" (numbers) so the AI understands the meaning of your writing style, not just the words. | | 3. The Vault | MongoDB Atlas | Your posts are stored in a vector database, acting as a "Style Library" the AI can browse instantly. | | 4. The Writer | AI Agents | When you ask for a post, the AI searches your vault, finds the best matches, and mimics the formatting exactly. | 🛠️ Step-by-Step Setup Guide 1. Prepare Your Data Source Create a Google Drive Folder and note its ID (the long string of characters in the URL). Create a CSV file named rag_posts.csv. Columns needed:** Post Text, Hook Type, Engagement, Category. Upload it to that folder. 2. Configure MongoDB Atlas (The Vector Store) Sign up for a free MongoDB Atlas account. Create a Cluster and a Database named n8n_rag_data. Crucial Step:* Create an *Atlas Vector Search Index** on your collection. Name the index data_index. 3. Google Gemini API Go to the Google AI Studio. Generate an API Key. This will power both the "Embeddings" (understanding the text) and the "Chat" (writing the post). 4. Connect the n8n Nodes Google Drive Trigger:** Paste your Folder ID and select fileUpdated. MongoDB Nodes:** Enter your Connection String (SRV) and credentials. Gemini Nodes:** Paste your API Key into the Credentials section. Google Sheets Tool:** Link your specific spreadsheet ID so the "Knowledge Base Agent 1" can read specific rows.
by DataForSEO
Once a week, this workflow automatically scans Google for newly ranked keywords for your domains using the DataForSEO API. It pulls the latest data for every target you track, stores a fresh snapshot in Google Sheets, and compares it to the previous run. Any newly ranked keywords are automatically added to a dedicated Google Sheet, creating an easy-to-review log. Lastly, the workflow sends a short summary to Slack, so your team can quickly see what’s changed without manual checks. Who’s it for SEO specialists and marketers who want to automatically track newly ranked keywords for their target domains and get quick weekly updates without doing manual Google checks. What it does This workflow automatically fetches new keywords your domains started ranking for on Google using DataForSEO Labs API, saves them into Google Sheets, and sends you a Slack summary so you can quickly see what’s changed. How it works Triggers on your chosen schedule (default: once a week). Reads your keywords and target domains from Google Sheets. Extracts fresh ranking data from Google via DataForSEO API. Compares the results with the previous run. Adds newly ranked keywords into a dedicated Google Sheet. Sends a weekly summary message to Slack. Requirements DataForSEO account A spreadsheet in Google Sheets with your keywords that matches the required column structure (as in the example). A spreadsheet in Google Sheets with your target domains that matches the required column structure (as in the example). Slack account Customization You can easily customize the workflow by changing the schedule, exporting results to dashboards and other tools (such as Looker Studio and BigQuery) instead of Google Sheets, and modifying the Slack message text.
by JanSelga
Quick overview Tool useful for any language exams. It is a chat-based workflow that uses Google Sheets in Structure English|your language that using free Groq model (Llama 3.3) generate lists of 10 words that you need to provide answer based on your while model helps How it works Receives a chat message as the trigger input. Checks whether the message contains the word “generate” to decide if it should create a new quiz set or continue the current session. When “generate” is included, reads vocabulary rows (English and your language columns) from a specified Google Sheets range. Randomly shuffles the rows, selects 10 pairs, and formats them as a clean list of {english, your-language} objects. Sends the user message and the selected word pairs to a Groq Llama 3.3 chat model that runs the quiz conversation. Uses a buffer memory window to keep recent chat context so the agent can track which words are answered and which still need guesses. Setup Connect Google Sheets OAuth credentials and set the correct spreadsheet URL, sheet name, and range that contains “English word” and “your language words” columns. Add Groq API credentials and confirm the selected model (llama-3.3-70b-versatile) is available in your Groq account. Activate the workflow and start the chat, sending a message containing “generate” to pull a new randomized set of 10 words from Google Sheets.
by WeblineIndia
Compliance Checklist Auto-Generator > n8n + Gemini + Google Sheets This workflow automatically monitors a tax compliance RSS feed, filters relevant regulatory updates, analyzes them using AI and generates structured compliance checklists for actionable updates. Only meaningful updates are logged into Google Sheets for tracking and follow-up. Quick Implementation Steps Create a Google Sheet with the following columns: Sr. No., Date Added, Published Date, Title, Link, Category, GUID, Summary, Reason, Priority, Checklist, Owner Team, Due Timeline, Status For automatic numbering, set cell A2 to: =ARRAYFORMULA(IF(B2:B<>"", ROW(B2:B)-1, "")) Connect Google Sheets credentials in n8n Configure Gemini (Google AI) credentials Verify RSS feed URL (tax/compliance focused) Test HTML extraction selector for article summaries Activate workflow What It Does This workflow continuously monitors a tax-focused RSS feed and identifies relevant compliance updates using keyword-based filtering. It ensures that only meaningful regulatory content moves forward in the process. Each relevant article is processed individually to avoid API overload and improve accuracy. The workflow fetches the full article content and extracts a concise summary section, which is then prepared for AI analysis. Using Gemini AI, the workflow evaluates whether the update requires action from a compliance team. If actionable, it generates a structured output including summary, reasoning, priority, checklist, responsible team and timeline. These results are then stored in Google Sheets for centralized tracking. Who It's For Compliance teams monitoring regulatory changes Finance and tax professionals Legal and risk management teams Organizations needing structured compliance tracking Automation enthusiasts building regulatory intelligence systems Requirements n8n account (self-hosted or cloud) Google Sheets account and credentials Google Gemini API credentials Access to a relevant RSS feed (e.g., tax or regulatory updates) How It Works & Setup Guide Setup Instructions Configure the RSS Feed Trigger with a reliable tax compliance feed URL Set polling interval (e.g., hourly) Connect Google Sheets node to your spreadsheet (ensure columns match exactly: Sr. No., Date Added, Published Date, Title, Link, Category, GUID, Summary, Reason, Priority, Checklist, Owner Team, Due Timeline, Status) Configure Gemini AI credentials Verify HTML Extract node selector for article summary Workflow Logic RSS Feed Trigger fetches new tax-related updates at defined intervals Code node filters relevant updates using predefined include/exclude keywords Articles are processed one at a time using Split in Batches HTTP Request fetches full article content HTML Extract extracts a concise summary section ("In brief") Set node prepares structured data for AI Gemini AI analyzes content and generates structured JSON output Code node parses AI response safely IF node checks whether the update is actionable Actionable updates are formatted and appended to Google Sheets Non-actionable updates are skipped Wait node ensures rate limiting before processing next article How To Customize Nodes Filter Relevant Tax Compliance Updates (Code Node):** Modify include/exclude keyword arrays based on your industry HTML Extract Node:** Update CSS selector if your RSS source changes structure Gemini Prompt:** Customize instructions to match your compliance policies Google Sheets Mapping:** Ensure column names exactly match: Sr. No., Date Added, Published Date, Title, Link, Category, GUID, Summary, Reason, Priority, Checklist, Owner Team, Due Timeline, Status. Note:** The Sr. No. column is auto-generated using a formula and is NOT populated by the workflow. Wait Node:** Increase/decrease delay based on API rate limits Add-ons Add Slack or Email alerts for high-priority updates Store all updates (not just actionable ones) for audit trails Add duplicate detection using GUID or link Integrate with task management tools (e.g., Google Tasks, Jira) Add severity-based routing logic Use Case Examples Tracking global tax law updates for multinational companies Monitoring VAT or GST regulatory changes Automating compliance checklist generation for audit teams Building internal compliance dashboards Supporting legal teams with structured regulatory insights There can be many more use cases depending on how you extend this workflow. Troubleshooting Guide | Issue | Possible Cause | Solution | | ------------------------- | ---------------------------------- | ------------------------------------------------- | | No data from RSS feed | Incorrect feed URL or no new items | Verify RSS URL and ensure new items are published | | No items after filter | Keywords too strict | Adjust include/exclude keyword lists | | Empty summary extracted | Incorrect CSS selector | Inspect page HTML and update selector | | AI response parsing fails | Invalid JSON from AI | Ensure prompt enforces strict JSON output | | No rows in Google Sheets | IF condition filtering everything | Check actionable logic and AI output | | Workflow stops midway | API rate limits | Increase Wait node duration | Need Help? If you need assistance setting up this workflow, customizing it for your business or building advanced automation solutions, feel free to reach out. WeblineIndia can help you: Customize this workflow for your industry Add advanced integrations (Slack, CRM, dashboards) Build end-to-end automation systems Optimize performance and scalability Contact WeblineIndia for expert support and tailored automation solutions.
by Felix
How It Works This workflow automates multi-currency expense tracking via Telegram. Send a receipt photo to your bot, and it automatically extracts the invoice details, converts the amount to EUR using a live exchange rate, and logs everything straight into Google Sheets. Flow overview: User sends a receipt photo via Telegram easybits Extractor reads the document and returns structured data The data is normalised and cleaned The exchange rate is fetched (with fallback if needed) The amount is converted to EUR The result is appended to Google Sheets Step-by-Step Setup Guide 1. Set Up Your easybits Extractor Pipeline Before connecting this workflow, you need a configured extraction pipeline on easybits. Go to extractor.easybits.tech and click "Create a Pipeline". Fill in the Pipeline Name and Description – describe the type of document you're processing (e.g. "Invoice / Receipt"). Upload a sample receipt or invoice as your reference document. Click "Map Fields" and define the following fields to extract: invoice_number (String) – The unique identifier of the invoice, e.g. INV-20240301 currency (String) – The currency code found on the invoice, e.g. USD amount (Number) – The total amount due on the invoice, e.g. 149.99 Click "Save & Test Pipeline" in the Test tab to verify the extraction works correctly. 2. Connect the easybits Node in n8n Once you have finalized your pipeline, go back to your dashboard and click Pipelines in the left sidebar. Click "View Pipeline" on the pipeline you want to connect. On the Pipeline Details page, you will find: API URL: https://extractor.easybits.tech/api/pipelines/[YOUR_PIPELINE_ID] API Key: Your unique authentication token Copy both values and integrate them into the "easybits Extractor" HTTP Request node in the workflow. > To keep in mind: Each pipeline has its own API Key and Pipeline ID. If you have multiple pipelines (for example, one for receipts and one for invoices), you will need separate credentials for each. > Important: When adding your API Key, set the Credential Type to Bearer Auth and paste your API Key as the Bearer Token value. 3. Connect Your Telegram Bot Open the Telegram: Receipt Photo node. Connect your Telegram Bot credentials (Bot Token from @BotFather). Make sure "Download" is enabled under Additional Fields so the image binary is forwarded correctly. 4. Connect Google Sheets Open the Append row in sheet node. Connect your Google Sheets account via OAuth2. Select your target spreadsheet and sheet. Make sure your sheet has at least these two columns: Vendor Name and Overall Due. 5. Activate the Workflow Click the "Active" toggle in the top-right corner of n8n to enable the workflow. Send a receipt photo to your Telegram bot to test it end to end. Check your Google Sheet – a new row with the invoice reference and EUR amount should appear.