Enrich domain contact data in paced batches with Apify and Google Sheets

Go to Workflow
0 views
Built by Dami's studio Dami's studio
Created on September 02, 2026

Description

Quick Overview
This workflow runs every Monday, reads a Google Sheets list of domains, enriches them in paced 10-domain batches using an Apify actor to extract contact details, and appends the results back to Google Sheets with overall email and phone hit-rate metrics.

How it works
Runs every Monday at 08:00 on a schedule.
Reads a list of domains from Google Sheets.
Processes the domains in batches of 10 and sends each batch to the Apify “contact-details-scraper” actor to collect emails, phone numbers, and LinkedIn links.
Normalizes Apify results to keep a single consolidated row per domain and pauses for 30 seconds before starting the next batch.
After all batches finish, aggregates the full run and calculates overall email and phone coverage percentages.
Appends the enriched domain rows, including run date and hit-rate fields, to a target Google Sheets sheet.

Setup
Add Google Sheets credentials and set the source spreadsheet/sheet for reading domains and the destination spreadsheet/sheet for appending the enriched results.
Ensure your source sheet has a column named domain containing one domain (or URL) per row.
Add an Apify credential, confirm the actor ID dami_studio~contact-details-scraper is available to your account, and adjust the max charge limit if needed.
(Optional) If you want notifications, connect Slack credentials and set the channel, and/or connect Gmail credentials and set the recipient email address.

Nodes Used (4)

Code
n8n-nodes-base.code
Gmail
n8n-nodes-base.gmail
Google Sheets
n8n-nodes-base.googleSheets
Slack
n8n-nodes-base.slack