Appointment scheduling (AS) plays a crucial role in outpatient clinic management. Traditional methods involve patient grouping using pre-defined rules and scheduling based on these groups. However, pre-defined rules may not adequately capture the heterogeneity in patients’ service times (i.e., consultation duration). Advanced machine learning (ML) methods can address individual-level heterogeneity but pose challenges for practical scheduling. To strike a balance, we propose a data-driven AS decision support system,
Cluster-Predict-Schedule
(
CPS
), integrating both supervised and unsupervised ML for efficient patient grouping and scheduling. The novelty of
CPS
lies in its adaptability to service time heterogeneity through a data-driven approach, determining patient groups based on data rather than pre-defined rules. Additionally,
CPS
includes a generic and efficient algorithm for generating appointment templates adaptable to any number of patient groups. Our system’s efficacy is demonstrated using a real-world dataset. Evaluated by the weighted sum of patient wait times, physician idle time, and overtime,
CPS
achieves up to 15.0% cost reduction compared to the
FCFA
(first-call, first-appointment) scheme and over 4.7% savings against the common
New/Return
classification with
traditional sequencing candidate
(
TSC
) rules. In addition,
CPS
enhances outpatient operational efficiency without compromising fairness.