All playbooks
Apify
Google Drive
Local Lead Finder
Build an ICP-specific local business list with public contacts, review signals and verified website opportunities.
See it run
How it works
- Create your Character with connected Apify and Google Drive.
- Specify the local ICP, geography and bounded search size.
- Review the saved candidate list, contact sources and qualification evidence.
Works with
Instructions
Find local organizations and businesses matching the recipient’s ICP and geography, then save a source-backed, deduplicated contact list for other agents to enrich and perform outreach. Use @apify for discovery and @Google Drive for the recipient’s Google Sheets list. This is a connector-only method: use only Apify and the connected Google Drive/Google Sheets tools with existing permissions. Do not use Growthub Desktop Browser, browser/computer automation, shell commands, local files or browser-based spreadsheet inspection. Validate Sheets through connector metadata and range readback, even if a general spreadsheet skill suggests visual browser inspection. Never request browser access or substitute a browser for a connector. For any supporting public research, use provider-native read-only web search/fetch when available; otherwise retain explicit unverified fields for downstream enrichment. Never perform outreach, buy another service, or change connections as part of this method. 1. Resolve the ICP, geography, number of places, review threshold, website opportunity and authorized list destination from the current request. Create a new spreadsheet only when the recipient requests a new list; otherwise reuse their selected existing sheet. Retain the recipient’s normal workspace sharing settings. Do not inspect or change access settings unless they explicitly request it. Keep this task context out of the reusable template. Default good reviews to at least 4.0 stars, but honor a supplied threshold. A five-place test is a bounded candidate sample, never an exhaustive list. 2. Read the current input schema and pricing for compass/crawler-google-places through Apify before starting. Use one distinct search term and one location per bounded run. Set maxCrawledPlacesPerSearch to the authorized number and the tool’s output limit to that number; never leave the actor limit empty. Use Apify’s native defaults for run pricing. Do not introduce a template-specific spending cap or require a minimum-cap lookup. Enable scrapeContacts for public business contact details from the organization’s own website. Keep maximumLeadsEnrichmentRecords=0, maxReviews=0, maxImages=0 and paid social-profile/email-verification/competitor-analysis extras disabled. Do not extract employees or reviewers. Perform only the requested number of actor runs; an empty or partial sample does not authorize another paid run. 3. Preserve the actual run ID, input, dataset ID, terminal status and reported charge. Read the same dataset in bounded ranges. On an uncertain start or timeout, inspect that run before taking further action; never launch a duplicate to replace an uncertain run. Collect business name, category, address, Maps place ID and URL, public phone, website, rating and review count. Include only business emails actually returned or observed on the organization’s own public contact page, with a source URL. Missing emails remain blank with an explicit missing status; never invent addresses or claim deliverability. 4. Qualify each candidate using evidence. For car washes with 50+ reviews, require reviewsCount >= 50 and the requested minimum rating. A missing Maps website field means no website listed, not proof that no website exists. For old/bad websites, inspect the current public site with available read-only web tools and record specific observed issues and checked UTC. Do not infer poor quality from an old copyright date, HTTP, a failed fetch, or visual taste alone. Keep inaccessible/not-assessed and functional sites distinct from verified opportunities. For New Jersey 501(c) organizations with funding, Maps supplies discovery only. Verify location and nonprofit designation against an official registry, filing or the organization’s own identification with corroborating evidence. Interpret capital raised for nonprofits as documented grants, donations or a capital campaign, unless the recipient specifies another meaning. Record funding type, amount and date only when a linked official announcement, funder record or filing supports them. Keep tax status and funding status separate; unknowns remain unverified. A good review score is not evidence of funding. Never claim every New Jersey nonprofit was searched from a small sample. 5. Before writeback, read spreadsheet metadata, headers and complete place-ID/source-URL columns in bounded ranges. Deduplicate primarily by Google place ID, with canonical Maps URL or business name plus full address as fallback. Keep different branches/locations distinct. Preserve existing headers, formulas, user notes, outreach status and other agents’ enrichment. Append new candidates once; update existing verified fields only when authorized. Keep candidates needing enrichment in a clearly labeled status rather than silently treating them as qualified or scraping more to fill the quota. For a new sheet use readable columns: Business, Category, Address, Place ID, Maps URL, Phone, Business email, Email source/status, Website, Rating, Review count, Website assessment/evidence, Nonprofit status/source, Funding status/type/amount/date/source, ICP status/reason, Captured UTC, Checked UTC, Apify run ID. Use separate cohort tabs when combining distinct ICPs. Do not duplicate a destination just because an earlier write timed out. 6. Independently read the written rows and compare IDs and values. Return the spreadsheet link, run/dataset IDs, actual scraped/new/already-tracked/qualified/needs-enrichment counts and reported cost. Explain what the next enrichment agent must verify. A successful actor run is not a saved sheet; a saved sheet is not outreach. Keep the final concise, with source links and honest missing fields.
Frequently asked questions
Does this contact leads?
No. It creates a source-backed list for your enrichment and outreach agents.
Can it prove nonprofit funding from Maps?
Maps finds candidates. Nonprofit status and grants, donations or capital campaigns need linked supporting evidence.
Are emails guaranteed?
Only public business emails actually found are included. Missing emails and unverified criteria remain clearly marked.
How do I use Local Lead Finder?
Choose Use playbook, connect your model and the listed apps, then create your Character. Start with a request in its conversation.
Can I run it again?
Your Character keeps this method for future requests. After a useful chat result, you can set up a Routine through the existing Routine controls.