All case studies
Community Health·8 min read · 2025

SDoH Prediction Model: making social risk visible before it derails care

A community health organization wanted to know which patients were likely to miss appointments, skip medications, or disengage entirely, and why. We built a social-determinants-of-health model that surfaces modifiable, non-clinical risk factors alongside each patient's chart.

0.81
AUROC on 90-day disengagement
+46%
social-work referrals to right patients
-23%
drop in care-plan dropout at 6 months
01 · The problem

What the practice was dealing with.

Community health patients often fall out of care for reasons that have nothing to do with the medicine: transportation, housing instability, food insecurity, caregiver burden, language access. The clinical plan is not the problem. Everything around the clinical plan is.

Clinicians knew this intuitively. But the information lived in unstructured notes, screeners that were not consistently filled out, and often nowhere at all. A social worker could only help patients she knew about, and she knew about the patients who happened to mention the right thing to the right provider on the right day.

The result: outreach and social-work resources got spread evenly across the panel instead of concentrated where they would actually change outcomes. The patients most likely to drop out of care were also the patients least likely to ask for help.

02 · Our approach

How we scoped and built it.

We built a lightweight SDoH feature store combining structured screener data (PRAPARE, Accountable Health Communities), unstructured notes (via NLP extraction of SDoH-indicative phrases), and external datasets (area-level deprivation, transit access, food retail density). No new screener to fill out. Everything already collected, just never unified.

The prediction target was 90-day disengagement: missed appointments without rescheduling, medication-pickup gaps, and lapsed care-plan adherence. Calibrated against the prior 18 months of real disengagement events.

The model surfaces, per patient, a risk score and, critically, the top three contributing SDoH factors, each tagged as modifiable or informational. "No reliable transportation" is actionable. "Age 78" is context. The UI makes the distinction explicit so the care team does not waste cycles on levers they cannot pull.

Top SDoH factors · among high-risk cohort
41%
29%
24%
18%
14%
11%
Transport
Housing
Food
Language
Caregiver
Employment

"We stopped guessing who needed the social worker. It changed who our social workers spent time with, and the outcomes followed."

Director of Population Health, Community Health Organization (name withheld by agreement)
03 · The outcome

What changed in the practice.

90-day disengagement AUROC of 0.81 on held-out data, with strong lift in the top three risk deciles. The model was sharpest exactly where the operational decisions happen.

Care teams redirected social-work referrals toward patients the model flagged. 46% more of those referrals landed on patients who actually had modifiable barriers, versus the prior pattern of referring based on who the provider happened to ask about transportation that week.

Six-month care-plan dropout fell by 23% in the cohort that received matched social-work outreach, compared to a similar cohort from the prior year. The social workers did not work harder. They worked on the right people.

6-month care-plan dropout · matched cohorts
31%
24%
Prior year
With SDoH model
-23% relative reduction in 6-month dropout among cohort that received model-matched social-work outreach.
04 · Stack

What we used.

PythonspaCy / clinical NLPXGBoostPostgreSQLFHIR integrationHIPAA-compliant pipeline
Your practice, next

Scope a similar engagement for your practice.

Book a consultation