OrbTop

Psychology Today Therapist Scraper

LEAD GENERATIONBUSINESSOTHER

Psychology Today Therapist Scraper

Scrape therapist and counselor profiles from Psychology Today, the largest US therapist directory with roughly 200,000 listings. Returns names, credentials, specialties, insurance accepted, fees, languages, addresses, phones, bios, and license details — the fields most CRMs ask for, plus a few you didn't know you wanted.

Psychology Today Scraper Features

  • Filters by U.S. state, ZIP code, or any Psychology Today category slug — specialty, insurance brand, language, treatment orientation, you name it
  • Returns 35+ structured fields per profile, including the things therapists rarely volunteer in plain HTML
  • Reads Psychology Today's embedded SPA payload directly. No browser, no Playwright, no waiting for hydration
  • Formats phone numbers consistently as (XXX) XXX-XXXX
  • Uses US residential proxies — Psychology Today aggressively blocks datacenter IPs
  • Pay-per-event pricing at roughly $0.002 per profile, which is less than most paid lead lists charge per record

Who Uses Psychology Today Data?

  • EHR and practice-management vendors — build targeted outreach lists for SimplePractice, TherapyNotes, TheraNest competitors
  • Insurance billing services — segment therapists by insurance panels accepted and license type
  • Telehealth platforms — recruit providers who already offer online sessions, filtered by state license
  • Mental-health analytics teams — map provider density, fee distributions, and specialty coverage by region
  • CEU and training providers — segment by treatment orientation and credentials
  • Marketing agencies serving private-practice therapists — reach prospects by city, specialty, or modality

How Psychology Today Scraper Works

  1. You provide states, ZIP codes, or direct seed URLs — and an optional category slug to narrow by specialty, insurance, or language. Run with the defaults if you just want a sample.
  2. The scraper paginates through Psychology Today's directory listings (20 results per page, configurable depth) and collects therapist profile URLs.
  3. Each profile is fetched directly and parsed from the embedded SPA payload. That payload contains the fully-hydrated profile, so one HTTP request returns every field — no JavaScript execution, no second round-trip.
  4. Records save to the dataset as they're scraped. The run stops when maxItems is reached.

Input

Scrape one state

{
  "states": ["CA"],
  "maxPages": 5,
  "maxItems": 100,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": ["RESIDENTIAL"],
    "apifyProxyCountry": "US"
  },
  "sp_intended_usage": "Lead generation for therapy practice software",
  "sp_improvement_suggestions": "n/a"
}

Filter by specialty

{
  "states": ["NY", "NJ"],
  "category": "anxiety",
  "maxItems": 200,
  "sp_intended_usage": "Specialty-targeted outreach",
  "sp_improvement_suggestions": "n/a"
}

Filter by insurance

{
  "states": ["TX"],
  "category": "aetna",
  "maxItems": 50,
  "sp_intended_usage": "Aetna network analysis",
  "sp_improvement_suggestions": "n/a"
}

Search by ZIP

{
  "zipCodes": ["90025", "10001", "94110"],
  "maxPages": 3,
  "maxItems": 60,
  "sp_intended_usage": "Local therapist directory build",
  "sp_improvement_suggestions": "n/a"
}

Scrape specific profiles directly

{
  "seedUrls": [
    { "url": "https://www.psychologytoday.com/us/therapists/alexa-golding-los-angeles-ca/1001791" }
  ],
  "maxItems": 1,
  "sp_intended_usage": "Profile enrichment",
  "sp_improvement_suggestions": "n/a"
}

Input Parameters

Field Type Default Description
states string[] ["CA"] One or more U.S. state codes. Each state is paginated separately.
zipCodes string[] List of 5-digit ZIP codes. Each becomes a radius search on psychologytoday.com.
category string Optional category slug applied to every state/ZIP search. Examples: anxiety, trauma-and-ptsd, aetna, spanish, cognitive-behavioral-cbt.
seedUrls array Direct listing or profile URLs. When provided, takes precedence — scoped state/ZIP/category inputs are ignored for those URLs.
maxPages integer 5 Maximum pagination depth per state/ZIP/seed. Each page returns 20 profiles.
maxItems integer 100 Maximum total profiles to scrape across all seeds.
proxyConfiguration object Apify residential US Proxy settings. Datacenter proxies are blocked by Psychology Today, so residential is the only realistic option.

Psychology Today Scraper Output Fields

{
  "profileId": 1001791,
  "profileUrl": "https://www.psychologytoday.com/us/therapists/alexa-golding-los-angeles-ca/1001791",
  "name": "Alexa Golding",
  "firstName": "Alexa",
  "lastName": "Golding",
  "pronouns": "she, her",
  "credentials": "LMFT",
  "jobTitle": "Family Therapist",
  "verificationStatus": "VERIFIED",
  "practiceName": "",
  "address": "Los Angeles, CA 90025",
  "city": "Los Angeles",
  "state": "CA",
  "stateName": "California",
  "zip": "90025",
  "countryCode": "US",
  "phone": "(310) 789-2157",
  "photoUrl": "https://photos.psychologytoday.com/.../320x400.jpeg",
  "bio": "You've always been the caretaker for others...",
  "yearsInPractice": 9,
  "yearPracticeStarted": 2017,
  "degree": "MA Clinical Psychology",
  "institution": "The Chicago School of Professional Psychology",
  "licenseNumber": "130043",
  "licenseState": "CA",
  "licenseExpiration": "2027-12-01",
  "individualSessionCost": 225,
  "couplesSessionCost": 250,
  "initialSessionCost": 0,
  "slidingScale": false,
  "acceptsOnline": true,
  "acceptsInPerson": false,
  "acceptingNewClients": true,
  "issues": ["ADHD", "Anxiety", "Codependency", "Trauma and PTSD"],
  "treatmentOrientations": ["Attachment-based", "Cognitive Behavioral (CBT)", "Mindfulness-based (MBCT)"],
  "modalities": ["Individuals", "Couples"],
  "ageGroups": ["Adults"],
  "languages": ["English"],
  "insurance": ["Aetna", "Anthem", "Blue Cross", "Optum", "UnitedHealthcare"],
  "paymentMethods": ["American Express", "Mastercard", "Visa"],
  "lastUpdated": "2026-04-20T23:52:31-07:00"
}
Field Type Description
profileId number Numeric Psychology Today profile ID
profileUrl string Full profile URL on psychologytoday.com
name string Therapist full name
firstName string First name
lastName string Last name
pronouns string Self-reported pronouns
credentials string Credential suffix (e.g. LMFT, PsyD, Licensed Psychologist)
jobTitle string Profile health-role label (e.g. Marriage & Family Therapist)
verificationStatus string VERIFIED if Psychology Today has confirmed the license
practiceName string Group practice or company name (when present)
address string Primary practice formatted as City, ST ZIP
city string Primary practice city
state string Primary practice state code
stateName string Primary practice state full name
zip string Primary practice ZIP code
countryCode string Country code
phone string Formatted phone number
photoUrl string Profile photo URL
bio string Combined personal-statement paragraphs
yearsInPractice number Years in clinical practice
yearPracticeStarted number Year practice started
degree string Highest degree held
institution string Educational institution
licenseNumber string Primary license identifier
licenseState string Primary license issuing state
licenseExpiration string License expiration date (YYYY-MM-DD)
individualSessionCost number Cost per individual session in USD (0 if undisclosed)
couplesSessionCost number Cost per couples session in USD (0 if undisclosed)
initialSessionCost number Cost for initial session in USD (0 if undisclosed)
slidingScale boolean Whether the therapist offers sliding-scale fees
acceptsOnline boolean Whether the therapist offers online / telehealth sessions
acceptsInPerson boolean Whether the therapist offers in-person sessions
acceptingNewClients boolean Whether the therapist is currently accepting new clients
issues string[] Issues or specialties (anxiety, trauma, ADHD, etc.)
treatmentOrientations string[] Treatment orientations (CBT, DBT, EMDR, etc.)
modalities string[] Modalities offered (Individuals, Couples, Group, Family)
ageGroups string[] Age groups served
languages string[] Languages spoken
insurance string[] Insurance plans accepted
paymentMethods string[] Accepted payment methods
lastUpdated string ISO timestamp of the profile's last update on psychologytoday.com

FAQ

How do I scrape Psychology Today?

Psychology Today Scraper handles it. Pick a state or ZIP, optionally add a category filter, set a maxItems cap, and run. The scraper paginates the directory and pulls each profile's full data from the embedded SPA payload — no browser required.

What data can I get from Psychology Today?

Psychology Today Scraper returns 35+ fields per therapist, including name, credentials, practice address, phone, fee structure (individual, couples, initial, sliding-scale flag), session formats (online vs in-person), license number and expiration, insurance accepted, languages, treatment orientations, and a full bio. Email and external website URLs are gated behind a click-through interstitial on the site itself, so those two fields are not included.

How much does Psychology Today Scraper cost to run?

Psychology Today Scraper uses pay-per-event pricing — $0.10 per actor start plus $0.001 per record scraped. A 1,000-profile run costs roughly $1.10. Apify residential proxy usage is metered separately by Apify.

Does Psychology Today Scraper need proxies?

Psychology Today Scraper requires Apify residential proxies. Datacenter IPs get 403'd within ~100 requests, and most public free proxies are already blocked. The default proxy configuration in the input schema is set to US residential — leave it alone unless you have a reason not to.

Can I filter by insurance or specialty?

Psychology Today Scraper supports any Psychology Today category slug via the category input. That covers specialties (anxiety, trauma-and-ptsd), treatment orientations (cognitive-behavioral-cbt, emdr), insurance brands (aetna, bluecross, kaiser), languages (spanish, mandarin), and ethnicities. Browse the slugs on psychologytoday.com — the URL after ?category= is exactly what to pass.

How fresh is the data?

Psychology Today Scraper returns whatever Psychology Today is showing right now. Each record includes a lastUpdated field so you can see when the therapist last edited their profile.

Need More Features?

Need custom fields, additional country directories (UK, Canada, Australia), or a different filter? File an issue or get in touch.

Why Use Psychology Today Scraper?

  • Affordable — about $0.002 per profile after the start fee, which beats every paid therapist directory we've checked
  • Complete output — 35+ structured fields per profile, including fees, sliding-scale flag, license details, and treatment orientations that most directory scrapers skip
  • Fast — pulls profile data from the embedded SPA payload in a single request, no browser hydration overhead