π§ Enrich domain contact data in paced batches with Apify and Google Sheets
β‘ 0 views Β· π§ Miscellaneous
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
domaincontaining one domain (or URL) per row. - Add an Apify credential, confirm the actor ID
dami_studio~contact-details-scraperis 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
Google Sheets, Slack, Gmail, Schedule Trigger
π₯ Import
Download workflow.json and import into n8n:
Workflow menu β Import from File