A standard file format for organoid drug screens
Patient-derived organoid drug screening has matured into a clinically deployed practice, but the data layer underneath it is still spreadsheets and one-off scripts. DS5, from a University of Utah group, is an open-source Python framework built around a single HDF5-based file format that carries a screen from raw plate readout to a clinician-facing report, with immutable raw data, logged quality-control decisions, drug-name standardization, and cohort-relative drug rankings. Recomputing published benchmarks shows the stakes: concordance with published values is excellent when a fitted IC50 sits inside the tested dose range, and far weaker when it does not.
Source: DS5: An Open-Source Framework for Standardized High-Throughput Drug Screening Data Storage, Analysis, and Drug Prioritization, bioRxiv, 2026. Primary source. Read: full preprint text, including methods, figure legends, results, discussion, and stated limitations.
What the work claims
The paper claims that the binding constraint on functional precision oncology is no longer the model systems but the analytical infrastructure around them. High-throughput drug screens are run on cell lines, patient-derived organoids (PDOs), xenograft-derived organoids (PDxOs), and ex vivo patient samples, and multiple clinical trials now use such screens to steer individual treatment. Yet most programs store data in ad hoc spreadsheets and analyze them with scripts that vary across institutions and even across projects within one laboratory. DS5's answer is a single lightweight package that unifies standardized storage, quality control, dose-response analysis, cohort-level drug prioritization, and automated HTML reporting, released under the MIT license.1
This is a methods and infrastructure paper, validated by reproduction rather than by new biology. That is the right way to validate it, and also the source of its limits: what DS5 proves is that its pipeline can recover published numbers, not that published numbers are stable truths.
How it works
DS5 organizes each screen as paired tables inside an HDF5 hierarchy (patients, then patient, then test): a raw readout table and a matching plate map encoding which drug sits in which well at which concentration. Raw readouts are stored read-only; every quality-control decision and computed metric is written as a separate attribute, giving a provenance trail from a final IC50 back to the original well-level luminescence. On import, drug names are resolved against RxNorm, with a PubChem fallback, so a compound is carried by an interoperable identifier rather than whatever string a vendor used. The package installs from PyPI with pip, requires Python 3.11 or later, and ships a pytest suite the authors report at 86 percent line coverage.1
Analysis runs as a configurable three-step QC pipeline before any curve fitting: percentile-based removal of plate-wide outlier wells (in one demonstration screen this cut 384 wells to 344), MAD-based filtering of DMSO vehicle wells, and a per-drug median-ratio filter that flags replicates deviating from their dose-group peers (2 of 15 Panobinostat points in one screen). DS5 then fits a four-parameter logistic model to normalized inhibition and computes EC50, IC50, Emax, AUC, and three Drug Sensitivity Score variants. Its distinguishing feature is cohort-level normalization: any metric can be z-scored against a user-defined reference cohort of screens, converting an absolute sensitivity value into a rank relative to other patients, which is the quantity a molecular tumor board actually wants.
Validation is quantitative and at scale. Against GDSC2, DS5-recomputed natural-log IC50 values matched published values across 102,637 drug-cell line pairs with Pearson r = 0.918 overall; splitting by whether the fitted IC50 fell inside the tested concentration range sharpens the picture dramatically, with r = 0.973 for the 65,749 in-range pairs but r = 0.654 for the 36,888 pairs requiring extrapolation. Against CTRPv2, recomputed Emax values matched across 326,305 measurements (overall r = 0.955; r = 0.961 for the 174,661 measurements reaching maximum effect at the top tested concentration, r = 0.938 for the rest). As an extensibility demonstration, the authors re-implemented growth-rate metrics as a custom extension and reproduced a published PDxO breast cancer study: 45 compounds across 16 models, 680 drug-model growth-rate area-over-curve values recovered, and cohort z-scored in vitro rankings predicting in vivo PDX response across 30 drug-model pairs with ROC AUC 0.907, where responders were defined as greater than 40 percent tumor growth reduction. Finally, in an ongoing pediatric brain tumor initiative, four patient-derived cell lines screened against 25 compounds were ranked by DSS1 z-score against a 15-line reference cohort; the authors' own example shows why this matters, with methotrexate ranking among the most sensitive drugs for two lines and outside the top four for two others, a selectivity pattern invisible to absolute scores.
Where a skeptic should push
The most load-bearing assumption is that recovering published values equals correctness. GDSC2 and CTRP concordance measures agreement between DS5's pipeline and the original consortia's pipelines, all of which made independent fitting and curation choices. The in-range versus extrapolated split is the tell: for more than a third of GDSC2 pairs (36,888 of 102,637), the recomputed and published IC50 values correlate at only 0.654. That means published sensitivity values are partly artifacts of the analysis pipeline, and swapping pipelines can move a drug's apparent potency materially. DS5 does not eliminate this variance; it makes it inspectable. A second soft spot is the headline translational number: the AUC of 0.907 is computed on 30 drug-PDX pairs drawn from a single published breast cancer study, spanning only five drugs, with the responder threshold chosen by that study. It demonstrates that cohort-normalized rankings can recover in vivo sensitivities in one dataset; it is not evidence that organoid screens in general predict in vivo response, and generalizing it would be exactly the one-cohort-as-property mistake this field keeps making.
Third, the clinical-application section is cell-line screening, not organoid screening; the PDO and PDxO relevance rests on the PDxO reproduction and on format generality. The authors are candid about limitations: input must arrive as plate-map-based Excel, the package demands Python fluency, and combination screens with synergy scoring are not yet supported. And the cohort z-score, the framework's central translational object, inherits the composition of the reference cohort: change who is in the cohort and a drug's rank changes, which is a sociological variable dressed as a biological measurement.
One data standard decides whose screen counts
For organoid models of human organs and the drug-discovery work built on them, the non-obvious implication is that the unit of reproducibility is shifting from the model to the data schema. Dozens of PDO-guided therapy trials are accruing patients, each generating screens that are individually plausible but mutually incomparable, because dose-response metrics, QC rules, and drug nomenclature differ by lab. A shared, immutable, queryable format is the precondition for any honest meta-analysis across those cohorts, and it is also the precondition for regulation: a format in which every QC decision is logged and raw data cannot be edited is the closest thing this field has to an audit trail, which matters the moment a screen result influences a treatment decision. DS5's DMSO-investigation anecdote makes the point concretely: a suspicious baseline-viability pattern triggered a cohort-wide query across screens that no spreadsheet workflow would have supported.
The genuine threat is subtler than vendor lock-in. Cohort-normalized prioritization sounds like a neutral ranking, but the ranking is a function of reference-cohort composition and of configurable QC thresholds, and different programs will silently choose different ones. Two tumor boards can hold the same organoid screen data and prioritize different drugs, each with a clean-looking z-score table to defend the choice. Standardizing the container without standardizing the cohort definition and QC defaults could entrench exactly the cross-institution inconsistency it was built to remove, now with a veneer of interoperability. The opportunity and the obligation are the same: treat the reference cohort, the QC configuration, and the metric definitions as publishable, versioned objects alongside the screen itself.
The bottom line
Established: a single open-source format can carry high-throughput drug screens from raw well data to tumor-board-ready reports; DS5 reproduces published GDSC2 and CTRP values at scale, with the caveat that extrapolated IC50 values are pipeline-sensitive; and cohort-normalized rankings recovered in vivo-validated sensitivities in one published PDxO dataset. Not established: that any of this improves patient outcomes, that organoid screens analyzed in DS5 predict clinical response beyond the breast cancer PDxO benchmark, or that a shared format alone harmonizes the analytical choices that actually move drug rankings. The confirmations worth waiting for are a cross-institution study where two sites screen the same organoid panel and compare rankings under a common cohort definition, and a prospective trial in which DS5-style prioritized screens are tested against physician choice.
Frequently asked questions
What is DS5 in one sentence?
An open-source Python framework, distributed via PyPI under the MIT license, built around an HDF5-based file format that unifies storage, quality control, dose-response fitting, cohort-level drug prioritization, and automated reporting for high-throughput drug screening data.
How accurate is it against public benchmarks?
Against 102,637 GDSC2 drug-cell line pairs, recomputed natural-log IC50 values correlated with published values at Pearson r = 0.918 overall, but r = 0.973 for pairs inside the tested dose range versus r = 0.654 for pairs requiring extrapolation. Against 326,305 CTRPv2 measurements, recomputed Emax values correlated at r = 0.955.
Does it work for organoids specifically?
The format is model-agnostic and the authors demonstrate it on a published PDxO (xenograft organoid) breast cancer dataset, reproducing 680 growth-rate metric values and ranking drugs relative to the model cohort. The showcased clinical application, however, used patient-derived pediatric brain cancer cell lines, so the organoid-specific validation rests on that reproduction rather than on a new PDO cohort.
What did cohort normalization add in the demo studies?
In the PDxO breast cancer analysis, cohort z-scored in vitro rankings predicted in vivo PDX response across 30 drug-model pairs with ROC AUC 0.907. In the pediatric brain tumor initiative, cohort normalization revealed that methotrexate was selectively sensitive in two of four cell lines, a pattern absolute sensitivity scores did not show.
What are the main limitations?
Input must be plate-map-based Excel; users need Python proficiency; combination-drug screens are unsupported; and the framework validates analytical reproducibility against published pipelines, which is not the same as validating biological or clinical predictive accuracy.
Why does raw-data immutability matter for clinical use?
Every QC decision and computed metric is stored as an attribute alongside read-only raw readouts, so any reported sensitivity value can be traced back to the original well-level measurements. That provenance trail is what makes screen results auditable when they feed a treatment decision.
References
- Yang H, Lubkowitz J, Marth G, Cheshier S, Yang C-H, Welm A, Moos PJ, Huang X, Qiao Y. DS5: An Open-Source Framework for Standardized High-Throughput Drug Screening Data Storage, Analysis, and Drug Prioritization. bioRxiv. 2026. https://www.biorxiv.org/content/10.64898/2026.09.22.753533. Accessed 2026-10-28.