Interactive tool
Drug pipeline explorer
Clinical trials by disease, phase, modality and sponsor, pulled live from ClinicalTrials.gov, with US approvals from openFDA and what historical success rates say about the odds.
Loading the drug pipeline explorer…
What it shows
Pick a disease and the explorer shows the commercial shape of its drug pipeline: how many trials sit at each phase and whether they are recruiting, finished or stopped; which modalities (small molecules, antibodies, cell and gene therapies and so on) have been tested over time; who sponsors the work; how long completed trials took; and why stopped trials stopped.
Beside the live trials it lists the US-approved products whose labels mention the condition, and it sets the pipeline against history: the likelihood of FDA approval from each phase, which the report computes from the phase transitions it recorded between 2011 and 2020, by disease area and by modality.
How it works
Trials come live from the ClinicalTrials.gov API (version 2). The search sends your condition as query.cond and limits results to interventional studies with a drug, biologic or genetic intervention; phase, status, sponsor class and start-year filters are added to the same request. Only 15 fields are requested, 1,000 trials per page, newest start date first, and at most 10 pages are loaded, so the tool always says how many of the matching trials it analysed. Everything else, from the charts to the medians, is computed in your browser.
Each intervention is given a modality from its name. The tool reads keywords such as vaccine and CAR-T, spots antibody-drug conjugates from their two-part names, and otherwise uses International Nonproprietary Name stems: -mab for monoclonal antibodies, -tinib for kinase inhibitors, -siran for siRNA, -rsen for antisense drugs, -cel for cell therapies and 146 more. Names that match nothing, such as company codes, are shown as unclassified rather than guessed. Radiolabelled tracers and contrast agents are marked as diagnostic, and trials that test only those are set apart from the charts.
Approvals come from openFDA: a label search on the Indications and Usage section, counted by application number (brand-name, biologic and generic applications separately, because each count returns at most 1,000), then Drugs@FDA for the sponsor, the original approval date and the marketing status, and the NDC directory for products Drugs@FDA does not cover. Where a label's indications contain a negative phrase, the tool reads them sentence by sentence and flags labels that mention the condition only to rule it out. openFDA cannot search Greek letters, so for a condition such as β-thalassaemia (β-thalassemia on US labels) the tool also searches the other words and keeps the labels whose indications name the condition with the letter. The historical odds are figures from the BIO, Informa Pharma Intelligence and QLS Advisors report on 2011 to 2020, which counted 12,728 phase transitions in company-sponsored programmes.
How it was built
Every API parameter, field name and enum value was checked against the live services before use. A Python script parses the success-rate tables from the report's PDF text rather than retyping them, then checks each value against a second place in the report (its charts) and checks that every likelihood of approval equals the product of its phase rates. A second script checks all 151 naming stems against the WHO stem book.
A Node script saves dated snapshots of the seven example searches, using the same code as the page, so the tool can fall back to them if ClinicalTrials.gov is down or slow. It also does two jobs too heavy for a browser: it reads the wording of every matching label, and it traces labels that openFDA links to no application through the NDC codes printed on them; the page reuses both results for the examples. The classifier, the stop-reason grouping, the label checks, the query builders and the aggregations have unit tests, and the charts are hand-written SVG with keyboard-readable values and a data table behind each one.
Limits
- Not medical or investment advice. The success rates are industry-wide historical averages for company-sponsored programmes seeking FDA approval between 2011 and 2020. They are not a forecast for any trial, drug or company, and the report counts drug programmes rather than trials.
- The condition mapping behind the odds is this tool's own choice; the report does not publish which indications sit in each disease area. You can pick a different group.
- Trial records are entered by sponsors. Statuses can lag, dates can be estimates, and the condition search uses ClinicalTrials.gov's own matching, which can include trials where the condition is not the main focus.
- Searches with more than 10,000 matching trials analyse the 10,000 with the latest start dates, and the tool says so.
- Modalities come from drug names. Many interventions have no stem (company codes, older drugs), so they stay unclassified, and a stem describes how a name was built, not how every product is made. ClinicalTrials.gov registers radiotracers and imaging agents as drugs; the tool sets them apart as diagnostics but can miss tracers named only by a company code.
- Durations use completed trials with actual start and primary completion dates only, so trials that stopped early are not in them. They measure single trials, not the years a drug spends in development.
- Approvals are US FDA only and are matched on label wording, so they can include passing mentions and miss differently worded labels. openFDA links some current labels to no application: the example searches trace those through the NDC codes on the label, other searches only count them. A label is flagged when every mention of the condition in it rules the condition out; every label is checked for the examples, and up to 12 applications for other searches. A discontinued product's label can stay in openFDA. The date shown is the original approval of the product's application, which can predate the approval for this condition.
- The saved snapshots cover the seven example searches with default filters. They were saved on 28 September 2026 (ClinicalTrials.gov data of 25 September 2026), keep only the 100 most recently started trials for the list, and are not shown once they are more than 60 days old.
Next step
Need a tool like this built?
Want to talk about a role, a project or any of the work here? Get in touch and I will reply within a working day.
Available from September 2026 for full-time roles and selected freelance projects.