Healthgrades Doctor Scraper - Physician & NPI Data avatar

Healthgrades Doctor Scraper - Physician & NPI Data

Pricing

from $2.00 / 1,000 doctor profiles

Go to Apify Store
Healthgrades Doctor Scraper - Physician & NPI Data

Healthgrades Doctor Scraper - Physician & NPI Data

Scrape doctor & physician profiles from Healthgrades by specialty + US city, or paste /usearch and /physician URLs. One flat row per doctor: name, specialty, star rating, reviews, NPI, address, phone, insurance, telehealth. Optional profile enrichment: bio, education, languages.

Pricing

from $2.00 / 1,000 doctor profiles

Rating

0.0

(0)

Developer

Muhamed Didovic

Muhamed Didovic

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

2 days ago

Last modified

Share

Healthgrades Doctor Scraper

Turn any Healthgrades search into clean, structured physician data. Search by specialty + US city, or paste /usearch and /physician URLs — and get one flat row per doctor with name, specialty, star rating, review count, NPI, address, phone, accepted insurance, telehealth and appointment availability. Flip on detail mode to add each doctor's biography, education, languages spoken, procedures and full office list.

Built for healthcare market research, provider-network and referral analysis, credentialing, and physician lead generation across every specialty.

How it works

How the Healthgrades Doctor Scraper works

✨ Why use this scraper?

  • Rich rows out of the box — ~30 fields per doctor from the search results alone: name, specialty, star rating, review count, NPI, gender, years of experience, address, image, accepted insurance, telehealth and same-/next-day availability, plus Healthgrades badges (Recommended, Patient Favorite, HG Choice).
  • Two ways in — specialty + location searches, or direct Healthgrades /usearch and /physician URLs. Mix them in one run.
  • Clean 200s, no captcha — every request routes through US residential IPs with a real browser fingerprint, so you get the real page and full data.
  • Full profile on demand — turn on Scrape doctor profile pages (or paste a physician URL) to add phone number, biography, education and training, languages spoken, procedures and the complete list of office locations.
  • No brittle DOM scraping — reads Healthgrades' embedded app data, so the output stays stable when the page layout changes.
  • JSON, CSV, Excel or API — pipe straight into your sheet, CRM, BI tool or pipeline. Billed per doctor.

🎯 Use cases

You are a…Use it to…
Healthcare marketerBuild targeted physician lists by specialty and city for outreach campaigns
Market researcherMeasure provider density, rating distribution and telehealth adoption per specialty/market
Medical recruiterSource physicians by specialty, location, experience and accepted insurance
Payer / network analystMap which providers accept which insurance and where they practice
Data / app builderSeed a provider directory with structured doctor rows (NPI, specialty, address, ratings)

📥 Supported inputs

InputExampleWhat it does
Specialty + locationCardiology|New York, NYSearches Healthgrades and paginates the doctor results
Specialty onlyDermatologySearches that specialty nationwide
Search URLhttps://www.healthgrades.com/usearch?what=Cardiology&where=New+YorkPaginates that search's results
Physician URLhttps://www.healthgrades.com/physician/dr-jane-doe-abc12Scrapes that single doctor in full detail

Not supported: patient records, appointment booking, login-only or account data, and anything behind a Healthgrades login. The actor reads only public search and physician-profile pages.

⚙️ How it works

  1. Classify every input — Specialty|Location pairs become search URLs; pasted URLs are sorted into search vs physician.
  2. Fetch each page over a US residential IP with a real browser TLS fingerprint, so the full page is returned.
  3. Parse the page's embedded app data — a search page yields ~20 doctors; the next-page sequence is followed automatically up to your limit.
  4. Enrich each doctor from their profile page (when Scrape doctor profile pages is on): phone, biography, education, languages, procedures and every office.
  5. Emit one flat, deduplicated row per doctor to the dataset.

⚙️ Input parameters

FieldTypeDefaultDescription
searchQueriesarraySearches in Specialty|Location form, e.g. Cardiology|New York, NY. Location optional.
startUrlsarrayHealthgrades /usearch and /physician URLs. Auto-classified.
scrapeDetailsbooleanfalseAlso fetch each doctor's profile page for phone, biography, education, languages and procedures (~2× requests). Pasted physician URLs are always fully detailed.
maxItemsinteger1000Max rows for the whole run. Free tier is additionally capped at 100.
maxItemsPerSearchinteger1000Max doctors per search / URL.
maxConcurrencyinteger6Parallel requests. Keep moderate (4–8).
maxRequestRetriesinteger15Retry budget per request on 403 / 429 / 5xx and network errors.
proxyobjectApify Residential (US)Applies to free-tier runs; paid runs use a built-in US residential pool.

📊 Output overview

Each dataset record is one doctor. Rows carry the search-card fields (name, specialty, rating, reviews, NPI, address, image, accepted insurance, telehealth, availability, badges) and — when Scrape doctor profile pages is on, or for pasted physician URLs — the detail fields (phone, biography, education, languages, procedures, full office list). Ratings are on a 0–5 star scale.

📦 Output sample

{
"rowType": "doctor",
"npi": "1730192837",
"pwid": "gf28x",
"name": "Dr. Satjit Bhusri, MD",
"profileUrl": "https://www.healthgrades.com/physician/dr-satjit-bhusri-gf28x",
"specialty": "Cardiology",
"specialtyDescriptions": ["Cardiologist", "Interventional Cardiology Specialist"],
"gender": "Male",
"age": 47,
"yearsExperience": 19,
"rating": 4.5,
"reviewCount": 62,
"isRecommendedProvider": true,
"isPatientFavorite": true,
"isHgChoice": false,
"acceptsNewPatients": true,
"telehealthAvailable": true,
"sameDayAppointments": false,
"nextDayAppointments": true,
"address": "635 Madison Ave Fl 11",
"city": "New York",
"state": "NY",
"postalCode": "10022",
"phone": "(212) 752-3464",
"imageUrl": "https://d3euc9tf6ejmqe.cloudfront.net/…/provider.jpg",
"insurances": ["Aetna", "Cigna", "UnitedHealthcare"],
"insuranceCount": 41,
"affiliatedHospitalIds": ["hg-12345"],
"offices": [
{ "name": "Upper East Side Cardiology", "address1": "635 Madison Ave Fl 11", "city": "New York", "state": "NY", "postalCode": "10022", "phone": "(212) 752-3464" }
],
"languages": ["English", "Hindi", "Punjabi", "Spanish"],
"education": [
{ "type": "Medical School", "name": "SUNY Downstate", "completionYear": 2006 }
],
"sourceMode": "physician",
"scrapedAt": "2026-07-06T07:30:00.000Z"
}

🗂 Key output fields

FieldTypeNotes
name / profileUrlstringDoctor name (with credentials) + canonical profile URL
npistringNational Provider Identifier
specialty / specialtyDescriptionsstring / string[]Primary specialty + descriptive titles
rating / reviewCountnumberPatient star rating (0–5) + number of survey responses
yearsExperience / age / gendernumber / stringPractitioner demographics
address / city / state / postalCodestringPrimary practice address
phonestringPrimary office phone (with detail / on physician URLs)
insurances / insuranceCountstring[] / numberAccepted insurance carriers
acceptsNewPatients / telehealthAvailablebooleanAvailability flags
sameDayAppointments / nextDayAppointmentsbooleanAppointment availability
isRecommendedProvider / isPatientFavorite / isHgChoicebooleanHealthgrades badges
officesarrayEvery practice: name, address, city, state, ZIP, phone
education / languages / procedures / biographyPresent with scrapeDetails / on physician URLs

❓ FAQ

Can I get the doctor's email? No. Healthgrades doesn't publish physician email addresses; the actor returns the public profile — name, specialty, ratings, NPI, address, office phone, accepted insurance and (with detail on) biography, education and languages.

How many doctors can I get per search? Healthgrades returns ~20 doctors per page and paginates deep (popular specialty + big city searches run to 100+ pages). Use maxItemsPerSearch to cap.

What does Scrape doctor profile pages add? The search row is already rich (~30 fields). Turning it on visits each doctor's profile to add the phone number, biography, education and training, languages spoken, procedures and full office list — at roughly double the requests. Physician URLs you paste are always fully detailed.

Is the star rating 0–5 or 0–10? Output is always normalized to a 0–5 star scale, regardless of which internal scale the page used.

Do I need to configure proxies? No. US residential routing is built in (Healthgrades is a US site). Just give it specialties + cities or URLs.

💬 Support

Found a bug or need an extra field? Open an issue on the actor's Issues tab and it'll be looked at quickly.

🛠 Additional services

Need a custom field, another provider directory (Vitals, Zocdoc, WebMD, NPI Registry), or a scheduled physician-data feed into your warehouse? Custom scraping and pipeline work is available on request.

🔎 Explore more scrapers

Looking for more directory or company-data sources? Check out the other directory, review and marketplace scrapers in the same publisher's collection on the Apify Store.


⚠️ 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 or affiliates. All trademarks mentioned are the property of their respective owners.

The scraper accesses only publicly available Healthgrades search and physician-profile pages — no authenticated endpoints, no login-only or private data, and no patient information. Users are responsible for ensuring their use complies with Healthgrades' Terms of Service, applicable data-protection law (including GDPR and CCPA where relevant), and any professional or contractual obligations of their own organisation. Scraped data concerns healthcare professionals in their public professional capacity; use it lawfully and honour any opt-out or do-not-contact requirements.


SEO Keywords

healthgrades scraper, scrape healthgrades, healthgrades doctor scraper, healthgrades physician scraper, doctor data extraction, physician directory scraper, healthgrades api, medical provider scraper, npi scraper, doctor ratings scraper, healthcare provider data, physician lead generation, scrape doctor profiles, healthgrades reviews scraper, doctor specialty scraper, medical directory scraper, physician contact scraper, healthgrades listings scraper, apify healthgrades, provider network data