An outpatient clinic operator faces two coupled decisions: how to design slot duration and layout on the doctor's calendar; how many patients to place per slot given expected no-show (overbooking). Classical healthcare OR: Outpatient Appointment Scheduling Problem (OAP).
In plain words
Sound familiar?
- Our clinic sees 40-150 patients a day; slot intervals are fixed (15 or 20 minutes) but actual consultation time varies between 5 and 25 minutes, so the queue falls apart by afternoon.
- A patient books a 09:00 slot but actually enters the doctor's room at 09:50; wait-time complaints are now routine.
- The doctor finishes the last patient at 19:45 instead of 18:30; overtime hours stack up weekly and doctor dissatisfaction has started.
- Our no-show rate is 20-30% but we do not overbook; the doctor sits idle 60-90 minutes a day, and ROI is in question.
- Lab-result delay (blood test, imaging readback) pushes patients back into the queue — when 'follow-up surge' hits, the queue spirals.
- We are linked to the national central booking portal; the slot template has to match the portal but local clinic dynamics differ.
- We are evaluating opening a new doctor or new specialty line; capacity planning has no concrete wait-time / doctor-utilisation curve.
Why it matters
How it's solved
Technical depth
How it's solved
Technical depthIn one sentence: Instead of splitting the doctor’s calendar into fixed 15-minute blocks, set slot lengths from the actual consultation-time distribution and no-show rate — put two patients in some slots, keep others long — so patient wait time and doctor idle time are minimised together.
This problem is studied in Operations Research (the discipline that uses math and computers to solve business decisions) as the Outpatient Appointment Scheduling Problem (OAP). The decision has three components: slot duration design (how much time per slot), slot loading / overbooking (how many patients per slot), and intra-day assignment (which patient type into which slot — urgent vs routine, short vs long consultation). Solution in three stages:
1. Modeling. Input data: patient demand distribution (daily/hourly arrivals, patient-type tags — new patient vs follow-up, quick check vs detailed exam, returning for lab result vs first-time registration), actual consultation-time distribution (log-normal — right-tailed distribution common, mean + standard deviation), no-show probability (function of patient type and time of day), doctor calendar (weekly shifts, breaks, leave), capacity (total daily slot count, physical exam-room count). Constraints: daily working window (e.g. 09:00-17:00 with breaks), maximum overtime spillover (e.g. 30 minutes), doctor-patient continuity (in a panel-doctor system the patient always stays with the same doctor), mandatory break hours. Objective: weighted sum of patient waiting time and doctor idle time minimised.
2. Solver-driven decision. Three classical approaches: slot duration design — balanced allocation (equal-spacing), the Bailey-Welch rule (two patients in the first slot, one in the rest — classical heuristic), the dome shape (denser slots near midday — at the demand peak), variable-block allocation; overbooking model — deterministic (no-show rate fixed) or stochastic (no-show probability drawn from a distribution, expected wait + expected idle in the objective function); intra-day assignment — MIP (Mixed-Integer Linear Programming — optimisation with some 0/1 variables and some continuous) for the weekly slot template, then a priority rule for intra-day dynamic assignment (urgent vs routine). For stochastic service time + no-show, stochastic programming or simulation-optimisation (try hundreds of demand scenarios, pick the best policy — the most common practical approach). Online/dynamic decisions (intra-day appointment add/cancel): online policy (priority rule at the moment of arrival) or rolling-horizon MIP (the template is re-solved daily/weekly).
3. Field integration. Output in three layers: weekly slot template (per doctor: day-hour-slot duration-overbooking rate), daily appointment-assignment list (patient-slot matching — priority rule by patient type), monthly report (actual vs plan: mean wait time, doctor utilisation, no-show drift, extra appointment-capacity usage). The patient-facing appointment system (website, call centre, mobile app, the national central booking portal) reads the slot template. SMS reminders (effective no-show reducer, 3-5 percentage points), automatic follow-up offers when a lab result becomes ready. Quarterly committee: actual vs planned mean wait, doctor productivity, no-show curve, patient-satisfaction score.
Alternatives
Manual plus spreadsheet
FreeZero license
Who it fits: Single-doctor practice, fewer than 40 patients/day
- + Zero software cost
- + Clinic manager's experience leads
- + Quick changes (urgent patient) by phone
- − Above 40 patients/day slot design saturates the manager's mental load
- − No-show modelling not possible — overbooking is gut-feel
- − Patient wait time is not tracked or reported
- − Capacity analysis (for new-doctor / new-specialty decisions) is weak
Local hospital information system appointment module
Enterprise100K-500K TRY license + 30K-150K TRY/year maintenance (TR market observation)
Who it fits: Mid-size clinic (5-15 doctors), 80-300 patients/day
- + Close to TR regulation (insurance integration, alignment with the national central booking system)
- + Integrated with patient records
- + Turkish UI, local support
- + Basic reporting (daily occupancy, no-show count)
- − No slot-design optimisation — templates are manager-set
- − Overbooking model absent or only a flat rate
- − Stochastic service time not modelled — slot duration fixed
- − No capacity simulation
International clinical operations platform
Enterprise200K-1.5M EUR license + 80K-400K EUR/year maintenance (large healthcare IT)
Who it fits: Large clinic chain / university hospital (15+ doctors, multi-specialty)
- + Mature slot-design module — equal-spacing, two-in-first-slot, denser-at-midday (dome), variable-block options
- + Variability of consultation time and no-show probability are reflected in the models
- + Scenario analysis ('if I raise overbooking by 10%, what happens to mean wait') is available
- + Rich capacity-analysis reporting
- − High license + long (9-18 month) deployment
- − TR healthcare-regulatory customisation (insurance, national central booking portal integration) extends the project
- − Wide training programme for clinical staff
- − Vendor-specific data formats
Open-source solver plus custom optimisation module
Open SourceFree license; in-house build 14-26 weeks or 400K-1.2M TRY consulting
Who it fits: Healthcare group with a technology team, integration into existing hospital information system
- + No license fee
- + Open-source tooling for slot design and overbooking is mature
- + Scenario testing ('if I do X, then Y') is well supported
- + Reusable across multiple clinics / specialties
- − Needs in-house optimisation specialist + healthcare-operations analyst
- − Moving from initial setup to field system takes 6-10 months
- − Maintenance stays with the operator
- − National central booking portal integration is a separate project
Recommendation
Ask in the meeting
- Which slot-design approaches does the system support — equal-spacing, two-in-first-slot, denser-at-midday, variable-block? Can each doctor have a distinct template?
- Does the overbooking model use a no-show probability distribution or only a flat rate? Is a combined 'minimise wait + idle' objective function supported?
- Can the system handle consultation time varying by doctor and patient type? Can slot duration vary by patient type?
- Is no-show probability computed dynamically — by patient type, time of day, past behaviour — or just one flat rate?
- Is there a scenario-analysis module that can answer 'if I raise overbooking by 10%, what happens to mean wait'?
- Is two-way synchronisation with the national central booking portal supported? Does the slot template flow automatically into the portal?
- During a pilot, with 8-12 weeks of real data, how would the system report the saving versus the previous manual design?
- If we end the contract, in which standard format can we export appointment history, no-show curve, slot-design rules and patient-satisfaction data?
Technical details
Editor’s note
In plain speech this is called “the outpatient booking system”, “appointment-interval design” or “doctor calendar planning”. In the academic literature it has a single name: Outpatient Appointment Scheduling Problem (OAP). Inside it sit three linked sub-decisions — slot duration design, slot loading (overbooking) and intra-day assignment. If you walk into a vendor meeting without separating these three layers, you cannot test which decision layer the module being sold actually optimises — visualising a slot template is one thing, solving a stochastic OAP MIP for slot design is another.
Distinguish this from other healthcare OR problems. Operating-room scheduling (#008) is the inpatient surgery problem — operating room, surgical team, duration estimation. Patient flow + bed management (#038) decides which ward an admitted patient goes to, bed readiness, discharge timing. Outpatient appointment scheduling (#055) is wholly ambulatory — the patient arrives, is seen, leaves; never admitted. The decision is slot duration + overbooking rate + slot-loading priority. Software that conflates the three serves each with a half solution.
Most-skipped point in the sector: failure to model no-shows. In the Turkish outpatient sector the no-show rate fluctuates between 20% and 30% (industry-wide observation). Most clinics accept no-shows as “inevitable” and never overbook; the doctor then sits idle 1-2 hours a day, capacity is wasted. The academic overbooking model shows: with a calibrated no-show probability, certain slots receive two patients at once, mean wait time rises only slightly (3-6 minutes), and doctor idle time drops sharply (30-50%). The second skipped point: lab-result return windows. A patient is seen in the morning and told “come back this afternoon for the blood-test result”; by afternoon the queue is already deranged. If the slot template lacks a “lab-return window”, the second half-day always falls into queueing.
Step-by-step path — for the SMB
Stage 1 — Measure first, plan after. At least 6 months of appointment data: per patient, planned slot time vs actual room-entry time, actual consultation duration, no-show / cancel / late-arrival flag, patient type (new, follow-up, lab return), booking channel (web, call, the national central booking portal). Doctor inventory: weekly working window, leave calendar, specialty, panel-doctor or pooled. Demand pattern: weekday vs weekend, in-month peak days, seasonality (flu season, school start).
Stage 2 — Extract the knowledge capital. Actual consultation-time distribution per doctor and patient type (log-normal fit). No-show probability curve (by patient type and time of day — early morning slots may have high no-show; late afternoon slots may have low). Lab-return time distribution (blood test mean 60 minutes, imaging 90-180 minutes). Doctor idle-time and overtime curve by hour. Correlation between mean wait and patient-satisfaction score.
Stage 3 — Pilot. 8-12 weeks. For a subset (3-5 doctors, or 1 specialty, or 1 location) run the OAP optimisation recommendation alongside the current manual design. The decision stays with the clinic manager; the system only recommends. Success criterion fixed in advance: mean patient wait time -15% minimum, doctor idle time -25% minimum, patient-satisfaction score flat or up.
Stage 4 — Rollout. 9-15 months to full clinic + all specialties + multi-location + national central booking portal integration. SMS reminders and panel-doctor option. Quarterly committee: actual vs planned mean wait, no-show curve refresh, doctor productivity, patient-satisfaction score, capacity decisions (new doctor / specialty / time slot).
Risks — what can go wrong
- Patient-satisfaction complaints. If the overbooking rate is set too aggressively, wait time goes above 30 minutes; complaints rise, second-visit rates drop. During the pilot, if wait time exceeds the contractual target, overbooking must be lowered; “productivity” cannot be optimised alone.
- Insurance-contract duration constraint. Private-health-insurance contracts include quality targets such as mean wait < 20 minutes; missing this metric brings payment deductions. In the OAP model this metric must appear as a constraint, not a soft objective.
- Shifting no-show model. Seasonal flu, pandemic, weather shift the no-show rate abruptly; a template optimised for a static no-show rate collapses in a crisis. Stochastic / scenario-based modelling and monthly recalibration are essential.
- Lab-return window not modelled. If the slot template lacks a “lab-return window”, patients walk in spontaneously in the afternoon; the doctor always runs late after lunch. The slot template must include it.
- Single-supplier booking-system lock-in. Without a contract clause exporting appointment history, no-show curve, slot rules and patient-satisfaction data in a standard format, leaving the system costs the clinic its operational memory. Data export must be a standard contract clause.
Solution method — a technical view
| Approach | Typical scale | Solve time | Guaranteed optimum? |
|---|---|---|---|
| Fixed slot duration (heuristic) | Single doctor, <40 patients/day | instant | No, 50-60% optimum |
| Bailey-Welch rule (two patients in first slot) | Single doctor, 40-80 patients/day | instant | No, heuristic but motivated by Bailey 1952 |
| Bailey balanced allocation (deterministic MIP) | Single doctor, fixed no-show rate | minutes | Yes (within bound) |
| Stochastic OAP (stochastic service time + no-show) | Multi-doctor, multi-patient-type | minutes-hours | Yes (per scenario) |
| Overbooking model (no-show probability based) | High-no-show clinic | minutes | Yes (closed-form or MIP) |
| Simulation-optimisation | Complex demand + lab return + dynamic | hours | No, practical quality |
| Rolling-horizon (intra-day dynamic) | Online appointment add/cancel | minutes per trigger | No, online policy quality |
| Dome-shaped slot allocation | Polyclinic with peak-hour load | minutes | No, heuristic but empirically strong |
Objective function choice:
- Objective 1 — Minimise patient wait time: When the contractual quality target is the priority.
- Objective 2 — Minimise weighted doctor idle time + overtime spillover: Operational-efficiency oriented.
- Objective 3 — Minimise weighted wait + idle: Classical Bailey objective, balanced.
- Objective 4 — Maximise daily throughput: For capacity analysis / new-doctor decisions.
- Objective 5 — Maximise composite patient-satisfaction + productivity: Multi-objective, closest to reality.
Multi-objective: weighted sum or hierarchical (first wait-time constraint, then productivity).
Academic sources
Listed in the page frontmatter under sources.
Sources
- Bailey, N. T. J. (1952). A study of queues and appointment systems in hospital out-patient departments, with special reference to waiting-times. Journal of the Royal Statistical Society. Series B, 14(2), 185-199. Foundational paper for outpatient appointment systems — the two-patients-in-first-slot rule (Bailey-Welch) originates here.
- Cayirli, T. and Veral, E. (2003). Outpatient scheduling in health care: A review of literature. Production and Operations Management, 12(4), 519-549. The canonical survey of OAP.
- Gupta, D. and Denton, B. (2008). Appointment scheduling in health care: Challenges and opportunities. IIE Transactions, 40(9), 800-819. A modern application-side challenge-opportunity map.
- LaGanga, L. R. and Lawrence, S. R. (2007). Clinic overbooking to improve patient access and increase provider productivity. Decision Sciences, 38(2), 251-276. Canonical overbooking formulation — 8-15% productivity gain.
- Erdogan, S. A. and Denton, B. (2013). Dynamic appointment scheduling of a stochastic server with uncertain demand. INFORMS Journal on Computing, 25(1), 116-132. Dynamic policy under stochastic demand.
- YÖK Thesis Center — keywords: ‘poliklinik randevu’, ‘appointment scheduling’ or ‘merkezi randevu optimizasyon’ — 20+ theses. tez.yok.gov.tr
Glossary
- Outpatient Appointment Scheduling
- Operations research problem of designing the slot duration, slot loading and intra-day assignment policy of an outpatient clinic — to balance patient wait time, doctor idle time and same-day access.
- Overbooking Policy
- Practice of systematically booking more patients (or reservations) than capacity in anticipation of no-shows; in OR, the formulation that mathematically balances no-show probability against waiting and idle time.
- MIP
- An optimization model where some decision variables are forced to be whole numbers (e.g. number of trucks, number of shifts).
- Queueing Theory
- Mathematical discipline analyzing waiting lines where arrivals and service times are random.
Related problems
Monthly Nurse Roster — Holding Burnout, Preference and Skill Together
This page is for the head nurse of a private hospital with 50-300 nurses staffing 24/7 wards (ICU, surgery, ER, internal medicine, maternity) and building the monthly shift roster. Every shift needs enough nurses and at least one senior qualified one, consecutive night shifts are capped, there must be at least 11 hours of rest between shifts, personal day and leave requests must be honoured, and night-shift load must be distributed fairly — all at the same time. Manual rostering past 50 nurses costs the head nurse 30-60 hours a month, and the 'who worked less' argument still opens every month. Nurses on unfair rosters quit 2-3 times more often; replacement cost is 50-150K TRY per nurse.
Which Patient to Which Ward and Bed, and When to Trigger Discharge?
For the management running a 50-500 bed private hospital or clinic with 6-15 services (cardiology, internal medicine, pediatrics, intensive care, oncology and similar). Every day two interlinked decisions must be made: which ward and bed at what hour an arriving patient is admitted to, and how many hours in advance the discharge decision is triggered for already admitted patients. When a ward fills up, the patient waits hours in the emergency department or is placed in the wrong service, which lengthens stay and raises clinical risk. If bed occupancy is tracked manually, emergency-elective collisions and weekend congestion are unavoidable.