Med Spa Lead Discovery - Emails, Scores & Personalization Hooks
Pricing
Pay per event
Med Spa Lead Discovery - Emails, Scores & Personalization Hooks
The only lead gen tool built for selling to medical spas. Discovers medspas via Google & directories, verifies they are genuine, deep-crawls for decision-maker contacts, scores lead quality, and generates personalization hooks.
Pricing
Pay per event
Rating
0.0
(0)
Developer

George Kioko
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
💉 Med Spa Lead Discovery - High-Intent Local Leads with Emails & Personalization
The only lead gen tool built specifically for selling to medical spas. This actor discovers med spa websites through Google search and industry directories, verifies they're genuine medspas (not dermatologists or day spas), deep-crawls for decision-maker contacts, scores lead quality, and generates personalization hooks so your first email already sounds like you've done your homework. You get outreach-ready leads, not raw data.
Built for agencies, SaaS companies, and consultants who sell to the medspa vertical -- marketing services, booking software, payment processing, skincare products, compliance tools, or practice management solutions.
📊 What Data Can You Extract?
- Business info -- name, website, address, phone, service menu, brand positioning
- Contact info -- emails (general + decision-maker when available), phone numbers, social profiles
- Service signals -- which treatments they offer (Botox, fillers, laser, CoolSculpting, etc.), price ranges, brand affiliations
- Lead quality scores -- ICP score, quality classification (outreachReady / needsManualReview / rejected)
- Personalization hooks -- service gaps, pain signals (outdated website, no online booking, poor reviews), brand voice snippets for tone-matching your outreach
- Niche verification -- positive/negative keyword scoring to filter out non-medspa businesses
⚡ Key Features
| Feature | Description |
|---|---|
| Multi-Source Discovery | Finds medspas through Google search, industry directories (RealSelf, Allergan locator, etc.), and your own seed URLs or CSV |
| Niche Verification | Positive/negative keyword scoring ensures you only get genuine medspas, not day spas, dermatologists, or plastic surgeons |
| Two-Phase Crawl | Fast probe phase checks if a site is a medspa, then deep-crawl phase extracts contacts and service details |
| ICP Scoring | Each lead is scored against your ideal customer profile and classified as outreachReady, needsManualReview, or rejected |
| Personalization Hooks | Automatically identifies pain signals, service gaps, and brand voice so your outreach converts |
| Budget Governor | Set a max spend and the actor stops when the budget is reached -- no surprise bills |
| CSV Export | Clean CSV output ready for import into any CRM, email tool, or spreadsheet |
📥 Input
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
keywords | Array | No* | ["med spa", "medical spa", "medspa"] | Search terms for Google discovery |
locations | Array | No* | -- | Target locations (e.g., ["Miami FL", "Los Angeles CA"]) |
seedUrls | Array | No | -- | Direct URLs or CSV file URLs of known medspa websites to enrich |
mode | String | No | balanced | fast (probe only), balanced (probe + deep crawl), high_precision (full enrichment) |
maxLeads | Integer | No | 100 | Maximum outreach-ready leads to return |
maxBudget | Number | No | -- | Maximum spend in USD (budget governor) |
includeRejected | Boolean | No | false | Include rejected leads in output (useful for debugging) |
*At least locations or seedUrls is required.
Example input:
{"keywords": ["med spa", "medical spa", "medspa", "aesthetic clinic"],"locations": ["Miami FL", "Fort Lauderdale FL", "West Palm Beach FL"],"mode": "balanced","maxLeads": 50,"maxBudget": 300}
📤 Output Example
{"businessName": "Glow Aesthetics Miami","website": "https://glowaestheticsmiami.com","address": "1455 Brickell Ave, Suite 220, Miami, FL 33131","phone": "+1-305-555-0234","emails": {"general": "hello@glowaestheticsmiami.com","decisionMaker": {"email": "dr.santos@glowaestheticsmiami.com","name": "Dr. Maria Santos","title": "Medical Director & Owner","source": "team_page"}},"socialProfiles": {"instagram": "https://instagram.com/glowaestheticsmiami","facebook": "https://facebook.com/glowaestheticsmiami"},"services": ["Botox","Juvederm Fillers","Laser Hair Removal","Chemical Peels","Microneedling","PRP Therapy"],"brandAffiliations": ["Allergan", "Galderma"],"nicheVerification": {"score": 0.94,"positiveSignals": ["botox", "filler", "medical director", "aesthetic"],"negativeSignals": [],"verdict": "confirmed_medspa"},"leadQuality": {"icpScore": 87,"classification": "outreachReady","reasons": ["High-traffic location (Brickell)","Active social media presence","Multiple service lines","Decision-maker contact found"]},"personalization": {"painSignals": ["Website loads in 6.8s (poor)","No online booking system detected","Last blog post is 8 months old","Google reviews average 3.9 stars (below market)"],"serviceGaps": ["No CoolSculpting or body contouring listed","No IV therapy or wellness services"],"brandVoice": "Luxury/clinical hybrid. Uses words like 'rejuvenation', 'artistry', 'personalized care'. Warm but professional tone.","outreachAngles": ["Their website speed is hurting mobile conversions -- 6.8s load time vs. 2s industry benchmark","They're leaving money on the table with no online booking -- competitors in Brickell all have it","Their Google review score (3.9) is below the Miami medspa average (4.4) -- reputation management angle"]},"discoveredVia": "google_search","scrapedAt": "2026-03-02T09:45:12Z"}
💰 Pricing
This actor uses Pay Per Event (PPE) pricing based on lead quality:
| Event | Cost |
|---|---|
| Outreach-ready lead (email found, verified medspa, ICP score > 60) | $4.90 |
| Decision-maker direct contact (named person with email/phone and title) | $8.90 |
| Scenario | Leads | Cost |
|---|---|---|
| 20 outreach-ready leads | 20 | $98.00 |
| 50 outreach-ready leads | 50 | $245.00 |
| 10 decision-maker contacts | 10 | $89.00 |
Why this pricing? A single closed medspa client is worth $2,000-50,000+/year to an agency. At $4.90 per qualified lead with personalization hooks, you need a 0.5% close rate to be wildly profitable. These are not commodity leads -- they come with verified contacts, quality scores, and ready-to-use outreach angles.
Budget Governor: Set maxBudget in your input to cap your spend. The actor stops discovering new leads once the budget is reached, and you only pay for the leads that were actually enriched and delivered.
🎯 Use Cases
- Marketing agencies -- Build a pipeline of medspa clients with personalized outreach that references their specific website issues, missing services, and competitive gaps
- Booking software companies -- Find medspas without online booking and pitch with data ("we found 47 medspas in Miami with no online booking -- here's what that costs them")
- Skincare/device reps -- Identify medspas that don't carry your brand yet, with decision-maker contacts for direct outreach
- Practice management consultants -- Target medspas with operational pain signals (poor reviews, outdated web presence, no blog activity) and offer concrete improvement plans
🔌 API Usage
curl "https://api.apify.com/v2/acts/YOUR_USERNAME~medspa-lead-discovery-ppe/runs" \-X POST \-H "Content-Type: application/json" \-H "Authorization: Bearer YOUR_API_TOKEN" \-d '{"keywords": ["med spa", "medical spa"],"locations": ["Scottsdale AZ", "Phoenix AZ"],"mode": "balanced","maxLeads": 30,"maxBudget": 200}'
Retrieve results as CSV for CRM import:
curl "https://api.apify.com/v2/datasets/DATASET_ID/items?format=csv" \-H "Authorization: Bearer YOUR_API_TOKEN" \-o medspa_leads.csv
Webhook integration (get notified when done):
curl "https://api.apify.com/v2/acts/YOUR_USERNAME~medspa-lead-discovery-ppe/runs" \-X POST \-H "Content-Type: application/json" \-H "Authorization: Bearer YOUR_API_TOKEN" \-d '{"keywords": ["med spa"],"locations": ["Austin TX"],"mode": "high_precision","maxLeads": 25,"webhooks": [{"eventTypes": ["ACTOR.RUN.SUCCEEDED"],"requestUrl": "https://your-webhook-url.com/leads-ready"}]}'
❓ FAQ
Q: How does the niche verification work?
A: The actor scores each discovered website against curated lists of positive signals (e.g., "botox", "filler", "aesthetic nurse", "medical director") and negative signals (e.g., "nail salon", "hair stylist", "massage only"). Sites that score below the threshold are rejected, so you don't waste money on non-medspa businesses. The high_precision mode applies stricter thresholds and checks for state medical licensing indicators.
Q: What's the difference between modes?
A: Fast mode does a quick probe -- verifies the site is a medspa and grabs basic contacts. Balanced mode adds a deep crawl for decision-maker contacts, service details, and personalization hooks. High precision mode adds stricter verification, cross-references multiple directories, and enriches with additional data points. Most users find balanced is the sweet spot.
Q: Can I use my own list of medspa URLs instead of Google search?
A: Yes. Use the seedUrls parameter to provide direct URLs or a link to a CSV file. The actor will skip the discovery phase and go straight to verification, deep-crawl, and enrichment. This is great if you already have a list from another source and want to add quality scores and personalization hooks.
🛟 Support
- Bug reports & feature requests: Open an issue on the actor's GitHub repository or use the Apify Console issue tracker
- Questions: Post in the actor's discussion tab on Apify Store
- Custom verticals: If you need a similar lead discovery tool for a different niche (dentists, chiropractors, law firms), contact us about customization