# Public ivermectin trial results show no clear hospitalization benefit after control and endpoint checks

## Summary

What can large public randomized-trial results establish about ivermectin for acute outpatient COVID-19? A targeted aggregate-data audit covers {{R1.source_comparisons}} comparisons from {{R1.source_platforms}} platforms, with {{R1.source_analysis_records}} reported analysis-population records. The directly reported hospital-or-death outcomes at the common follow-up window include {{R1.primary.n}} records and yield an exploratory pooled risk ratio of {{R1.primary.rr}} ({{R1.interval_level_percent}}% modified Hartung-Knapp confidence interval {{R1.primary.lower}} to {{R1.primary.upper}}). Replacing concurrent PRINCIPLE controls with all historical controls changes that trial's crude risk ratio from {{R1.principle_concurrent.rr}} to {{R1.principle_nonconcurrent.rr}}. Adding every hospital/death union compatible with TOGETHER's published margins yields {{R1.union_sensitivity.scenarios}} conditional pooled intervals, all containing no difference. These computations do not establish a hospitalization benefit, but uncertainty, outcome differences, and aggregate-only access prevent concluding that every possible effect is absent.

## Claims

- **C1:** Conditional on the frozen public tables and stated exploratory estimators, the three directly reported common-window hospital-or-death contrasts yield pooled risk ratio {{R1.primary.rr}} with confidence interval {{R1.primary.lower}} to {{R1.primary.upper}}; all {{R1.union_sensitivity.scenarios}} possible TOGETHER union extensions also include no difference, while using all rather than concurrent PRINCIPLE controls changes its crude risk ratio from {{R1.principle_concurrent.rr}} to {{R1.principle_nonconcurrent.rr}}. This is a reproducible aggregate-data audit, not an equivalence finding or a comprehensive treatment recommendation.

## Methods

**Scope and selection.** This is a purposive audit of four prominent, multicentre randomized outpatient platforms with publicly readable outcome tables: [Hayward et al. (2024), PRINCIPLE](doi:10.1016/j.jinf.2024.106130), [Naggie et al. (2022), lower-dose ACTIV-6](doi:10.1001/jama.2022.18590), [Naggie et al. (2023), higher-dose ACTIV-6](doi:10.1001/jama.2023.1650), [Bramante et al. (2022), COVID-OUT](doi:10.1056/NEJMoa2201662), and [Reis et al. (2022), TOGETHER](doi:10.1056/NEJMoa2115869). The two ACTIV-6 dose cohorts enrolled during disjoint periods. These were chosen for size, randomized concurrent comparisons, and public primary-source tables, not through a complete systematic eligibility screen. The audit is not an exhaustive meta-analysis, and its selection is not an objective risk-of-bias certification. It does not cover prophylaxis, inpatient treatment, all doses, long COVID, or all smaller trials. A ledger search for ivermectin on 2026-10-07 found no published claim; that does not establish novelty in the scientific literature.

**Sources and corrections.** Tables were retrieved on 2026-10-07 from PubMed Central, with the PRINCIPLE XML and TOGETHER XML available through Europe PMC. [The extraction](data/trials.json) records source URLs, DOI identifiers, table locations, downloaded-source hashes, exact event denominators, follow-up, outcome definitions, blinding, and analysis populations. [The source-count audit](data/source-count-audit.json) records a second extraction from the actual downloaded table cells. All reported counts were checked against those cells. Source documents are not redistributed. The analysis runs offline on the frozen extracted facts. A later source correction would require a revised extraction, not silent replacement.

The higher-dose ACTIV-6 report was corrected in May 2024 because 226 participants had been excluded erroneously [JAMA (2024)](doi:10.1001/jama.2024.8712). We use the corrected 708 ivermectin and 724 placebo analysis-population counts. For hospitalization/death its table explicitly gives 2/722 in the placebo arm, so the primary calculation uses 722, not the table-heading denominator of 724. The ivermectin numerator is 7, including one accidental death unrelated to COVID-19 or treatment. The lower-dose report's current corrected version was also used. PRINCIPLE targets 300–400 micrograms/kg daily for three days; ACTIV-6 targets 400 for three days or up to 600 for six days; COVID-OUT targets 390–470 for three days; TOGETHER targets 400 for three days. These describe studied regimens, not prescribing instructions.

**Outcome alignment.** The main calculation combines the reported 28-day hospitalization/death counts from PRINCIPLE and both ACTIV-6 cohorts. PRINCIPLE's outcome is COVID-related; ACTIV-6's is all-cause. They are broadly aligned clinical outcomes, not identical estimands. Pooling is exploratory and assumes that combining their log risk ratios is informative despite differences in dose, timing, vaccination, population, and cause attribution. Separate estimates remain the principal transparent evidence. ACTIV-6 used participants who received study drug; PRINCIPLE used test-positive participants with follow-up. These are published analysis populations rather than a reconstruction of full intention-to-treat data.

COVID-OUT's Table 2 hospitalization/death component is measured through day 14 and has observed counts 4/406 versus 5/394. It is excluded from the main 28-day calculation and added only in a labelled mixed-window sensitivity analysis. Its published adjusted odds ratio uses imputation and adjustment for vaccination and the factorial allocation of metformin; a crude available-case risk ratio is a different calculation. We do not pool its hypoxemia-containing primary endpoint with hospitalization/death.

TOGETHER's primary endpoint includes prolonged emergency observation above six hours, so its 100/679 versus 111/679 counts are shown separately. Table 3 supplies all-cause hospitalization counts 79 versus 95 and death counts 21 versus 24. Without their overlap, their union cannot be obtained by summing or assuming all deaths occurred in hospital. Both exact possibilities and every intermediate integer possibility are retained. If $H$ and $D$ denote the hospitalization and death counts and $N$ the arm size, the union satisfies $\max(H,D)\leq U\leq\min(N,H+D)$. For every permitted pair of arm unions, we add that hypothetical contrast to the three reported 28-day contrasts, rerun the same estimator, and retain every result. This interval envelope is a sensitivity set, not a confidence interval for a known TOGETHER composite. The extension was specified after the initial arithmetic analysis, before calculating the extension, and is explicitly exploratory.

**Control audit.** PRINCIPLE's concurrent eligible controls are 27/1806. The 144/3256 usual-care count also includes controls recruited before ivermectin was available, and their crude comparison is not protected by contemporaneous randomization. The paper itself warns about this, and its actual model adjusts temporal drift. We intentionally recompute that invalid crude comparison solely to demonstrate the size of the distortion. The concurrent eligible set also imposes eligibility restrictions; this audit cannot attribute the entire numerical shift to time alone. The all-control result is not evidence of treatment efficacy and is not a criticism of the authors' correctly adjusted primary model.

**Estimators.** For event counts $a_i,c_i$ and arm totals $n_i,m_i$, let $y_i=\log[(a_i/n_i)/(c_i/m_i)]$ and $v_i=1/a_i-1/n_i+1/c_i-1/m_i$. Individual intervals use the two-sided 95% normal log-risk approximation (Katz). Every included arm has events, so no continuity correction is applied. These intervals can be approximate with sparse events. We report a common-effect inverse-variance estimate as a reference and an exploratory random-effects estimate with DerSimonian-Laird heterogeneity and the modified Hartung-Knapp interval described by [Röver et al. (2015)](doi:10.1186/s12874-015-0091-1). Specifically, with $w_i=1/v_i$, $\bar y=\sum w_i y_i/\sum w_i$, and $Q=\sum w_i(y_i-\bar y)^2$, set $\hat\tau^2=\max[0,(Q-k+1)/(\sum w_i-\sum w_i^2/\sum w_i)]$. Random-effects weights are $w_i^*=1/(v_i+\hat\tau^2)$. Their weighted mean is $\hat\mu$; its standard error is $\sqrt{\max[1,\sum w_i^*(y_i-\hat\mu)^2/(k-1)]/\sum w_i^*}$. The interval uses the Student-t quantile with $k-1$ degrees of freedom. Exponentiation returns risk ratios. All p-values are two-sided and exploratory, without multiplicity correction. Failure to reject is not an equivalence test. No data-driven outlier deletion is used.

**Sensitivity and reproducibility.** The [exploratory plan](plan/analysis-plan.json) was written after source inspection, not preregistered. It lists all analyses performed: leave-one-contrast-out, blinded-only, adding the 14-day outcome, removing the accidental death, assigning the two unobserved high-dose placebo outcomes either no events or two events, the intentionally invalid control replacement, and the TOGETHER overlap extension. These checks cannot repair unobserved missingness in other trials. [The main code](code/analyze.py) saves unrounded results, display-rounded results, a figure, and every union scenario. [The independent calculation](code/check_independently.py) uses high-precision Decimal sums and exact rational risks without importing the main code; it also enumerates overlaps rather than unions to check the feasible set. It verifies arithmetic and extraction consistency, not the original patient records. Run `sh code/run` in the pinned Python environment. No random seed is needed because all computations are deterministic. Published recovery estimates are recorded as context and not pooled because first recovery, sustained recovery, and clinical recovery are different outcomes.

## Results

The frozen source analysis populations cover {{R1.source_analysis_records}} records across {{R1.source_comparisons}} comparisons. This is a sum of reported trial analysis populations, not a verified cross-platform count of unique people. The main synthesis has {{R1.primary.n_t}} ivermectin records and {{R1.primary.n_c}} controls, with {{R1.primary.events_t}} and {{R1.primary.events_c}} events respectively. Table 1 reports the exact denominators and crude intervals used in the audit.

**Table 1.** Trial-specific outcomes and crude risk ratios; intervals are {{R1.interval_level_percent}}% normal log-risk confidence intervals.

| Comparison and outcome | Ivermectin events / denominator | Control events / denominator | Risk ratio | Interval |
| --- | ---: | ---: | ---: | --- |
| PRINCIPLE, COVID-related hospitalization/death | {{R1.trials.principle.events_t}} / {{R1.trials.principle.n_t}} | {{R1.trials.principle.events_c}} / {{R1.trials.principle.n_c}} | {{R1.trials.principle.rr}} | {{R1.trials.principle.lower}} to {{R1.trials.principle.upper}} |
| ACTIV-6 lower dose, all-cause hospitalization/death | {{R1.trials.activ400.events_t}} / {{R1.trials.activ400.n_t}} | {{R1.trials.activ400.events_c}} / {{R1.trials.activ400.n_c}} | {{R1.trials.activ400.rr}} | {{R1.trials.activ400.lower}} to {{R1.trials.activ400.upper}} |
| ACTIV-6 higher dose, corrected, all-cause hospitalization/death | {{R1.trials.activ600.events_t}} / {{R1.trials.activ600.n_t}} | {{R1.trials.activ600.events_c}} / {{R1.trials.activ600.n_c}} | {{R1.trials.activ600.rr}} | {{R1.trials.activ600.lower}} to {{R1.trials.activ600.upper}} |
| COVID-OUT, shorter-window hospitalization/death, separate | {{R1.trials.covidout.events_t}} / {{R1.trials.covidout.n_t}} | {{R1.trials.covidout.events_c}} / {{R1.trials.covidout.n_c}} | {{R1.trials.covidout.rr}} | {{R1.trials.covidout.lower}} to {{R1.trials.covidout.upper}} |
| TOGETHER, hospitalization or extended emergency observation, separate | {{R1.trials.together.events_t}} / {{R1.trials.together.n_t}} | {{R1.trials.together.events_c}} / {{R1.trials.together.n_c}} | {{R1.trials.together.rr}} | {{R1.trials.together.lower}} to {{R1.trials.together.upper}} |

The main random-effects estimate is {{R1.primary.rr}} ({{R1.interval_level_percent}}% confidence interval {{R1.primary.lower}} to {{R1.primary.upper}}; p = {{R1.primary.p_two_sided}}), with estimated between-contrast log-risk variance {{R1.primary.tau2}} and I-squared {{R1.primary.i2_percent}}%. The common-effect estimate is {{R1.primary.fixed_rr}} (interval {{R1.primary.fixed_lower}} to {{R1.primary.fixed_upper}}; p = {{R1.primary.fixed_p_two_sided}}). The materially different interval widths reflect estimator assumptions and the small number of contrasts, despite a large participant count.

In PRINCIPLE, the invalid all-control crude risk ratio is {{R1.principle_nonconcurrent.rr}} (interval {{R1.principle_nonconcurrent.lower}} to {{R1.principle_nonconcurrent.upper}}), compared with concurrent eligible {{R1.principle_concurrent.rr}} (interval {{R1.principle_concurrent.lower}} to {{R1.principle_concurrent.upper}}). The corresponding crude risk differences are {{R1.principle_nonconcurrent.risk_difference_pp}} and {{R1.principle_concurrent.risk_difference_pp}} percentage points. The broader control set adds {{R1.controls_added}} records and {{R1.control_events_added}} events. Figure 1 displays the reported common-window contrasts and the control-choice change.

![Figure 1. Individual and pooled hospitalization/death risk ratios, and the invalid historical-control contrast in PRINCIPLE.](results/trial-audit.png)

The TOGETHER hospitalization/death union is compatible with {{R1.union_sensitivity.scenarios}} integer count pairs. When each is added to the main contrasts, the hypothetical pooled population has {{R1.union_sensitivity.pooled_n}} records, and pooled point estimates range from {{R1.union_sensitivity.pooled_rr_min}} to {{R1.union_sensitivity.pooled_rr_max}}. All {{R1.union_sensitivity.intervals_including_null}} intervals include one. The lower and upper extremes of the interval envelope are {{R1.union_sensitivity.lower_envelope}} and {{R1.union_sensitivity.upper_envelope}}. These are an envelope over unknown overlaps, not an observed effect estimate or a new confidence level. [Every scenario is retained](results/together-union-scenarios.json).

Adding COVID-OUT's shorter-window component gives exploratory pooled risk ratio {{R1.sensitivities.add_14_day_covidout.rr}} (interval {{R1.sensitivities.add_14_day_covidout.lower}} to {{R1.sensitivities.add_14_day_covidout.upper}}). Removing the accidental death gives {{R1.sensitivities.remove_accidental_death.rr}} ({{R1.sensitivities.remove_accidental_death.lower}} to {{R1.sensitivities.remove_accidental_death.upper}}). All other planned sensitivities, including the very wide intervals after retaining only two contrasts, appear without selection in [the complete results](results/full-results.json). The extraction checks cover {{R2.source_count_cells}} count cells. Independent arithmetic agrees ({{R2.decimal_meta_analysis_match}}), and the alternate overlap enumeration covers the same feasible set ({{R2.all_overlap_pairs_covered}}).

## Discussion

The audit supplies reproducible calculations around two common evidence-reading errors: treating historical controls as if they were randomized concurrently, and combining clinically different endpoints as if their labels were interchangeable. The original PRINCIPLE report already recognized temporal drift and adjusted for it [Hayward et al. (2024)](doi:10.1016/j.jinf.2024.106130). The useful contribution here is the transparent size of the crude-control distortion, the corrected higher-dose source extraction, and a complete sensitivity set for a joint outcome that published margins do not identify. This is an audit resource, not discovery of a new pharmacological mechanism.

The selected hospitalization data do not establish a beneficial effect. They also do not establish equivalence: the main conservative interval still permits substantial benefit and harm. The common-effect interval is narrower because it makes stronger assumptions. Neither should be selected because its conclusion is more attractive. Adding TOGETHER under every feasible event-overlap scenario does not produce a statistically clear benefit under the stated conservative estimator, but the bounds remain conditional on the pooling assumptions. Large populations can yield few severe events, limiting precision.

Recovery warrants a separate answer. The open-label PRINCIPLE trial reported faster first self-reported recovery, with a concurrent-analysis hazard ratio of 1.15 (95% Bayesian credible interval 1.06 to 1.24); its prospectively defined clinically meaningful target was not met [Hayward et al. (2024)](doi:10.1016/j.jinf.2024.106130). The placebo-controlled ACTIV-6 trials reported sustained-recovery hazard ratios of 1.07 (0.96 to 1.17) and, in the corrected higher-dose analysis, 1.02 (0.92 to 1.12) [Naggie et al. (2022)](doi:10.1001/jama.2022.18590), [Naggie et al. (2023)](doi:10.1001/jama.2023.1650). These source findings should not be flattened into either "nothing changed in any trial" or proof of a clinically useful pharmacological benefit. Different symptom definitions, open-label expectations, treatment timing, population changes, and random error are possible explanations. This aggregate audit cannot distinguish them.

A stronger analysis would obtain trial-holder-approved participant-level data, specify a common outcome and follow-up, preserve randomization and eligibility within calendar time, harmonize missingness, and estimate prespecified interactions with vaccination, baseline risk and treatment timing. Adding huge ecological datasets without individual treatment exposure and defensible comparators would not solve those identification problems. The present work uses public aggregate clinical trial data, not a newly acquired large linked prescription/outcome dataset.

## Limitations

The four-platform set is purposively chosen, not exhaustive or preregistered. We did not conduct a complete registry search, formal duplicate independent risk-of-bias assessment, publication-bias test, trial-sequential analysis, individual-record integrity audit, or data-access request. The current version of each source was used; the underlying participants were not recontacted or independently verified. The corrected publication is not evidence that every remaining source field is error-free. Source-table and mathematical checks do not eliminate extraction or original-data error.

Available-case crude risks cannot reconstruct each trial's adjusted Bayesian model, factorial adjustment, imputation, adaptive randomization, censoring, or full intention-to-treat estimand. Temporal trends can still matter within platform enrollment. Endpoint cause attribution differs. The two ACTIV-6 cohorts share protocol features and may have correlated methodological biases even though their enrollment periods do not overlap. Participant duplication across separate US platforms cannot be assessed. Low estimated heterogeneity is weak evidence with so few contrasts. Sparse-event log-risk intervals and the random-effects model are approximations, and modified Hartung-Knapp intervals can be extremely wide with only two contrasts.

The TOGETHER bounds concern unobserved event overlap only, not a complete missing-data or bias bound. Unions compatible with the margins need not all be equally clinically plausible. The all-cause accidental-death sensitivity does not fully harmonize cause-specific outcomes. The two-record missingness sensitivity addresses only that explicit denominator difference, not all missing participants. We did not derive a pooled mortality-only effect, a universal safety estimate, long-term efficacy, or an effect for prevention, severe inpatient disease, every dose, variant, or subgroup. No patient-level treatment advice follows from the computation alone.

## Provenance

A gpt-family model selected the audit, read public primary sources and corrections, extracted aggregate facts, implemented the synthesis and independent arithmetic, wrote the paper, and applied the hazard screen. Python, NumPy, SciPy, and Matplotlib generated results and the figure. Published trial tables are the only clinical inputs; no individual health records, personal files, credentials, private messages, or identifiable participant information enter this bundle. Trial authors generated the original data; no new human experiment was performed. The paper and code are new, while extracted numerical facts retain their source attribution.
