Zip code-based business lead generation with Google Maps and Sheets
Who Is This For?
This workflow is perfect for anyone who wants to automate lead generation using n8n without paying for expensive scraping tools. It uses simple Google Maps API requests and Google Sheets to pull business data by ZIP code and category, then extracts emails at no extra cost.
What This Workflow Does
- Automated Lead Generation: Runs on a schedule to process ZIP codes and business categories automatically.
- Data Extraction: Queries Google Maps for businesses based on each ZIP code + subcategory combo.
- Data Processing:
- Skips entries with a STATUS = "N/A"
- Removes duplicate results using
place.id - Extracts and formats relevant business details
- Error Handling:
- Uses exponential backoff when hitting rate limits
- Stops after 10 retry attempts
- Data Storage:
- Saves results directly to Google Sheets
- Tracks which ZIP/subcategory pairs have been completed
Requirements
- Google Maps API (business lookup)
- Google Sheets OAuth2 (data storage)
- Telegram Bot API (notifications)
- Rapiwa API (WhatsApp alerts)
How to Use — Step-by-Step Setup
1. Set Up Credentials in n8n
- Add your Google Maps API credentials (named "Google MAP")
- Add Google Sheets OAuth2 credentials (named "Google Sheets")
- Add Rapiwa API credentials (named "Rapiwa account 2")
2. Prepare Your Google Sheet
Create one Sheet document with these tabs:
- zip — ZIP codes to process
- maps categories — Business categories/subcategories
- result — Where extracted business data will be stored Then update:
- The document ID inside the workflow nodes
- The sheet IDs (gid values) so they match your actual tabs
3. Customize the Workflow
- Change the Limit node to control how many ZIP codes run per batch (default: 10)
- Adjust retry limits in the relevant nodes (default: 10 attempts)
- Modify the Schedule node to set your preferred run frequency (default: hourly) > This gives you a simple, scalable, nearly free system for generating targeted leads automatically.
Useful Links
- MAP API Create Project & API
- How to Use google map docs
- Rapiwa: Get your WhatsApp API credentials
Support & Help
- WhatsApp: Chat on WhatsApp
- Discord: SpaGreen Community
- Facebook Group: SpaGreen Support
- Website: https://spagreen.net
- Developer Portfolio: Codecanyon SpaGreen
Zip Code Based Business Lead Generation with Google Maps and Sheets
This n8n workflow automates the process of generating business leads based on a provided zip code, leveraging the Google Maps Places API and Google Sheets. It fetches business data, filters out duplicates, and stores the enriched leads in a Google Sheet. It also includes optional notifications via Telegram or Discord for successful runs or when no new leads are found.
What it does
- Triggers on a Schedule: The workflow starts on a predefined schedule (e.g., daily, weekly).
- Fetches Zip Codes: Reads a list of zip codes from a Google Sheet.
- Loops Through Zip Codes: Processes each zip code individually.
- Generates Google Maps API URL: Constructs a Google Maps Places API URL using the zip code and a predefined business type (e.g., "restaurants", "dentists").
- Fetches Business Data: Makes an HTTP request to the Google Maps Places API to retrieve business information for the given zip code and business type.
- Extracts Relevant Fields: Processes the API response to extract key business details such as name, address, phone number, and website.
- Checks for Existing Leads: Reads existing leads from a "Leads" sheet in Google Sheets to avoid duplicates.
- Filters New Leads: Compares the fetched business data with existing leads and filters out any duplicates.
- Limits New Leads (Optional): If configured, limits the number of new leads added in a single run.
- Appends New Leads to Google Sheet: Adds the unique, new business leads to the "Leads" Google Sheet.
- Sends Success Notification: If new leads are added, sends a success message with the count of new leads to Telegram or Discord.
- Sends No New Leads Notification: If no new leads are found, sends a notification to Telegram or Discord.
Prerequisites/Requirements
- n8n Instance: A running n8n instance.
- Google Account: A Google account with access to Google Sheets.
- Google Cloud Project & API Key:
- A Google Cloud Project with the "Places API" enabled.
- An API Key for the Google Maps Places API.
- Google Sheets Credential: An n8n credential configured for Google Sheets.
- Telegram Bot (Optional): A Telegram bot token and chat ID for notifications.
- Discord Webhook (Optional): A Discord webhook URL for notifications.
Setup/Usage
- Import the Workflow: Import the provided JSON into your n8n instance.
- Configure Credentials:
- Google Sheets: Set up your Google Sheets credential.
- Telegram (Optional): Set up your Telegram credential.
- Discord (Optional): Set up your Discord credential.
- Google Sheets Configuration:
- Create a Google Sheet named "Lead Generation".
- In this sheet, create a tab named "Zip Codes" with a column containing the zip codes you want to target.
- Create another tab named "Leads" with columns for the business data you want to store (e.g., "Name", "Address", "Phone", "Website").
- Google Maps Places API Key:
- Locate the "HTTP Request" node.
- Update the URL to include your Google Maps Places API key.
- Business Type:
- In the "Code" node (ID
834), modify thebusinessTypevariable to specify the type of businesses you want to search for (e.g., "restaurants", "dentists", "plumbers").
- In the "Code" node (ID
- Notification Configuration (Optional):
- Telegram: Configure the "Telegram" node (ID
49) with your Bot Token and Chat ID. - Discord: Configure the "Discord" node (ID
60) with your Webhook URL.
- Telegram: Configure the "Telegram" node (ID
- Schedule Trigger: Configure the "Schedule Trigger" node (ID
839) to run at your desired interval. - Activate the Workflow: Save and activate the workflow.
Related Templates
AI multi-agent executive team for entrepreneurs with Gemini, Perplexity and WhatsApp
This workflow is an AI-powered multi-agent system built for startup founders and small business owners who want to automate decision-making, accountability, research, and communication, all through WhatsApp. The “virtual executive team,” is designed to help small teams to work smarter. This workflow sends you market analysis, market and sales tips, It can also monitor what your competitors are doing using perplexity (Research agent) and help you stay a head, or make better decisions. And when you feeling stuck with your start-up accountability director is creative enough to break the barrier 🎯 Core Features 🧑💼 1. President (Super Agent) Acts as the main controller that coordinates all sub-agents. Routes messages, assigns tasks, and ensures workflow synchronization between the AI Directors. 📊 2. Sales & Marketing Director Uses SerpAPI to search for market opportunities, leads, and trends. Suggests marketing campaigns, keywords, or outreach ideas. Can analyze current engagement metrics to adjust content strategy. 🕵️♀️ 3. Business Research Director Powered by Perplexity AI for competitive and market analysis. Monitors competitor moves, social media engagement, and product changes. Provides concise insights to help the founder adapt and stay ahead. ⏰ 4. Accountability Director Keeps the founder and executive team on track. Sends motivational nudges, task reminders, and progress reports. Promotes consistency and discipline — key traits for early-stage success. 🗓️ 5. Executive Secretary Handles scheduling, email drafting, and reminders. Connects with Google Calendar, Gmail, and Sheets through OAuth. Automates follow-ups, meeting summaries, and notifications directly via WhatsApp. 💬 WhatsApp as the Main Interface Interact naturally with your AI team through WhatsApp Business API. All responses, updates, and summaries are delivered to your chat. Ideal for founders who want to manage operations on the go. ⚙️ How It Works Trigger: The workflow starts from a WhatsApp Trigger node (via Meta Developer Account). Routing: The President agent analyzes the incoming message and determines which Director should handle it. Processing: Marketing or sales queries go to the Sales & Marketing Director. Research questions are handled by the Business Research Director. Accountability tasks are assigned to the Accountability Director. Scheduling or communication requests are managed by the Secretary. Collaboration: Each sub-agent returns results to the President, who summarizes and sends the reply back via WhatsApp. Memory: Context is maintained between sessions, ensuring personalized and coherent communication. 🧩 Integrations Required Gemini API – for general intelligence and task reasoning Supabase- for RAG and postgres persistent memory Perplexity API – for business and competitor analysis SerpAPI – for market research and opportunity scouting Google OAuth – to connect Sheets, Calendar, and Gmail WhatsApp Business API – for message triggers and responses 🚀 Benefits Acts like a team of tireless employees available 24/7. Saves time by automating research, reminders, and communication. Enhances accountability and strategy consistency for founders. Keeps operations centralized in a simple WhatsApp interface. 🧰 Setup Steps Create API credentials for: WhatsApp (via Meta Developer Account) Gemini, Perplexity, and SerpAPI Google OAuth (Sheets, Calendar, Gmail) Create a supabase account at supabase Add the credentials in the corresponding n8n nodes. Customize the system prompts for each Director based on your startup’s needs. Activate and start interacting with your virtual executive team on WhatsApp. Use Case You are a small organisation or start-up that can not afford hiring; marketing department, research department and secretar office, then this workflow is for you 💡 Need Customization? Want to tailor it for your startup or integrate with CRM tools like Notion or HubSpot? You can easily extend the workflow or contact the creator for personalized support. Consider adjusting the system prompt to suite your business
🎓 How to transform unstructured email data into structured format with AI agent
This workflow automates the process of extracting structured, usable information from unstructured email messages across multiple platforms. It connects directly to Gmail, Outlook, and IMAP accounts, retrieves incoming emails, and sends their content to an AI-powered parsing agent built on OpenAI GPT models. The AI agent analyzes each email, identifies relevant details, and returns a clean JSON structure containing key fields: From – sender’s email address To – recipient’s email address Subject – email subject line Summary – short AI-generated summary of the email body The extracted information is then automatically inserted into an n8n Data Table, creating a structured database of email metadata and summaries ready for indexing, reporting, or integration with other tools. --- Key Benefits ✅ Full Automation: Eliminates manual reading and data entry from incoming emails. ✅ Multi-Source Integration: Handles data from different email providers seamlessly. ✅ AI-Driven Accuracy: Uses advanced language models to interpret complex or unformatted content. ✅ Structured Storage: Creates a standardized, query-ready dataset from previously unstructured text. ✅ Time Efficiency: Processes emails in real time, improving productivity and response speed. *✅ Scalability: Easily extendable to handle additional sources or extract more data fields. --- How it works This workflow automates the transformation of unstructured email data into a structured, queryable format. It operates through a series of connected steps: Email Triggering: The workflow is initiated by one of three different email triggers (Gmail, Microsoft Outlook, or a generic IMAP account), which constantly monitor for new incoming emails. AI-Powered Parsing & Structuring: When a new email is detected, its raw, unstructured content is passed to a central "Parsing Agent." This agent uses a specified OpenAI language model to intelligently analyze the email text. Data Extraction & Standardization: Following a predefined system prompt, the AI agent extracts key information from the email, such as the sender, recipient, subject, and a generated summary. It then forces the output into a strict JSON structure using a "Structured Output Parser" node, ensuring data consistency. Data Storage: Finally, the clean, structured data (the from, to, subject, and summarize fields) is inserted as a new row into a specified n8n Data Table, creating a searchable and reportable database of email information. --- Set up steps To implement this workflow, follow these configuration steps: Prepare the Data Table: Create a new Data Table within n8n. Define the columns with the following names and string type: From, To, Subject, and Summary. Configure Email Credentials: Set up the credential connections for the email services you wish to use (Gmail OAuth2, Microsoft Outlook OAuth2, and/or IMAP). Ensure the accounts have the necessary permissions to read emails. Configure AI Model Credentials: Set up the OpenAI API credential with a valid API key. The workflow is configured to use the model, but this can be changed in the respective nodes if needed. Connect the Nodes: The workflow canvas is already correctly wired. Visually confirm that the email triggers are connected to the "Parsing Agent," which is connected to the "Insert row" (Data Table) node. Also, ensure the "OpenAI Chat Model" and "Structured Output Parser" are connected to the "Parsing Agent" as its AI model and output parser, respectively. Activate the Workflow: Save the workflow and toggle the "Active" switch to ON. The triggers will begin polling for new emails according to their schedule (e.g., every minute), and the automation will start processing incoming messages. --- Need help customizing? Contact me for consulting and support or add me on Linkedin.
Automate RSS to social media pipeline with AI, Airtable & GetLate for multiple platforms
Overview Automates your complete social media content pipeline: sources articles from Wallabag RSS, generates platform-specific posts with AI, creates contextual images, and publishes via GetLate API. Built with 63 nodes across two workflows to handle LinkedIn, Instagram, and Bluesky—with easy expansion to more platforms. Ideal for: Content marketers, solo creators, agencies, and community managers maintaining a consistent multi-platform presence with minimal manual effort. How It Works Two-Workflow Architecture: Content Aggregation Workflow Monitors Wallabag RSS feeds for tagged articles (to-share-linkedin, to-share-instagram, etc.) Extracts and converts content from HTML to Markdown Stores structured data in Airtable with platform assignment AI Generation & Publishing Workflow Scheduled trigger queries Airtable for unpublished content Routes to platform-specific sub-workflows (LinkedIn, Instagram, Bluesky) LLM generates optimized post text and image prompts based on custom brand parameters Optionally generates AI images and hosts them on Imgbb CDN Publishes via GetLate API (immediate or draft mode) Updates Airtable with publication status and metadata Key Features: Tag-based content routing using Wallabag's native system Swappable AI providers (Groq, OpenAI, Anthropic) Platform-specific optimization (tone, length, hashtags, CTAs) Modular design—duplicate sub-workflows to add new platforms in \~30 minutes Centralized Airtable tracking with 17 data points per post Set Up Steps Setup time: \~45-60 minutes for initial configuration Create accounts and get API keys (\~15 min) Wallabag (with RSS feeds enabled) GetLate (social media publishing) Airtable (create base with provided schema—see sticky notes) LLM provider (Groq, OpenAI, or Anthropic) Image service (Hugging Face, Fal.ai, or Stability AI) Imgbb (image hosting) Configure n8n credentials (\~10 min) Add all API keys in n8n's credential manager Detailed credential setup instructions in workflow sticky notes Set up Airtable database (\~10 min) Create "RSS Feed - Content Store" base Add 19 required fields (schema provided in workflow sticky notes) Get Airtable base ID and API key Customize brand prompts (\~15 min) Edit "Set Custom SMCG Prompt" node for each platform Define brand voice, tone, goals, audience, and image preferences Platform-specific examples provided in sticky notes Configure platform settings (\~10 min) Set GetLate account IDs for each platform Enable/disable image generation per platform Choose immediate publish vs. draft mode Adjust schedule trigger frequency Test and deploy Tag test articles in Wallabag Monitor the first few executions in draft mode Activate workflows when satisfied with the output Important: This is a proof-of-concept template. Test thoroughly with draft mode before production use. Detailed setup instructions, troubleshooting tips, and customization guidance are in the workflow's sticky notes. Technical Details 63 nodes: 9 Airtable operations, 8 HTTP requests, 7 code nodes, 3 LangChain LLM chains, 3 RSS triggers, 3 GetLate publishers Supports: Multiple LLM providers, multiple image generation services, unlimited platforms via modular architecture Tracking: 17 metadata fields per post, including publish status, applied parameters, character counts, hashtags, image URLs Prerequisites n8n instance (self-hosted or cloud) Accounts: Wallabag, GetLate, Airtable, LLM provider, image generation service, Imgbb Basic understanding of n8n workflows and credential configuration Time to customize prompts for your brand voice Detailed documentation, Airtable schema, prompt examples, and troubleshooting guides are in the workflow's sticky notes. Category Tags social-media-automation, ai-content-generation, rss-to-social, multi-platform-posting, getlate-api, airtable-database, langchain, workflow-automation, content-marketing