Reporting is backward-facing by construction
An enrollment dashboard tells you what has already been banked. It cannot tell you whether the current trajectory closes the gap, which is the only question a planning decision actually turns on.
Where enrollment is heading, and how much to trust it
Every enrollment report answers a question about the past. The question that actually drives planning is the one nobody has measured yet: at the current rate, where does this trial land — and how much weight should anyone put on that number?
This experience owns the forward view. It projects enrollment over a six-month horizon, holds the projection against a deliberately naive baseline, evaluates both across successive historical forecast origins rather than one flattering split, and then names the sites contributing most to the risk of missing plan. The method is kept on screen, because a forecast whose evaluation is hidden is just an assertion.
The Premise
Measuring recruitment and projecting recruitment are different jobs with different failure modes. The second one needs a horizon, a baseline, an evaluation and a stated confidence — none of which a performance report is built to carry.
An enrollment dashboard tells you what has already been banked. It cannot tell you whether the current trajectory closes the gap, which is the only question a planning decision actually turns on.
Any model produces a number. Whether that number is worth anything only becomes visible when it is scored against something deliberately simple — here, a three-month rolling mean.
A single train/test split can be chosen, consciously or not, to look good. Re-forecasting from successive historical origins removes that freedom and exposes how the method behaves over time.
A site that recruited well last quarter can still be the largest contributor to projected shortfall. Forecast risk has to be scored against where the trial is heading, not where it has been.
Scope Within the Family
This is the family’s single owner of forward enrollment forecasting, forecast risk and forecast methodology. Its neighbours own what comes before and after it, and this page deliberately stops at those edges.
This experience owns
This experience does not own
Upstream — current execution context
Observed site execution is the evidence this forward view is built on. Site ranking and selection, site profiles, dropout and protocol-deviation risk, data-quality monitoring and country or region intelligence live there. This page uses site signals only as forecast-risk inputs.
Downstream — who consumes this outlook
The enrollment outlook produced here becomes a patient-demand signal that the supply experience consumes and translates into kit demand, inventory position and a resupply response. That translation, and everything after it, is not this page’s domain.
Reading this page correctly
Three things stay separate throughout. Observed values are the measured synthetic history. Forecast values are modelled projections beyond the last observed month. Evaluation figures describe how the methods behaved on held-out historical months of this synthetic dataset — they are not validated accuracy and say nothing about performance on a real trial. Site and country identifiers are generated synthetic labels, the dataset holds site-month aggregates rather than patient records, and no patient-level prediction is made or implied.
Decision Framework
Eight stages, each tagged with what kind of thing it is. The evaluation stage sits deliberately between the forecast and the risk view — because which forecast is operational is decided by evidence, not by preference.
Functional Coverage
The prototype contains eight screens running against a single reproducible synthetic study. Five are presented as motion showcases below; all eight are listed here so the actual breadth is visible rather than inflated.
Showcase 01 · Study position
Observed / forecast / evaluation context
Observed: enrolled to date and the historical trajectory. Forecast: the projected total at the end of the horizon and the estimated completion month. The two are labelled separately on the screen itself.
Business question
Where does the study stand today, and where is enrollment exposure beginning to emerge?
Recorded from the running prototype on synthetic data. Site, country and trial identifiers are generated labels; no real study, sponsor or investigator site is represented.
Key signals on the screen
Decision supported
Whether the trial is currently tracking to plan, and how much of the remaining gap the forecast expects to close without intervention.
Captured synthetic state
643 patients enrolled to date across 50 of 50 sites (64.3% of a 1,000-patient target), a projected total of 1,123 at horizon from a further 480 forecast enrollments over six months, an expected completion month of 2026-10-01, and 13 sites at risk — 4 high and 9 medium.
Interpretation & human-review boundary
Projected totals and the completion month are modelled outputs on synthetic data. They are planning signals for review, not commitments, predictions of a real trial, or evidence of enrollment performance.
Showcase 02 · The forward view
Observed / forecast / evaluation context
Observed history runs to the last actual month; everything after it is projection. Both the selected forecast and the non-selected comparison series are drawn — labelled as such — so the operational number is never confused with the alternative.
Business question
Where is enrollment heading over the forecast horizon, at trial level and per site?
Recorded from the running prototype on synthetic data. Future months are modelled projections, not measurements.
Key signals on the screen
Decision supported
How much enrollment to plan for month by month, and which individual sites the trial-level projection is actually resting on.
Captured synthetic state
Twelve observed months rising from single digits to roughly 80 patients per month, followed by six forecast months in the high-70s to mid-80s, with the actual-versus-predicted backtest series spanning December 2025 to May 2026.
Interpretation & human-review boundary
Forward values are modelled projections on synthetic data. No forecast certainty, production predictive performance or real-trial enrollment outcome is claimed.
Showcase 03 · The differentiator
Observed / forecast / evaluation context
Evaluation, kept distinct from both observation and forecast. These figures describe how the two candidate methods behaved on held-out historical months of the synthetic dataset — not how either would behave on a real trial.
Business question
Which method should drive the operational forecast, and on what evidence was that decided?
Recorded from the running prototype on synthetic data. All error figures are evaluation results on this synthetic demonstration dataset only.
Key signals on the screen
Decision supported
Whether to trust the ML forecast or the naive baseline as the operational projection — and, in this scenario, the honest answer was the baseline.
Captured synthetic state
Baseline selected by rolling-origin MAE across 6 origins and 300 evaluated rows. XGBoost recorded MAE 0.46, RMSE 0.63 and MAPE 30.7%; the 3-month baseline recorded MAE 0.46, RMSE 0.65 and MAPE 29.9%. The baseline matched on MAE and was lower on MAPE, so the tie-break rule selected it; XGBoost improved RMSE only marginally.
Interpretation & human-review boundary
These are synthetic-data evaluation results for this demonstration dataset. They are not validated accuracy, not evidence of generalisation, and not a claim that either method would perform this way on a real trial.
Showcase 04 · Drivers of forecast risk
Observed / forecast / evaluation context
Forward-looking risk, not current-state site operations. A quarter of the composite weight is forecasted target-miss probability, which is what makes this a forecast-risk view rather than a performance review.
Business question
Which sites are contributing most to the risk of missing the enrollment plan?
Recorded from the running prototype on synthetic data. Site identifiers are generated labels and do not correspond to any real investigator site.
Key signals on the screen
Decision supported
Which sites warrant forecast-risk attention, and which specific driver is producing that risk at each one.
Captured synthetic state
50 sites in scope with 37 low risk (0–40.9), 9 medium (41.0–51.9) and 4 high (52.0+), and a driver heatmap covering the top 15 risky sites across four normalised drivers.
Interpretation & human-review boundary
Site signals are used here strictly as inputs to forward forecast risk. Site ranking, selection, operational productivity, dropout management, protocol-deviation and data-quality workflows are not this experience's domain.
Showcase 05 · Intervention review
Observed / forecast / evaluation context
The end of the chain. Each recommendation carries the observed signal that triggered it and the qualitative impact it aims at — and stops at a person.
Business question
Which forecast-driven enrollment risks deserve operational review first?
Recorded from the running prototype on synthetic data. Recommendations are review candidates for a qualified person, not actions taken.
Key signals on the screen
Decision supported
Which sites to put in front of clinical operations first, and what specific question to open with at each one.
Captured synthetic state
25 recommendations across 6 high, 9 medium and 10 low priority, drawn from 5 active domain rules plus 1 coverage fallback, with 2 further rules disabled. The highest-scoring site carried a risk score of 66.8 with a screen-failure rate of 34.7% against a 23.6% median, a dropout rate of 4.94% against a 2.89% median, and a 90-day startup delay against a 60-day target.
Interpretation & human-review boundary
Recommendations are review candidates only. Nothing here contacts a site, changes a protocol, directs an investigator, alters recruitment, or executes any operational action.
Method, Stated Plainly
A forecast is only as credible as the procedure that produced it. Every entry below reflects what the prototype actually implements.
What the evaluation actually concluded
In the shipped synthetic scenario the naive baseline was selected. Across 6 rolling origins and 300 evaluated rows, XGBoost recorded MAE 0.46, RMSE 0.63 and MAPE 30.7% while the 3-month baseline recorded MAE 0.46, RMSE 0.65 and MAPE 29.9% — the baseline matched on the selection metric and was lower on MAPE, so the tie-break rule chose it, and XGBoost’s only edge was a marginal RMSE improvement. Both series are retained and labelled. This is reported rather than smoothed over: on this synthetic dataset the machine-learning model did not earn the operational forecast, and an evaluation that could only ever confirm the model would not have been an evaluation. Nothing here should be read as validated accuracy, generalisable performance, or evidence about a real trial.
Supporting Intelligence
These are implemented and run against the same seeded scenario, but they are not presented as showcases here — in one case because the capability belongs to a sibling experience rather than to this one.
The prototype includes a site-performance screen with top and bottom performers, country attainment and a region summary. On this page it is treated purely as background to forecast risk. Current-state site execution, ranking and selection, dropout and protocol-deviation risk, data-quality monitoring and country or region operational intelligence belong to Clinical Trial Site Performance Intelligence, not here.
Direct inspection of the dataset feeding the model — site metadata, monthly enrollment and trial metadata across the 50-site synthetic study — so any figure on the other screens can be traced back to the rows behind it.
An internal walkthrough script for presenting the prototype. It is presentation material, not an application capability, and notably instructs the presenter to show the model evaluation honestly rather than to claim the ML model won.
Scope, problem framing, feature inventory and the standing disclaimer that all data is synthetic and reproducible from a seed, and that outputs are demonstration-only and not validated for production decisions.
Capabilities
What it does
Projects per-site monthly enrollment across a six-month horizon and aggregates it to a trial-level trajectory and completion estimate.
Decision supported
How much enrollment to plan for, and when the target is projected to be reached.
Evidence used
Recursive multi-step forecasting in which each projected month becomes the lag input for the next.
What it does
Builds a deliberately naive per-site three-month rolling mean and holds it flat across the horizon.
Decision supported
Whether any modelling effort is justified at all.
Evidence used
Per-site historical means computed only from months strictly prior to the month being predicted.
What it does
Re-fits and re-scores both methods from successive historical origins, one step ahead, on identical held-out rows.
Decision supported
Which method earns the right to drive the operational forecast.
Evidence used
A fresh preprocessing and model pipeline per fold, so imputation statistics are learned only from that fold's training window.
What it does
Selects the operational forecast by mean absolute error, with the simpler baseline winning ties.
Decision supported
Which forward series is operational and which is retained for comparison.
Evidence used
A selection rule fixed in advance rather than chosen after seeing the results.
What it does
Blends six normalised signals into a 0–100 composite and bands each site against fixed edges.
Decision supported
Which sites carry the most forward risk to the enrollment plan.
Evidence used
Weighted signals across recruitment speed, screen failure, dropout, activation delay, historical performance and forecasted target-miss probability.
What it does
Breaks the composite score back out into its normalised contributing drivers per site.
Decision supported
Which specific lever to consider at a given site rather than a generic escalation.
Evidence used
A per-site normalised driver view covering screen failure, dropout, startup delay and miss probability.
What it does
Applies driver-keyed rules to produce named recommendations, each carrying the observation that triggered it.
Decision supported
Which sites to review first and what to open the conversation with.
Evidence used
Active domain rules keyed on observed per-site signals, plus a separately labelled coverage fallback for at-risk sites with no driver-specific trigger.
What it does
Regenerates the full study, its history and its models deterministically from a seed.
Decision supported
Whether a result can be reproduced and inspected rather than taken on trust.
Evidence used
A seeded generator producing 50 sites across 4 regions and 14 countries with 12 months of history.
System Design
A seeded pipeline from synthetic study generation through feature preparation, a baseline and a model, an honest evaluation, forecast-risk scoring and a recommendation layer — ending at a person.
Built in Python with Streamlit, pandas, NumPy, scikit-learn, XGBoost and Plotly, running locally against a deterministically generated synthetic study. There is no connection to any clinical trial management, electronic data capture, or randomisation and trial supply management system.
Lab Standards
The prototype carries its synthetic-data notice on every screen, prints its risk-band definitions and rule inventory in the interface, and states its own evaluation caveats rather than leaving them to a footnote. Forecasting here is operational enrollment planning intelligence and nothing beyond it.
Honest Status
The prototype runs locally against a seeded synthetic study. It is not deployed, not published as an application, and not available to run.
These are deliberate boundaries of a synthetic-data prototype, not pending features. The absence of a model-superiority claim in particular reflects what the evaluation actually found.
What This Demonstrates
Building this experience exercised the following, end to end.
Turning a backward-looking enrollment report into a forward planning question, and keeping observed, forecast and evaluation as three separate things throughout.
Establishing a naive baseline, scoring it on identical rows, backtesting across successive origins, and fixing the selection rule before seeing the outcome.
The naive baseline won. Publishing that, rather than quietly promoting the ML model, is the point — an evaluation that can only confirm the model is not an evaluation.
Decomposing a composite risk score into actionable drivers, disabling rules whose triggers were never observed, and holding the line between forecast risk and the siblings' domains.
This experience sits between site execution and clinical supply in the Clinical Trial Supply Chain Intelligence family. The observed recruitment behind this outlook belongs to Site Performance Intelligence; the supply response it feeds belongs to Supply Planning & Resupply Intelligence.