Skip to main content

Google Maps business scraper with contact extraction via Apify and Firecrawl

Workflow preview

Workflow preview
100%
Google Maps business scraper with contact extraction via Apify and Firecrawl preview
Open on n8n.io

Important notice

This workflow is provided as-is. Please review and test before using in production.

1. Workflow Overview

Who is this for? Marketing agencies, sales teams, lead generation specialists, and business development professionals who need to build comprehensive business databases with contact information for...

Best for

  • Lead Generation automation workflows
  • advanced n8n builders looking for reusable templates

Tools used

n8n-nodes-base.scheduletrigger, n8n-nodes-base.if, n8n-nodes-base.googlesheets, n8n-nodes-base.httprequest, n8n-nodes-base.wait, n8n-nodes-base.filter, n8n-nodes-base.splitinbatches, n8n-nodes-base.code

Source and attribution

This workflow is cataloged by N8N Workflows and links back to its original n8n.io source page by Naveen Choudhary.

Original n8n.io source

1.1 Workflow description

Title
Google Maps business scraper with contact extraction via Apify and Firecrawl
Workflow name
Google Maps business scraper with contact extraction via Apify and Firecrawl

Who is this for?

Marketing agencies, sales teams, lead generation specialists, and business development professionals who need to build comprehensive business databases with contact information for outreach campaigns across any industry.

What problem is this workflow solving?

Finding businesses and their contact details manually is time-consuming and inefficient. This workflow automates the entire process of discovering businesses through Google Maps and extracting their digital contact information from websites, saving hours of manual research.

What this workflow does

This automated workflow runs every 30 minutes to:

  • Scrape business data from Google Maps using Apify's Google Places crawler
  • Save basic business information (name, address, phone, website) to Google Sheets
  • Filter businesses that have websites
  • Scrape each business's website content using Firecrawl
  • Extract contact information including emails, LinkedIn, Facebook, Instagram, and Twitter profiles
  • Store all extracted data in organized Google Sheets for easy access and follow-up

Setup

Required Services:

  • Google Sheets account with OAuth2 setup
  • Apify account with API access for Google Places scraping
  • Firecrawl account with API access for website scraping

Pre-setup:

  1. Copy this Google Sheet
  2. Configure your Apify and Firecrawl API credentials in n8n
  3. Set up Google Sheets OAuth2 connection
  4. Update the Google Sheet ID in all Google Sheets nodes

Quick Start: The workflow includes detailed sticky notes explaining each phase. Simply configure your API credentials and Google Sheet, then activate the workflow.

How to customize this workflow to your needs

  • Change search criteria: Modify the Apify scraping parameters to target different business types (restaurants, gyms, salons, etc.) or locations
  • Adjust schedule: Change the trigger interval from 30 minutes to your preferred frequency
  • Add more contact fields: Extend the extraction code to find additional contact information like WhatsApp or Telegram
  • Filter criteria: Modify the filter conditions to target businesses with specific characteristics
  • Batch size: Adjust the batch processing to handle more or fewer websites simultaneously

Perfect for lead generation, competitor research, and building targeted marketing lists across any industry or business type.

1.2 Logical Blocks

This catalog entry is organized from the workflow JSON. The node-level section below shows the executable blocks available for review before importing the template.

2. Block-by-Block Analysis

Block 1 - Schedule Trigger

Type / Role
n8n-nodes-base.scheduleTrigger - scheduleTrigger
Config choices
Version 1.1

Block 2 - Loop Until Complete

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2.2

Block 3 - Read Pending Queries

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.2

Block 4 - Start Apify Scraping Job

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 5 - Wait for Job Succeed

Type / Role
n8n-nodes-base.wait - wait
Config choices
Version 1.1

Block 6 - Check Scraping Status

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 7 - Fetch Scraped Results

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 8 - Save Business Data

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.6

Block 9 - Filter Businesses with Websites

Type / Role
n8n-nodes-base.filter - filter
Config choices
Version 2.2

Block 10 - Batch Processing Logic

Type / Role
n8n-nodes-base.splitInBatches - splitInBatches
Config choices
Version 3

Block 11 - Scrape Website Content

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 12 - Extract Contact Information

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 13 - Save Contact Details

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.6

Block 14 - Mark as Processed

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.6

Block 15 - Sticky Note

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 16 - Sticky Note1

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 17 - Sticky Note2

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 18 - Sticky Note3

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

3. Summary Table

Workflow Google Maps business scraper with contact extraction via Apify and Firecrawl
Complexity advanced
Nodes 18
Categories Lead Generation
Author Naveen Choudhary
Published 02 Jun 2025

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/4573/4573.json as the source template for this automation.

  2. 2. Import the template into n8n

    Open n8n, import the downloaded JSON, and review each node before activating the workflow.

  3. 3. Configure credentials and variables

    Replace placeholder credentials, API keys, webhook URLs, account IDs, and environment-specific values with your own settings.

  4. 4. Test with sample data

    Run the workflow manually or in a staging workspace, inspect node output, and confirm downstream systems receive the expected data.

  5. 5. Activate and monitor

    Enable the workflow only after testing, then monitor executions, errors, and rate limits during the first production runs.

5. General Notes & Resources

Review imported nodes carefully before activation. This catalog entry is intended to help you inspect the workflow structure, understand required services, and find related templates faster.

Node names, credentials, schedules, webhook paths, and external service limits may need adjustment for your workspace.

Frequently asked questions

What does Google Maps business scraper with contact extraction via Apify and Firecrawl do?

Who is this for? Marketing agencies, sales teams, lead generation specialists, and business development professionals who need to build comprehensive business databases with contact information for...

What do I need before importing this workflow?

Review the workflow JSON, configure any required credentials in n8n, and test the automation in a safe workspace before using it in production.

Can I customize this workflow?

Yes. Use the block-by-block analysis and the downloadable JSON to inspect each node, then adjust credentials, prompts, schedules, filters, or destinations for your Lead Generation use case.