How long does it take a patient to start therapy? What hub and specialty pharmacy data show
Count the days from referral to first shipment, using the status updates that the hub and the specialty pharmacy send for each patient. In the example data the median patient waited 22 days, and prior authorization was the longest part of the wait.
| Step | What happens | Who does it | Median days in this step |
|---|---|---|---|
| 1. Referral received | The prescriber's office sends an enrollment form and prescription | Prescriber's office, to the hub or specialty pharmacy | 3 (until benefits verification starts) |
| 2. Benefits verification (BV) | Confirm the patient's coverage for this drug, whether prior authorization is needed, and what the patient will pay | Hub or specialty pharmacy | 4 |
| 3. Prior authorization (PA) pending | The insurer reviews the request to cover the drug | Prescriber's office submits, often with hub help. The payer decides | 8 (to the payer's decision) |
| If denied: appeal | The prescriber's office asks the payer to reconsider | Prescriber's office, often with hub help. The payer decides | 19 |
| 4. Approved, preparing to ship | Coverage confirmed, copay support applied, order prepared | Specialty pharmacy | 2 |
| 5. Delivery scheduled | The pharmacy and patient agree on a delivery date | Specialty pharmacy and patient | 1 |
| 6. First shipment | The first fill leaves the pharmacy | Specialty pharmacy | 3 (from scheduling) |
| Referral to first shipment | 22 (median patient) |
The hub is the manufacturer's patient support program. It takes the referral, checks insurance and helps with paperwork. The specialty pharmacy dispenses and ships the drug. Both send a status update each time a patient's case moves, usually with the patient's identity replaced by an ID.
Prior authorization is the longest wait. The payer's decision on a PA took a median of 8 days, but about 1 in 10 waited longer than 26 days, and the longest 60. Of the patients who shipped, 87% needed a PA (a self-pay patient never does). For the median one, the time from PA submission to approval, appeals included, was 41% of their whole time to therapy. Note that medians don't add: the medians of the six numbered steps sum to 21 days, while the median patient's total is 22.
Every number here comes from a synthetic dataset modeled on a real small-biotech workflow. It covers 3,335 made-up patients on a fictional injectable for atopic dermatitis, served by a hub and four specialty pharmacies, with data from October 1, 2023 through October 12, 2026. The brand was established before the data begins: 1,612 of the patients were already in the program on its first day, most of them on therapy, so their referrals aren't in the data. The 1,723 referred since are the ones whose time to therapy can be measured. Each case is simulated step by step from its referral, so the cases still open on October 12 are recent ones. There are no real patients, prescribers or accounts in it.
What each feed contains
| Status feed | Dispense feed | |
|---|---|---|
| One row per | Status change for a patient | Fill shipped to a patient |
| Key fields | Patient ID, status, status date, reason (on a cancellation or stop), prescriber, payer type | Patient ID, ship date, product, quantity, days supply, refill number |
| Answers | Where is each patient now, how long did each step take, and why did a case close? | Did therapy start, and are refills on time? |
In the example, every fill is two prefilled syringes, a 28-day supply.
Two practical points:
- Patients carry more than one ID. The specialty pharmacy assigns its own patient ID and the hub assigns another. In the example, 2,307 of 3,335 patients (69%) carry both, which is what lets you join hub and pharmacy records. Plan for the rest to appear in only one feed: 630 were referred straight to a pharmacy and have no hub ID, and 398 have only the hub's, mostly cases that closed before any pharmacy saw them.
- Every sender has its own status codes. In the example, the hub reports a PA under review as "PA SUBMITTED", and the four pharmacies send "PA PENDING", "PEND-PA", "Prior Auth Submitted" and "30 PA PEND" for the same step. Before you measure anything, map each sender's codes to one standard list: the steps above, the detours (an appeal, a prescriber hold while the office sends the payer more information, a patient hold while the pharmacy waits on the patient) and the ways a case ends (canceled or transferred before therapy, discontinued or completed after). Keep the reason that comes with each cancellation.
The headline number: time to therapy
Time to therapy is the number of days from referral to first shipment. Some teams start the clock when the prescription is written, and some stop it at the first injection, which neither feed records. Choose one definition and use it in every report, and count only patients whose referral is in your data: a patient already on therapy when the data begins has no referral date to start the clock. Across the 1,247 synthetic patients referred since the data begins who have reached a first shipment, the median is 22 days. A quarter shipped within 18 days and three quarters within 33. The fastest took 7 days, the slowest 116. Grouping patients by the path their case took to coverage approval shows where the long tail sits.
| Path to coverage approval | Patients | Median days | 90th percentile |
|---|---|---|---|
| No PA needed | 164 | 14 | 19 |
| PA approved on first review | 908 | 22 | 41 |
| PA approved after a prescriber hold | 23 | 49 | 85 |
| PA denied, then approved on appeal | 152 | 45 | 70 |
| All patients who shipped | 1,247 | 22 | 51 |
Report percentiles, not just the average. The average here is 27.8 days, pulled up by the slow cases, while half of patients shipped within 22. Leadership asks about the typical patient, but the field acts on the slow ones. A 90th percentile that drifts upward shows a growing backlog well before the median moves.
Patients whose PA went to appeal, or waited on a prescriber hold, took a median of 45 to 49 days, about twice the 22 days of a first-review approval. Together they are 175 of the 1,247 who shipped (14%). Almost every slow case involves the PA. Of the 124 patients who took longer than 51 days, 66 went through an appeal or a prescriber hold, 56 more waited longer than 26 days for the payer's decision, and the other 2 were on a patient hold.
The funnel: one cohort of referrals
Time to therapy only counts patients who started. To see who did not, follow a cohort, and give it time to mature. Here are the 164 synthetic patients referred from May to July 2026, as of the October 12 cutoff. Each had 73 to 164 days, and 98% of the patients who have shipped did so within 73 days of referral.
| Step reached | Patients | Share of referrals |
|---|---|---|
| Referral received | 164 | 100% |
| BV started | 157 | 96% |
| PA submitted | 127 | 77% |
| Coverage approved | 118 | 72% |
| First shipment | 115 | 70% |
Twelve of the 118 approvals came straight out of BV, with no PA needed, and 15 came on appeal: of the 24 patients in the cohort whose PA was appealed, 15 (63%) were approved. The cohort's 115 shipped patients had a median time to therapy of 24 days, a little above the all-patient 22.
Where are the other 49?
| Status at cutoff | Patients | What it usually means |
|---|---|---|
| Canceled: patient declined | 15 | The patient chose not to start |
| Canceled: PA denied | 11 | The payer said no and the case closed without an appeal |
| Canceled: appeal denied | 7 | Denied, appealed and denied again |
| Transferred | 6 | Sent to another pharmacy, often because the payer requires it. Not necessarily lost |
| Canceled: no coverage | 3 | Benefits verification found no coverage for the drug |
| Canceled: unable to reach patient | 2 | The hub or pharmacy could not reach the patient to move the case on |
| Canceled: prescriber changed therapy | 2 | The prescriber chose a different treatment |
| Canceled: duplicate referral | 2 | The patient was referred twice, and this copy of the case closed |
| Still open | 1 | Coverage approved, not yet shipped |
In a cohort this mature, nearly every case has closed, so the reason it closed is what matters, and each reason needs a different response. Denials, at the PA or on appeal, are 18 of the 49. They are an access problem: payer policy, documentation, help with appeals. A denial that closed without an appeal is worth a second look. No coverage is an access problem too, found before any PA. A patient who declined or could not be reached is a patient support problem, and declines are the largest single reason here: 15, eight of them during benefits verification. A transferred patient may still start therapy at another pharmacy, and a duplicate referral is not a lost patient at all, so count each patient once.
How to use this data well
- Measure from referral, not from approval. Starting the clock at coverage approval hides the slowest part of the process. In the example, it reads a median of 7 days from approval to first shipment, against 22 from referral.
- Age open cases by step. For every patient not yet shipped, track days in the current step and flag the ones past that step's usual time, such as its 90th percentile. On October 12 the example had 31 open cases, 30 of them referred in the last 60 days. Of those, 17 were waiting on a PA decision, a median of 7 days so far, and 2 had waited longer than 26 days, that step's 90th percentile.
- Keep transfers separate from losses. A transferred patient may start therapy at another pharmacy. Counting them as lost understates your conversion rate.
- Follow cohorts, not snapshots. "70% of May to July referrals have shipped" is a fair number. The same ratio across everyone ever referred mixes three-year-old cases with last week's.
James Waterman builds commercial analytics for small biotech teams. hello@aimlitics.com
Ardlow maps each hub's and pharmacy's status codes to standard steps, then shows time to first shipment and the open cases that have waited longest. Its open demo runs on the same kind of synthetic data.