Extract Business Email Addresses Using SerpApi and ScrapingBee from Google Sheets
# Lead Enrichment & Email Discovery from Google Sheets ## What this workflow does This template automates the enrichment of business leads from a Google Sheet by: * Triggering when a row is activated * Searching for company information with Serper.dev * Generating and validating potential contact pages * Scraping company pages with ScrapingBee * Extracting emails and updating the sheet * Marking rows as finished --- ## Prerequisites * Google Sheet with columns: `business type`, `city`, `state`, `activate` * **Copy the ready-to-use template:** [Sheet Template](https://docs.google.com/spreadsheets/d/1222vBxE2UBb1MK2xDMoQSd5WHQ7mA5Ew-W6vBgfCJs/edit?usp=sharing) * Google Sheets API credentials (from Google Cloud) * Serper.dev API key (free tier available) * ScrapingBee API key (free tier available) --- ## Inputs * **Google Sheet row:** Must include `business type`, `city`, `state`, `activate` * **Set Information Node:** `country`, `country_code`, `language`, `result_count` (can also be provided via columns in the sheet) --- ## Outputs * **Google Sheet update:** Company names, URLs, found email addresses (comma-separated if multiple), and status updates (`Running`, `Missing information`, `Finished`) --- ## Configuration Required * Connect Google Sheets node with your Google Cloud credentials * Add your Serper.dev API key to the HTTP Request node * Add your ScrapingBee API key to the scraping node * Adjust search and filtering options as needed --- ## How to customize the workflow * **Send `country`, `country_code`, and `result_count` from the sheet:** Add these as columns in your sheet and update the workflow to read their values dynamically, making your search fully configurable per row. * **Add more blacklist terms:** Update the code node with additional company names or keywords you want to exclude from the search results. * **Extract more contact details:** Modify the email extraction code to find other contact info (like phone numbers or social profiles) if needed.
Lead Enrichment & Email Discovery from Google Sheets
What this workflow does
This template automates the enrichment of business leads from a Google Sheet by:
- Triggering when a row is activated
- Searching for company information with Serper.dev
- Generating and validating potential contact pages
- Scraping company pages with ScrapingBee
- Extracting emails and updating the sheet
- Marking rows as finished
Prerequisites
- Google Sheet with columns:
business type,city,state,activate - Copy the ready-to-use template: Sheet Template
- Google Sheets API credentials (from Google Cloud)
- Serper.dev API key (free tier available)
- ScrapingBee API key (free tier available)
Inputs
- Google Sheet row: Must include
business type,city,state,activate - Set Information Node:
country,country_code,language,result_count(can also be provided via columns in the sheet)
Outputs
- Google Sheet update: Company names, URLs, found email addresses (comma-separated if multiple), and status updates (
Running,Missing information,Finished)
Configuration Required
- Connect Google Sheets node with your Google Cloud credentials
- Add your Serper.dev API key to the HTTP Request node
- Add your ScrapingBee API key to the scraping node
- Adjust search and filtering options as needed
How to customize the workflow
- Send
country,country_code, andresult_countfrom the sheet: Add these as columns in your sheet and update the workflow to read their values dynamically, making your search fully configurable per row. - Add more blacklist terms: Update the code node with additional company names or keywords you want to exclude from the search results.
- Extract more contact details: Modify the email extraction code to find other contact info (like phone numbers or social profiles) if needed.
New buyers can create an account from the cart to unlock a controlled $10 first-purchase credit on eligible orders of $25+.
Part of a bundle
Lead Generation Machine
This workflow is one of 8 in the bundle — $49.00 for all of them.
That is $6.13 each, vs $14.99 for this one alone.
View bundleSecure checkout powered by Stripe
Support
How to import this workflow into n8n
- 1Purchase or download the workflow to get the n8n workflow JSON file.
- 2In your n8n instance, open Workflows and choose "Import from File" (or paste the JSON with Ctrl+V on the canvas).
- 3Open each node marked with a credential warning and connect your own accounts and API keys.
- 4Run the workflow once manually to verify the data flow, then toggle it to Active.
Related Data & Analytics workflows
- Generate AI viral videos with VEO 3 and upload to TikTok$14.99
- Generate a daily multi-asset market report with TwelveData, Groq and Google Sheets$14.99
- Build an OpenAI RAG system with document upload, semantic search and caching$24.99
- Automate Website Content Scraping and SEO Keyword Extraction with GPT-4o-mini and Airtable$14.99
- Process Contact Form Submissions with Validation and MongoDB Storage$14.99
- Add webhook data to a Google Sheet$2.99
More from Jorge MartÃÂnez
Need this deployed? We'll set it up for you.
Our automation experts deploy this workflow in your stack, connect your accounts, and verify it works — or build a custom solution from scratch.