Local SEO SMB Lead Gap Scorer avatar

Local SEO SMB Lead Gap Scorer

Pricing

Pay per usage

Go to Apify Store
Local SEO SMB Lead Gap Scorer

Local SEO SMB Lead Gap Scorer

Turn imported Google Maps or Google Places business rows into deterministic local SEO and SMB outreach gap scores.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Wit Nomad

Wit Nomad

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Turn imported Google Maps, Google Places, CSV, spreadsheet, dataset, or manual local-business rows into deterministic local SEO and SMB outreach gap scores.

This is an ingest-first Actor for agencies and operators that already have business rows from existing Google Maps/Places scrapers or manual research. It does not collect data itself. It normalizes the rows, dedupes likely duplicate businesses, classifies website presence from supplied URLs, and outputs a CRM-ready priority table.

What it does

  • Normalizes business name, category, address, city, phone, website, rating, review count, source URL, and Google Maps URL aliases.
  • Dedupes by supplied place ID/CID/FID, canonical Google Maps URL, or normalized business identity.
  • Classifies website status as missing, weak_web_presence, or present without fetching the website.
  • Scores local SEO / web design / marketing outreach gaps from supplied fields only.
  • Produces gap reasons, evidence snippets, a helpful outreach angle, a recommended offer, CRM fields, confidence, and warnings.

Input

The MVP supports items mode only. Use rows from existing Google Maps/Places scrapers, Google Places exports, CSV/spreadsheet/manual research, or Apify datasets that you paste/import.

Common row fields:

  • businessName, business, name, title, company, companyName, placeName
  • category, categoryName, primaryCategory, categories, types
  • address, fullAddress, streetAddress, location
  • city, suburb, locality, town, region
  • phone, phoneNumber, contactPhone, internationalPhoneNumber
  • website, websiteUrl, site, domain
  • rating, stars, googleRating
  • reviewCount, reviews, reviewsCount, userRatingsTotal
  • googleMapsUrl, mapsUrl, googleBusinessProfileUrl, placeUrl, sourceUrl, sourceLink, url
  • placeId, place_id, cid, fid

If an email or social field is already present, the Actor can pass it through in crmFields. It does not discover new emails or social profiles.

Output

Each dataset item includes:

  • normalized business identity and contact fields;
  • websiteStatus, leadScore, and priority;
  • gapReasons such as website_missing, weak_web_presence, low_review_count, or phone_missing;
  • input-grounded evidenceSnippets;
  • outreachAngle and recommendedOffer written to stay helpful and evidence-led, not spammy or shaming;
  • crmFields for downstream sales workflows;
  • confidence and warnings for data quality review.

Example use cases

  • Prioritize local businesses that appear to need a starter website or clearer owned web presence.
  • Sort Google Maps scraper output into CRM-ready agency outreach lists.
  • Identify rows where review operations, GBP cleanup, or contact-data cleanup may be a helpful offer.
  • Deprioritize stronger profiles with real websites, phone numbers, categories, addresses, high ratings, and meaningful review counts.

Limits and safety notes

  • This Actor does not scrape Google Maps.
  • This Actor does not scrape Google Places.
  • This Actor does not scrape websites, fetch URLs, crawl pages, or verify if a supplied site is live.
  • This Actor does not discover emails.
  • This Actor does not discover social profiles.
  • This Actor does not scrape reviews or infer review recency.
  • This Actor does not use AI/LLMs.
  • This Actor does not guarantee buyer intent.
  • This Actor does not guarantee lead validity.
  • This Actor does not guarantee GBP truth.
  • This Actor does not guarantee legal compliance.
  • This Actor does not guarantee SEO ranking impact.
  • This Actor does not guarantee outreach deliverability.
  • Outreach should be helpful/evidence-led and not spammy or shaming. Validate the business context before contacting anyone.

Local development

npm install
npm test
apify validate-schema

To run locally without Apify storage, save input as input.json and run:

$node src/main.js --input input.json --output output.json