Google Maps Data Scraping and Lead Enrichment using SERPAPI and ELV - n8n Workflow

Use this powerful n8n workflow to automate scraping Google Maps data via SerpAPI. Extract business leads, find generic emails using EmailListVerify, and export results directly to Google Sheets.

Workflow Preview

Ready to automate?

Download this n8n workflow template and start using it instantly.

Who is this best for?


  • Sales and marketing teams looking for geographic lead generation.

  • Business analysts needing extensive local business data extraction.

  • Users seeking advanced web scraping solutions utilizing the n8n node framework.

  • Anyone who needs a reusable, automated n8n workflow for market research.

Overview

Generating business leads often requires gathering structured data from large platforms like Google Maps. Manually collecting this information is tedious and expensive. This reusable n8n workflow solves this by using the powerful SerpAPI to efficiently scrape detailed Google Maps listings, including phone numbers, websites, ratings, and addresses, often at a lower cost than native Google APIs.

After scraping, the workflow automatically attempts to find generic contact email addresses using the EmailListVerify service based on the retrieved website URL. All enriched data points are then neatly organized and saved into a specified Google Sheets document, providing a complete, automated lead generation solution. This robust n8n template significantly streamlines data acquisition and enrichment processes.

How it Works

This automation sequence starts with the n8n trigger, which can be run manually or set to a recurring schedule (e.g., weekly) using the Schedule Trigger n8n node.


  1. Input Retrieval: The workflow first uses the Google Sheets n8n node to fetch a list of Google Maps search URLs that require scraping, defined in a designated input sheet.

  2. URL Parsing: A Set n8n node extracts the essential components (keyword and geographic location) from each Google Maps URL.

  3. Data Scraping (SerpAPI Loop): The main logic uses an HTTP Request n8n node configured with SerpAPI credentials to scrape the results. This SerpAPI n8n node is placed within a loop structure, controlled by an If n8n node that checks for the serpapipagination.next value. If a next page exists, a Code n8n node extracts the necessary start parameter, and the process repeats, ensuring deep result penetration.

  4. Data Aggregation and Cleaning: Once scraping is complete, multiple Code n8n nodes merge the paginated results, clean the data, and transform it into a standardized format. Duplicate entries are then removed based on the placeid using an Item Lists n8n node.

  5. Initial Data Save: The cleansed data is initially saved to a 'Results' Google Sheet using the Google Sheets n8n node.

  6. Email Enrichment: An If n8n node checks if a business listing has a valid website. If so, a subsequent Code n8n node extracts the clean domain name.

  7. Email Discovery: An HTTP Request n8n node queries the EmailListVerify API using the extracted domain to find generic email addresses.

  8. Final Output: The enriched data, now including the discovered email address, is appended or updated in a final 'Emails' Google Sheet using the Google Sheets n8n node, completing this comprehensive n8n workflow.

Installation Guide

To deploy this powerful n8n workflow template, follow these steps:


  1. Import: Copy the provided JSON data and paste it directly into your n8n instance using the 'New' -> 'Import from JSON' option.

  2. Google Sheets Setup: You must copy the linked Google Sheets template (URL is often in the sticky note data) and configure the Google Sheets n8n node credentials (OAuth2 recommended) for both reading input URLs and writing the scraped results.

  3. SerpAPI Credential: Add your SerpAPI API key to the SERPAPI - Scrape Google Maps URL HTTP Request n8n node credentials. SerpAPI provides robust data for this n8n template.

  4. EmailListVerify Credential: Set up an HTTP Header Authentication credential using your EmailListVerify API key in the Use EmailListVerify API to find generic emails HTTP Request n8n node.

  5. Execution: Activate the n8n workflow. Use the Manual Trigger n8n node for immediate testing or rely on the Schedule Trigger n8n node for automated weekly runs.

Node Details

Manual Trigger / Schedule Trigger: Acts as the n8n trigger, initiating the data scraping process. The Schedule Trigger is configured to run the n8n workflow weekly.
Google Sheets n8n node (Get searches): Reads the list of Google Maps search URLs from the designated input sheet.
Set n8n node (Extract keyword and location): Parses the input URL to dynamically extract search parameters (keyword and geo-coordinates) required for the SerpAPI n8n node.
HTTP Request n8n node (SERPAPI - Scrape Google Maps URL): The primary data acquisition n8n node. It communicates with SerpAPI to retrieve structured Google Maps results, configured for pagination via the start parameter.
If n8n node (Continue IF Loop is complete): A flow control n8n node that checks the SerpAPI response for a next page link, enabling pagination within the n8n workflow.
Code n8n node (Merge all values from SERPAPI): Collects and aggregates the localresults across all pages scraped by the SerpAPI n8n node.
Item Lists n8n node (Remove duplicate items): Ensures data quality by removing duplicate listings based on the unique placeid field.
If n8n node (Check if the listing has a website): Filters the dataset to only include businesses with a discoverable website before proceeding to email enrichment.
Code n8n node (Transform website into domain name): Cleans the website URL to extract only the core domain name, optimizing it for the EmailListVerify API.
HTTP Request n8n node (Use EmailListVerify API to find generic emails): Queries the EmailListVerify service to find common or generic email addresses associated with the domain.


  • Google Sheets n8n node (Save google map data & Add rows): Two distinct Google Sheets n8n nodes handle output: one for saving the raw scraped data, and a second one for updating the sheet with the enriched email addresses.

Related n8n Workflows

Free

Nodes: 10 Nodes
Updated: December 26 2025
View all
Created by
EmailListVerify
EmailListVerify

Featured*