See llms.txt for all machine-readable content.

Back to Templates

Scrape Google Maps business leads with SearchApi, Hunter, and Google Sheets

Created by

Created by: Sam Gale || sam-searchapi
Sam Gale

Last update

Last update a day ago

Categories

Share


Quick overview

This workflow runs on demand or weekly to scrape Google Maps business listings via SearchApi.io, optionally enriches each business with an email using Hunter.io, and appends the resulting leads (name, contact details, ratings, and Maps link) to a Google Sheets spreadsheet.

How it works

  1. Runs manually or on a weekly schedule.
  2. Builds Google Maps search queries by combining your configured business categories and locations and paginating each combination.
  3. Scrapes live Google Maps results through SearchApi.io for each query and page.
  4. Extracts and flattens the returned listings into one lead per business, deduplicating entries by place ID and deriving a website domain when available.
  5. Optionally uses Hunter.io Domain Search to find email addresses for each business domain and attaches the highest-confidence email to the lead.
  6. Appends all leads to a Google Sheets worksheet with the mapped lead fields.

Setup

  1. Install the community node package @searchapi/n8n-nodes-searchapi and add your SearchApi.io API credential to the SearchApi node.
  2. Add a Google Sheets OAuth credential and select the target spreadsheet and worksheet in the Google Sheets node.
  3. Create a header row in your sheet matching the workflow fields (business, category, location, type, address, phone, website, email, rating, reviews, maps_url, place_id).
  4. (Optional) Add a Hunter.io API credential to the Hunter node, or remove the Hunter and email-attach steps if you don’t want email enrichment.
  5. Update the categories (comma-separated) and locations (semicolon-separated) values in the Settings step, and adjust the pagination depth in the query-building code if you need more results.