Overview

Manually gathering business leads from Google Maps is tedious and error-prone. This workflow automates scraping by leveraging Apify's cloud service, extracting precise business data, cleaning it with a Python script, and archiving it directly into your Google Sheets—turning hours of grunt work into minutes.

The Impact

  • Slash manual data collection. Automate lead gathering with a single parameter set.
  • Standardize output. Extract only essential business info for clean, actionable data.
  • Instantly archive. Append leads directly to your Google Sheet without extra steps.
  • Scale effortlessly. Repeat for any city, country, or business type with ease.

Who This Is For

  • Sales Professionals building targeted regional lead lists for outreach campaigns.
  • Market Researchers analyzing competitor landscapes in specific locales.
  • Entrepreneurs scouting business density and ratings in potential expansion areas.
  • Travel Planners compiling local points of interest like hotels and restaurants.
  • Directory Builders creating and maintaining comprehensive business databases.

How It Works

1
  1. Execute Scrape
  2. Send search parameters (city, country code, keywords) to Apify's Google Maps Scraper API and retrieve raw business data.
2
  1. Pre-process Data
  2. Parse the raw JSON response to extract only the key fields: name, address, website, phone, rating, reviews, and category.
3
  1. Format Each Business
  2. Convert each business object into a fixed-order string array for Google Sheets compatibility.
4
  1. Append to Sheet
  2. Write each formatted business record as a new row into the specified Google Sheets spreadsheet.

What You'll Need

Before using this template, make sure you have:

  • A Google Sheets file with a sheet tab containing exactly 7 column headers: Name, Address, Website, Phone, Rating, Reviews, Category.
  • Access to your Google Sheets Spreadsheet ID and the exact SheetName where data will be appended.
  • An active Apify account with a valid Personal API Token for accessing the Google Maps Scraper API.
  • Search parameters: city name, lowercase two-letter ISO country code, and business keywords.

How to Use

  1. Step 1. Prepare Your Google Sheet
  2. Create or select a Google Sheets file and set up the first row with these exact headers: Name, Address, Website, Phone, Rating, Reviews, Category.

  3. Step 2. Set Start Node Parameters
  4. Fill in SpreadsheetId from your Google Sheet URL, the SheetName tab, your Apify API token, target city, country code, and search keywords.

  5. Step 3. Configure Credentials
  6. Ensure the 'Append Row to Google Sheet' node has the correct credentials to write into your Google Sheet.

  7. Step 4. Run the Workflow
  8. Trigger the workflow to start scraping, processing, and appending business leads automatically.

  9. Step 5. Verify Results
  10. Check your Google Sheet to confirm that new rows with clean, formatted business data have been appended.

FAQs

How does the workflow ensure only relevant business data is saved?
It parses the raw JSON from Apify and extracts only seven key fields—name, address, website, phone, rating, reviews, and category—filtering out all other data.
What if my phone numbers start with characters like '=' that Google Sheets misinterprets?
The formatting script prepends a single quote to such phone numbers to prevent Google Sheets from treating them as formulas.
Can I scrape multiple cities or business types with this workflow?
Yes, by adjusting the input parameters for city, country code, and search keywords, you can run the workflow repeatedly for different targets.
How does the workflow append data to my Google Sheet?
Each processed business record is converted into a string array matching your sheet's columns and appended as a new row using Google Sheets API credentials.
Was This Page Helpful?

More Workflows for Inspiration

✒️
YouTube Podcast Summary and Save to Sheets
Automate podcast transcript capture, summary generation, and archiving to Google Sheets instantly.
Learn more >
💬
Workspace Default Flow
Automate conversation start logic to flexibly switch AI modes and optimize response accuracy.
Learn more >
🔍
WordPress Post AI Auto-Categorizer
Automatically assign primary categories to WordPress posts using AI, saving time and ensuring consistency.
Learn more >