Doctor Directory, Ratings & Reviews Scraper for Healthgrades avatar

Doctor Directory, Ratings & Reviews Scraper for Healthgrades

Pricing

from $1.50 / 1,000 results

Go to Apify Store
Doctor Directory, Ratings & Reviews Scraper for Healthgrades

Doctor Directory, Ratings & Reviews Scraper for Healthgrades

Scrape US doctors from Healthgrades: name, NPI, specialty, patient ratings, review counts, phone, address & hospital affiliations. Medical provider data & lead gen. Independent tool, not affiliated with or endorsed by Healthgrades; all trademarks belong to their owners.

Pricing

from $1.50 / 1,000 results

Rating

0.0

(0)

Developer

Haketa

Haketa

Maintained by Community

Actor stats

0

Bookmarked

10

Total users

1

Monthly active users

5 days ago

Last modified

Security

Limited permissions

Share

Healthgrades Scraper 🩺 — Doctors, Ratings, Reviews, NPI & Contact Data by Specialty + Location

This Healthgrades scraper extracts US healthcare provider data from Healthgrades as clean, structured records — search doctors by specialty and location and get name, NPI, patient star rating, review count, phone, practice addresses, hospital affiliations, telehealth and accepting-new-patients status, and more. Scrape Healthgrades at scale with no login and no coding — just pick a specialty, pick your cities, and run. The data is read straight from Healthgrades' own structured feed (no fragile HTML selectors), with automatic pagination and US residential proxy handling built in.

Export to JSON, CSV, Excel, or API.

👥 Built for healthcare lead-generation and marketing teams, medical recruiters and staffing agencies, referral-network builders, health-system strategy and market-research analysts, insurers and payors, and data/AI teams enriching provider datasets with patient-reputation signals.

ℹ️ Disclaimer: This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Healthgrades Marketplace, LLC or any of its subsidiaries. "Healthgrades" and all related names and logos are trademarks of their respective owners and are used here only to describe the publicly available data source. Please use this Actor in compliance with Healthgrades' Terms of Service and all applicable laws.


🔎 Why scrape Healthgrades?

Healthgrades is one of the largest consumer-facing healthcare directories in the United States, covering millions of physicians, dentists, and allied-health providers. Unlike raw government registries, Healthgrades layers patient-facing reputation data on top of each provider: star ratings, survey/review counts, Healthgrades Choice and patient-favorite badges, specialty detail, practice locations with coordinates, phone numbers, hospital affiliations, and accepting-new-patients status. That combination is exactly what sales, marketing, recruiting, and research teams need — and it is scattered across thousands of individual search-result pages.

Collecting this Healthgrades data by hand is slow and error-prone. A single specialty in a single metro can return dozens of pages of providers; multiply that by every specialty and every city you care about and manual copy-paste becomes impossible. This Healthgrades scraper automates the whole job: give it a specialty and a list of locations and it paginates through every result page, de-duplicates providers, and returns one rich, structured record per doctor ready for a spreadsheet, CRM, or database.

Because Healthgrades serves US traffic only and blocks datacenter IPs at the edge, reliable collection requires a US residential proxy — which this actor configures by default so you get consistent 200-OK results instead of empty pages.

Common reasons people scrape Healthgrades:

  • 📇 Build targeted provider lead lists by specialty + city, complete with phone, address, and ratings.
  • ⭐ Analyze doctor reputation — star ratings, review counts, and badges across a market or specialty.
  • 🏥 Map provider density and hospital affiliations for health-system network and referral planning.
  • 🧑‍⚕️ Source and qualify candidates for medical recruiting and physician staffing.
  • 📊 Run competitive and market research on reputation, telehealth adoption, and new-patient availability.
  • 🔗 Enrich NPI/NPPES records with the ratings, reviews, photos, and bios the federal registry lacks.
  • 🤖 Feed AI / data pipelines with normalized, reputation-aware provider datasets.

✨ What this Healthgrades scraper does

  • ✅ Search by specialty + location — choose a medical specialty from the dropdown (or type any custom specialty, condition, or doctor name) and one or more US cities; the specialty is searched in every location.
  • ✅ Advanced URL mode — paste Healthgrades usearch links directly to replicate any search or filter you build on the site.
  • ✅ Automatic pagination — reads Healthgrades' own totalPages and walks every result page (about 20 providers each), returning hundreds to thousands of de-duplicated providers per run, bounded by your maxItems and maxPagesPerSearch limits.
  • ✅ Rich provider records grouped into:
    • Identity — name, lastName, npi, profileUrl, specialty, specialtyDescription, gender, yearsSinceGraduation, photoUrl, providerId.
    • Reputation — rating (patient star rating), reviewCount, ratingPercent, and badges isHealthgradesChoice, isPatientFavorite, isRecommendedProvider, plus patient-highlighted strengths.
    • Contact & practice — phone, phones, primaryOfficeName, flattened address / city / state / zip / latitude / longitude, and the full addresses[] array for every office.
    • Access & affiliations — acceptsNewPatients, telehealthAvailable, isTelehealthOnly, affiliatedHospitalIds, hasTopHospital.
    • Insurance & bio — payorCount, payors, aboutMe, carePhilosophy (present when Healthgrades lists them).
    • Provenance — searchSpecialty, searchLocation, scrapedAt.
  • ✅ De-duplication — providers are keyed on NPI (falling back to profile URL / internal ID) so the same doctor is never saved twice across pages or overlapping searches.
  • ✅ US residential proxy, pre-configured — required because Healthgrades is US-only and blocks datacenter IPs; the actor rotates residential IPs with retries so blocked requests are retried transparently.
  • ✅ Export anywhere — JSON, CSV, Excel, XML, HTML table, or the Apify API and integrations.

🎯 Use cases

  • Healthcare lead generation — assemble specialty-and-city provider lists with phone, address, and ratings for outreach, email campaigns, and medical device/service sales.
  • Medical recruiting & staffing — find and shortlist providers, tracking accepting-new-patients and telehealth availability.
  • Referral-network building — map high-rated providers by specialty around a hospital or clinic.
  • Health-system & payor strategy — analyze provider density, hospital affiliations, and reputation across competing markets.
  • Market & competitive research — benchmark ratings, review volume, and telehealth adoption by specialty and metro.
  • Reputation monitoring — schedule recurring runs to track rating and review-count changes over time.
  • NPI / NPPES enrichment — join Healthgrades ratings, reviews, photos, and bios onto registry records for a complete provider profile.
  • Data & AI teams — build training or analytics datasets enriched with consumer-facing reputation signals.

📥 Input

Configure the run from the Apify Console form or via the API. All fields are optional — an empty run returns a diverse default sample of popular specialties across major US cities.

FieldTypeDescription
specialtystring (select)Medical specialty to search, chosen from the dropdown (e.g. Cardiology, Dermatology, Family Medicine, Pediatrics). Combined with every location.
specialtyCustomstringOptional free-text specialty, condition, or doctor name (e.g. Sports Medicine, Diabetes, Sleep Medicine). When filled, it overrides the specialty dropdown.
locationsarray (select)One or more US cities as City, ST (e.g. Miami, FL, New York, NY), chosen from the list. The specialty is searched in each.
locationsCustomarrayOptional extra US locations as City, ST (e.g. Boise, ID, Buffalo, NY), searched in addition to locations.
startUrlsarrayAdvanced. Paste Healthgrades search page links directly. When provided, specialty and locations are ignored.
maxItemsintegerMaximum providers to collect across all searches. 0 = no limit. Default 0 (prefilled 100).
maxPagesPerSearchintegerHow many result pages to fetch per specialty + location (~20 providers/page). Default 20.
proxyConfigurationobjectProxy settings. US Residential is required and set by default — please keep it.
maxConcurrencyintegerMaximum parallel requests. Default 3 (max 10).

Example — cardiologists in Miami:

{
"specialty": "Cardiology",
"locations": ["Miami, FL"],
"maxItems": 100
}

Example — dermatologists across several cities:

{
"specialty": "Dermatology",
"locations": ["New York, NY", "Los Angeles, CA", "Chicago, IL"],
"maxItems": 1000
}

Example — a custom specialty and extra locations:

{
"specialtyCustom": "Sports Medicine",
"locations": ["Denver, CO"],
"locationsCustom": ["Boise, ID", "Buffalo, NY"],
"maxItems": 500
}

Example — advanced, paste a search URL:

{
"startUrls": [
{ "url": "https://www.healthgrades.com/usearch?what=Pediatrics&where=Austin,+TX" }
]
}

📤 Output

Each result is one provider record. Example (fields present when Healthgrades lists them):

{
"name": "Dr. Juan Cueto, MD",
"lastName": "Cueto",
"npi": "1588614572",
"profileUrl": "https://www.healthgrades.com/physician/dr-juan-cueto-x3bjy",
"specialty": "Cardiology",
"specialtyDescription": "Cardiovascular Disease",
"gender": "M",
"yearsSinceGraduation": 22,
"rating": 4.8,
"reviewCount": 15,
"ratingPercent": 96,
"acceptsNewPatients": true,
"telehealthAvailable": true,
"isTelehealthOnly": false,
"isHealthgradesChoice": false,
"isPatientFavorite": true,
"isRecommendedProvider": true,
"primaryOfficeName": "Miami Cardiology Associates",
"photoUrl": "https://photos.healthgrades.com/img/prov/x/3/b/x3bjy_w60h80.jpg",
"phone": "(305) 555-0137",
"phones": ["(305) 555-0137"],
"city": "Miami",
"state": "FL",
"zip": "33133",
"address": "3663 S Miami Ave",
"latitude": 25.7392,
"longitude": -80.2305,
"addresses": [
{
"address1": "3663 S Miami Ave",
"address2": null,
"city": "Miami",
"state": "FL",
"zip": "33133",
"cityState": "Miami, FL",
"officeCode": "XR66RS",
"latitude": 25.7392,
"longitude": -80.2305
}
],
"affiliatedHospitalIds": ["HGST5D138D46100167"],
"hasTopHospital": true,
"payorCount": 24,
"payors": null,
"strengths": ["Listens & answers questions", "Explains conditions well"],
"aboutMe": null,
"carePhilosophy": null,
"providerId": "x3bjy",
"searchSpecialty": "Cardiology",
"searchLocation": "Miami, FL",
"scrapedAt": "2026-10-25T12:00:00.000Z"
}
FieldDescription
name / lastNameProvider display name (with credentials) and last name
npiNational Provider Identifier
profileUrlFull Healthgrades profile URL
specialty / specialtyDescriptionPrimary specialty and its description
genderProvider gender
yearsSinceGraduationYears since graduation
rating / reviewCount / ratingPercentPatient star rating (0–5), number of surveys/reviews, overall rating percentage
acceptsNewPatientsWhether the provider accepts new patients
telehealthAvailable / isTelehealthOnlyTelehealth flags
isHealthgradesChoice / isPatientFavorite / isRecommendedProviderReputation badges
primaryOfficeNameMain practice name
phone / phonesPrimary office phone and all listed phone numbers
photoUrlProvider photo URL
city / state / zip / address / latitude / longitudeFlattened primary location
addresses[]Every practice location (address1, address2, city, state, zip, cityState, officeCode, latitude, longitude)
affiliatedHospitalIds / hasTopHospitalAffiliated hospital IDs and top-hospital flag
payorCount / payorsAccepted-insurance count and payor list (present when available)
strengthsPatient-highlighted strengths (present when available)
aboutMe / carePhilosophyProvider bio and care philosophy (present when available)
providerIdHealthgrades internal provider ID
searchSpecialty / searchLocationThe specialty and location that produced this record
scrapedAtISO 8601 timestamp of when the record was collected

Fields like payors, strengths, aboutMe, and carePhilosophy are data-dependent — they populate only when Healthgrades lists that information for the provider, so expect them to be present for some records and null for others.

🔁 Pagination & scale

The scraper paginates automatically. For each specialty + location it fetches the first result page, reads Healthgrades' own totalPages value, and then walks the remaining pages (about 20 providers per page) using the pageNum query parameter, fetching pages with limited concurrency. Every provider is de-duplicated on NPI (falling back to profile URL / internal ID), so the same doctor is never saved twice across pages or overlapping searches.

Two inputs control scale:

  • maxItems caps the total number of providers across all searches (0 = no limit).
  • maxPagesPerSearch caps how many pages are fetched per specialty + location (default 20, i.e. ~400 providers per search).

Add more specialties and cities to collect hundreds to thousands of providers in a single run. An empty run (no specialty, no locations, no URLs) returns a diverse default sample of popular specialties across major US cities, capped to ~100 providers so it stays fast and cheap.

⚙️ How to use

  1. Open the actor on the Apify Console and click Try for free / Start.
  2. Pick a Specialty (or type one into Custom specialty or condition) and add one or more Locations.
  3. Set Max providers (maxItems) and, if needed, Max pages per search.
  4. Keep the proxy on its default US Residential (required — Healthgrades is US-only).
  5. Click Save & Start. Watch the live log as providers are saved.
  6. Export the dataset as JSON, CSV, Excel, XML, or HTML — or pull it from the Apify API.
  7. Automate: run on a schedule, or wire the output into Make, Zapier, Google Sheets, a CRM, or a webhook for a hands-off pipeline.

💡 Tips

  • 🌍 Keep the US Residential proxy — Healthgrades blocks datacenter IPs and non-US traffic; other proxy types return 0 results.
  • 🧪 Start small — try one specialty + one city with a low maxItems to confirm the output shape before scaling up.
  • 🗺️ Cover a region or the whole country by adding multiple City, ST locations; each is searched independently and results are merged + de-duplicated.
  • 🔤 Use specialtyCustom for anything outside the dropdown — a condition (Diabetes), a sub-specialty (Sports Medicine), or even a doctor's name.
  • 🔗 Advanced users can paste exact usearch URLs via startUrls to replicate any filter you set on the Healthgrades site.
  • 🔁 Schedule recurring runs to track rating, review-count, and accepting-new-patients changes over time.

❓ FAQ

Is scraping Healthgrades legal? This actor collects only publicly available information shown on Healthgrades search pages. You are responsible for using the data in compliance with Healthgrades' Terms of Service, applicable laws, and any privacy regulations relevant to your use case. The actor is an independent tool and is not affiliated with or endorsed by Healthgrades.

Do I need a proxy or a US IP? Yes. Healthgrades serves US traffic only and blocks datacenter IPs, so a US residential proxy is required. The actor is pre-configured with US Residential proxy by default — keep it for reliable results.

Do I need to log in or write any code? No. There is no login and no coding — configure the run from the form (or the API), click Start, and export the results.

How many providers can it return and how fast? As many as the searches contain — each specialty + city yields up to ~20 providers per page across its totalPages, bounded by maxItems and maxPagesPerSearch. Add more specialties and cities to reach hundreds to thousands of providers per run. Throughput depends on residential-proxy speed and your maxConcurrency.

Does it include patient ratings, review counts, and NPI? Yes — rating, reviewCount, ratingPercent, and npi are core fields, returned whenever Healthgrades lists them on the result.

Does it include phone numbers and addresses? Yes — the primary office phone (and all phones), plus flattened address/city/state/zip/latitude/longitude and the full addresses[] array for every practice location.

Is there an API? Yes. Every Apify actor is callable via the Apify API, so you can start runs and fetch the dataset programmatically, or integrate with Make, Zapier, Google Sheets, and webhooks.

What export formats are supported? JSON, CSV, Excel, XML, HTML table, and RSS — plus the Apify API and integrations.

How fresh is the data? Every run scrapes Healthgrades live, so results reflect the current listings at run time. Schedule runs to keep a dataset up to date.

Can I filter by specialty and location? Yes — that is the core of the actor. Use the specialty dropdown (or specialtyCustom) with the locations list (or locationsCustom). For finer control, paste exact search URLs via startUrls.

How does this compare to the free NPI / NPPES registry? The NPI/NPPES registry gives you the full universe of providers with NPI, taxonomy, and licensing — but no patient ratings, reviews, star scores, badges, hospital affiliations, photos, or bios. This Healthgrades scraper adds exactly that consumer-facing reputation and rich practice layer, so pairing the two yields a complete healthcare lead-gen dataset.

  • D&B Scraper — company firmographics and business profiles for B2B lead gen.
  • BBB Scraper — Better Business Bureau business listings, ratings, and contact data.
  • YouTube Contact Scraper — channel contact and business-email extraction for outreach.
  • Kakao Map Scraper — local-business listings, ratings, and contact details.
  • Yad2 Scraper — classifieds and listing data with structured fields.
  • Marktplaats Scraper — marketplace listings, prices, and seller details.

Ready to build your provider dataset? Click Start, pick a specialty and your cities, and export doctors from Healthgrades in minutes.

This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Healthgrades Marketplace, LLC or any of its subsidiaries. "Healthgrades" and all related names and logos are trademarks of their respective owners and are used here only to describe the publicly available data source.