AutomationMart
Home/Browse/Find leads on Google Maps and reach out automatically (GPT-4 + Airtable + Gmail)
n8n

Find leads on Google Maps and reach out automatically (GPT-4 + Airtable + Gmail)

n8nn8n9 modulesv1.0
GmailAirtableOpenAI

Who is it for? This workflow is perfect for marketers, sales teams, agencies, and local businesses who want to save time by automating lead generation from Google Maps. It’s ideal for real estate agencies, restaurants, service providers, and any local niche that needs a clean database of fresh contacts, including emails, websites, and phone numbers. --- ✅ Prerequisites Before starting, make sure you have: - Apify account → to scrape Google Maps data - OpenAI API key → for GPT-4 email extra

At a glance

Find leads on Google Maps and reach out automatically (GPT-4 + Airtable + Gmail) is a ready-made n8n workflow you import as a workflow JSON file — no build required. It connects Gmail, Airtable, OpenAI. It's free to download. Follow the 5-step import below to go live in minutes.

Platform
n8n
Connects
Gmail, Airtable, OpenAI
Modules
9
Price
Free
Version
v1.0
Find leads on Google Maps and reach out automatically (GPT-4 + Airtable + Gmail) workflow diagram

About this workflow

Who is it for? This workflow is perfect for marketers, sales teams, agencies, and local businesses who want to save time by automating lead generation from Google Maps. It’s ideal for real estate agencies, restaurants, service providers, and any local niche that needs a clean database of fresh contacts, including emails, websites, and phone numbers. --- ✅ Prerequisites Before starting, make sure you have: - Apify account → to scrape Google Maps data - OpenAI API key → for GPT-4 email extraction - Airtable account & base → for structured lead storage - Gmail account with OAuth → to send personalized outreach emails Your Airtable base should have these columns: | Title | Street | Website | Phone Number | Email | URL | |-------------------------|-------------------------|--------------------|-----------------|------------------------|----------------------| | Paris Real Estate Agency| 10 Rue de Rivoli, Paris | | +33 1 23 45 67 | contact@agency.fr | maps.google.com/... | --- 🏡 Example Use Case To keep things clear, we’ll use real estate agencies in Paris as an example. But you can replace this with restaurants, plumbers, lawyers, or even hamster trainers (you never know). --- 🔄 How the workflow works 1. Scrape Google Maps leads with Apify 2. Clean & structure the data (name, phone, website) 3. Visit each website & extract emails with GPT-4 4. Save all leads into Airtable 5. Automatically send a personalized email via Gmail This works for any industry, keyword, or location. Step 1 – Scraping Google Maps with Apify Start simply: Open your n8n workflow and choose the trigger: “Execute Workflow” (manual trigger). Add an HTTP Request node (POST method). Now, head over to Apify Google Maps Extractor. Fill in the fields according to your needs: Keyword: e.g., "real estate agency" (or restaurant, plumber...) Location: "Paris, France" Number of results: 50 (or more) Optional: filters (with/without a website, by categories…) Click Run to test the scraper. Then click API → select API endpoints tab. Choose “Run Actor synchronously and get dataset items”. Copy the URL, go back to n8n, and paste it into your HTTP Request node (URL field). Then enable: Body Content Type → JSON Specify Body Using JSON Go back to Apify, click the JSON tab, copy everything, and paste it into the JSON field of your HTTP Request. If you now run your workflow, you'll get a nice structured table filled with Google Maps data. Pretty magical already—but we're just getting started! Step 2 – Cleaning Things Up (Edit Fields) Raw data is cool, but messy. Add an Edit Fields node next, using Manual Mapping mode. Here’s what you keep (copy-paste friendly): Title → {{ $json.title }} Address → {{ $json.address }} Website → {{ $json.website }} Phone → {{ $json.phone }} URL → {{ $json.url }} Now, you have a clean, readable table ready to use. Step 3 – Handling Each Contact Individually (Loop Over Items) Next, we process each contact one by one. Add the Loop Over Items node: Set Batch Size to 20 or more, depending on your needs. This node is simple but crucial to avoid traffic jams in the automation. Step 4 – Isolating Websites (Edit Fields again) Add another Edit Fields node (Manual Mapping). This time, keep just: Website → {{ $json.website }} We've isolated the websites for the next step: scraping them one by one. Step 5 – Scraping Each Website (HTTP Request) Now, we send our little robot to visit each website automatically. Add another HTTP Request node: Method: GET URL: {{ $json.website }} (from the previous node) This returns the raw HTML content of each site. Yes, it's ugly, but we won't handle it manually. We'll leave the next step to AI! Step 6 – Extracting Emails with ChatGPT We now use OpenAI (Message a Model) to politely ask GPT to extract only relevant emails. Configure as follows: Model: GPT-4-1-mini or higher Operation: Message a Model Simplify Output: ON Prompt to copy-paste: Look at this website content and extract only the email I can contact this business. In your output, provide only the email and nothing else. Ideally, this email should be of the business owner, so if you have 2 or more options, try for the most authoritative one. If you don't find any email, output 'Null'. Exemplary output of yours: name@examplewebsite.com {{ $json.data }} ChatGPT will kindly return the perfect email address (or 'Null' if none is found). Step 7 – Neatly Store Everything in Airtable Almost done! Add an Airtable → Create Record node. Fill your Airtable fields like this: | Airtable Field | Content | n8n Variable | | ------------------ | ------------------------------- | ------------------------------------------ | | Title | Business name | {{ $('Edit Fields').item.json.Title }} | | Street | Full address | {{ $('Edit Fields').item.json.Address }} | | Website | Website URL | {{ $('Edit Fields').item.json.Website }} | | Phone Number | Phone number | {{ $('Edit Fields').item.json.Phone }} | | Email | Email retrieved by the AI agent | {{ $json.message.content }} | | URL | Google Maps link | {{ $('Edit Fields').item.json.URL }} | Now, you have a tidy Airtable database filled with fresh leads, ready for action. Step 8 – Automated Email via Gmail (The Final Touch) To finalize the workflow, add a Gmail → Send Email node after your Airtable node. Here’s how to configure this node using the data pulled directly from your Airtable base (from the previous step): Recipient (To): Retrieve the email stored in Airtable ({{ $json.fields.Email }}). Subject: Use the company name stored in Airtable ({{ $json.fields.Title }}) to personalize the subject line. Body: You can include several fields directly from Airtable, such as: Company name: {{ $json.fields.Title }} Website URL: {{ $json.fields.Website }} Phone number: {{ $json.fields["Phone Number"] }} Link to the Google Maps listing: {{ $json.fields.URL }} All of this data is available in Airtable because it was automatically inserted in the previous step (Step 7). This ensures that each email sent is fully personalized and based on clear, reliable, and structured information.

n8n

How to import this n8n workflow

  1. 1

    Download the workflow JSON file after purchase.

  2. 2

    Open n8n → click the menu → Import from File.

  3. 3

    Select the downloaded JSON and import.

  4. 4

    Set up credentials for each node that requires them.

  5. 5

    Click Execute Workflow to test, then activate.

Setup guide

Setup guide included

Purchase to unlock the full step-by-step guide

Related N8n workflows

[AI Tools 101] Simple auto-completion with OpenAI and Google Sheets

Learn how to automate text completion in Google Sheets using OpenAI's GPT models. This template is part of the [AI Tools 101 YouTube course series](https://www.youtube.com/watch?v=ZF4ofwh6-to&list=PLrED3I754LhmTtlldfGklaEMh-ZaCa3EK&index=2&ab_channel=Make), providing step-by-step guidance to enhance your productivity with AI-driven solutions. Follow along to effortlessly generate and update content in your Google Sheets.

Free

Draft press releases instantly with Airtable, Google Docs and ChatGPT

Create instant press releases using Airtable, Google Docs, and ChatGPT. A fast and easy solution for quality media communications without hassle.

Free

Generate voice overs with ElevenLabs for WordPress articles and upload to Airtable

Easily create professional voice overs using ElevenLabs for your WordPress articles, and effortlessly upload them to Airtable for organized, accessible storage and sharing.

Free

Generate and append content to Google Docs using ChatGPT completions

Automatically enhance your Google Docs by generating and appending content using ChatGPT. Streamline document creation with AI-driven text completions.

Free

Get Keyword's Top-10 Rank Drop Alert via Gmail with DataForSEO

This weekly workflow helps you keep track of important ranking losses by automatically detecting when your keywords fall out of Google’s top 10 results. On each run, the scenario pulls your domain’s latest keyword ranking data using the DataForSEO Labs API and compares it with the records stored from the previous run in Google Sheets. It then identifies keywords that previously ranked in positions 1–10 but have now dropped out. For every lost keyword (i.e., no longer in the top 10), the workflow

Free

Generate natural voices with Google Text-to-Speech, Drive & Airtable

Automate High-Quality Voice with Google Text-to-Speech & n8n Effortlessly convert any text into stunningly realistic, high-quality audio with this powerful n8n workflow. Leveraging Google's advanced Text-to-Speech (TTS) AI, this template provides a complete, end-to-end solution for generating, storing, and tracking voiceovers automatically. Whether you're a content creator, marketer, or developer, this workflow saves you countless hours by transforming your text-based scripts into ready

Free

Auto-backup n8n workflows to OneDrive with cleanup & email notifications

Automatically BackUp Your n8n Workflows to OneDrive This workflow automates the backup of your self-hosted n8n instance by exporting all workflows and saving them as individual .json files to a designated OneDrive folder. Each file is timestamped for easy versioning and audit tracking. After a successful backup, the workflow optionally cleans up old backup files and sends a confirmation email to notify you that the process completed. How it works 1. Uses the HTTP Request node to fetch all workfl

Free

Cyberpulse AI GRC: Automate security questionnaire responses

Description Automates vendor/customer security questionnaire responses. It ingests a questionnaire (Sheet/CSV/XLSX), matches each question to your approved answers and evidence, and writes a clean “Auto-Fill” sheet ready to review and send back. Optional alerts nudge reviewers and track progress to completion. Who’s It For GRC / Compliance teams responding to customer security reviews Security engineers and sales engineers supporting questionnaires Startups that need fast, consistent, audit-read

Free

Reviews

No reviews yet

Be the first to buy and share your experience.

Leave a review

Sign in to share your experience with this workflow.

Log in to review
Free
No ratings yet

Create a free account to purchase workflows.

  • JSON blueprint — instant download
  • Setup guide PDF included
  • 5 downloads · valid 30 days
  • Works with n8n

Need help setting this up?

Book a 3-hour live setup session with an Agility consultant.

₹2,499/ session
3 hrs · video call
  • Configure live on Google Meet / Zoom
  • Free follow-up if workflow has defects
  • Platform expert assigned to you
Book installation session
Free