finding-digital-agencies-via-google-search

Finds digital marketing agencies, creative studios, and web design firms via Google Search using apidojo's Google Search Scraper on Apify. Triggers when the user asks to: find digi…

API Dojo

@apidojo-io

Install

$ openclaw skills install @apidojo-io/finding-digital-agencies-via-google-search

Finding Digital Agencies Via Google Search


Inputs

ParameterTypeRequiredDefaultNotes
startUrlsarrayOptional[]Google search URLs
searchTermsarrayOptional[]Keywords to search on Google
countryCodestringOptionalUSCountry for Google search (e.g. US, GB, TR)
languageCodestringOptionalLanguage for results (e.g. en)
maxItemsnumberOptionalUnlimitedMaximum results to return across all queries
maxPagesPerQueryintegerOptional1Maximum result pages per query
mobileResultsbooleanOptionalfalseFetch mobile SERP layout
customMapFunctionstringOptionalJavaScript function to transform each output object

How to Run

Using run_actor.js (recommended)

# Quick answer (table)
node scripts/run_actor.js --actor "apidojo~google-search-scraper" --input '{"searchTerms": ["digital marketing agency NYC"], "countryCode": "US", "maxPagesPerQuery": 3}'

# Save as CSV
node scripts/run_actor.js --actor "apidojo~google-search-scraper" --input '{"searchTerms": ["digital marketing agency NYC"], "countryCode": "US", "maxPagesPerQuery": 3}' --output results.csv --format csv

# Save as JSON
node scripts/run_actor.js --actor "apidojo~google-search-scraper" --input '{"searchTerms": ["digital marketing agency NYC"], "countryCode": "US", "maxPagesPerQuery": 3}' --output results.json --format json

REST API fallback

curl -X POST "https://api.apify.com/v2/acts/apidojo~google-search-scraper/runs" \
  -H "Authorization: Bearer $APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"searchTerms": ["digital marketing agency NYC"], "countryCode": "US", "maxPagesPerQuery": 3}'

If Apify MCP is available: Use the Apify MCP call_actor tool with actor apidojo~google-search-scraper and the input above.


Scoring & Ranking

Score each result by:

  • snippet_has_agency_signals (contains: agency, studio, services, clients, marketing, SEO) → weight 0.50
  • is_agency_domain (not .gov, .edu, .wikipedia, .youtube) → weight 0.30
  • position → score = 1 - (position / total_results), weight 0.20
score = 0.50 * int(agency_signals) + 0.30 * int(valid_domain) + 0.20 * (1 - position/total)

Classification

ScoreTierLabel
≥ 0.70APRIME_PROSPECT
0.40–0.69BWARM_LEAD
< 0.40CLOW_PRIORITY

Edge Cases

  • Directory sites in results: Clutch, Yelp, Upwork listings are not agencies. Filter by checking if domain matches snippet.
  • Wikipedia/news results: Skip results with domains like wikipedia.org, bbc.com.
  • Limited contact data: SERP only returns title, URL, snippet — no phone/email. Use results as a starting list for manual outreach.
  • Duplicate agencies: Same agency may appear for multiple search terms — deduplicate by domain.
  • Local vs global: Use city-specific search terms for local results.

Top skills in this category