Metrics

ClockArena compares epigenetic clocks across seven complementary domains. Each domain measures a different property, so a clock’s suitability depends on the intended application. The definitions and equations below follow the manuscript’s Methods.

Overall ranking

The Overall ranking combines whichever domains are selected on the leaderboard. Each selected domain contributes equally. Domain ranks are oriented so rank 1 corresponds to the preferred direction, including lower cell-composition influence.

r‾c=1∣S∣∑q∈Srcq\overline{r}_c=\frac{1}{|S|}\sum_{q\in S}r_{cq}

Here S is the set of selected domains and r_cq is clock c’s rank in domain q. A clock needs a valid rank in every selected domain to be included. Selecting all seven domains reproduces the manuscript’s overall mean-rank comparison; selecting a subset changes which properties contribute.

Ranks compare relative position rather than effect size and depend on the clocks and datasets evaluated. The tallest bar always represents the top-ranked clock; white labels show the underlying metric values.

Age prediction accuracy

Within each dataset, we calculate the Pearson correlation between chronological age and the age predicted by each clock, then square it. A clock’s overall age prediction score is the unweighted median of its dataset-level R² values.

All samples with valid chronological age and clock estimates are eligible, regardless of disease or case/control status. Correlation requires variation in both chronological and predicted age. R² describes association; it does not measure how close predicted ages are to chronological ages in years.

Rd2=cor⁡(Age,Age^)d2,A=median⁡d(Rd2)R_d^2=\operatorname{cor}(\mathrm{Age},\widehat{\mathrm{Age}})_d^2,\qquad A=\operatorname{median}_d(R_d^2)
MAEd=1nd∑i=1nd∣Age^id−Ageid∣\mathrm{MAE}_d=\frac{1}{n_d}\sum_{i=1}^{n_d}\left|\widehat{\mathrm{Age}}_{id}-\mathrm{Age}_{id}\right|

MAE is a supplementary measure of age prediction error, expressed in years; it does not determine the age prediction accuracy rank. Age-range analyses use ten-year bins, requiring at least ten valid pairs per dataset–clock–bin and at least two datasets for a bin summary. Bin R² and MAE are averaged equally across eligible datasets.

Disease discrimination

We evaluate whether adjusted age acceleration distinguishes samples with a documented disease label from samples without a disease label in the same dataset. Each comparison requires at least five observations per group.

AUC is calculated using the rank-sum estimator, assigning average ranks to tied scores. Clocks are ranked by the median AUC across eligible dataset–disease comparisons. An AUC of 0.5 corresponds to random discrimination; higher values indicate stronger discrimination in the evaluated direction.

Disease score=median⁡j(AUCj)\mathrm{Disease\ score}=\operatorname{median}_j(\mathrm{AUC}_j)

The primary score uses adjusted age acceleration. AUC calculated directly from predicted age is supplementary.

Mortality association

We fit Cox proportional-hazards models using adjusted age acceleration standardized to one standard deviation within each dataset and clock. Death is coded as event 1; participants alive at their last verified follow-up are right-censored with event 0. Follow-up time is measured in years.

Each model requires at least ten usable participants and five deaths, with verified mortality status and positive individual follow-up. The primary summary is the median dataset-level hazard ratio weighted by usable participant count, including both deaths and censored survivors.

zi=ε^i−ε^‾SD(ε^),h(t∣zi)=h0(t)exp⁡(βzi)z_i=\frac{\widehat{\varepsilon}_i-\overline{\widehat{\varepsilon}}}{\mathrm{SD}(\widehat{\varepsilon})},\qquad h(t\mid z_i)=h_0(t)\exp(\beta z_i)
HRd=exp⁡(βd),M=weighted median⁡d(HRd; nd)\mathrm{HR}_d=\exp(\beta_d),\qquad M=\operatorname{weighted\ median}_d(\mathrm{HR}_d;\,n_d)

To obtain the weighted median, dataset HRs are sorted and the first reaching half the total sample weight is selected; adjacent HRs are averaged at an exact halfway boundary. This is a descriptive summary of association, not a pooled hazard ratio or discrimination score. Confidence intervals and proportional-hazards diagnostics belong to individual dataset fits.

Cell-composition influence

We compare age-acceleration residuals from two ordinary least-squares models: one adjusting for chronological age and eligible sex, and one adding all seven estimated cell fractions. Both models use the same complete-cell samples and the same sex term.

For each dataset, we average the absolute differences between the two sets of residuals. We then average those dataset means with equal weights. The seven fractions represent B cells, NK cells, CD4 T cells, CD8 T cells, monocytes, neutrophils, and eosinophils.

Age^=β0+βageAge+βsexSex+∑k=17βkCk+εwith\widehat{\mathrm{Age}}=\beta_0+\beta_{\mathrm{age}}\mathrm{Age}+\beta_{\mathrm{sex}}\mathrm{Sex}+\sum_{k=1}^{7}\beta_k C_k+\varepsilon^{\mathrm{with}}
Age^=β0+βageAge+βsexSex+εwithout\widehat{\mathrm{Age}}=\beta_0+\beta_{\mathrm{age}}\mathrm{Age}+\beta_{\mathrm{sex}}\mathrm{Sex}+\varepsilon^{\mathrm{without}}
I=1D∑d=1D1nd∑i=1nd∣ε^idwith−ε^idwithout∣I=\frac{1}{D}\sum_{d=1}^{D}\frac{1}{n_d}\sum_{i=1}^{n_d}\left|\widehat{\varepsilon}_{id}^{\mathrm{with}}-\widehat{\varepsilon}_{id}^{\mathrm{without}}\right|

ClockArena ranks lower influence first. This measures sensitivity to cell-composition adjustment, rather than predictive accuracy. For these paired models, sex is included when fully observed with at least two observations in each of at least two categories. At least ten samples and three residual degrees of freedom are required. Missing cell fractions cannot be replaced by a no-cell fallback for this comparison.

Within-person reliability

Reliability measures how closely the change in a person’s predicted age agrees with the time between biological sample collections. We take the absolute difference between predicted-age change and the verified sampling interval for each eligible interval.

These differences are averaged within each dataset, then dataset means are averaged with equal weights. Technical repeats, comparisons of preparations from the same collection, and pairs without verified participant linkage or timing are excluded. Predicted ages are used without age or cell calibration.

ΔAge^=Age^follow-up−Age^baseline,Δt=tfollow-up−tbaseline\Delta\widehat{\mathrm{Age}}=\widehat{\mathrm{Age}}_{\text{follow-up}}-\widehat{\mathrm{Age}}_{\mathrm{baseline}},\qquad\Delta t=t_{\text{follow-up}}-t_{\mathrm{baseline}}
MAD=1D∑d=1D1Nd∑j=1Nd∣ΔAge^jd−Δtjd∣\mathrm{MAD}=\frac{1}{D}\sum_{d=1}^{D}\frac{1}{N_d}\sum_{j=1}^{N_d}\left|\Delta\widehat{\mathrm{Age}}_{jd}-\Delta t_{jd}\right|
RC95=1.96×SD ⁣(ΔAge^−Δt)\mathrm{RC}_{95}=1.96\times\mathrm{SD}\!\left(\Delta\widehat{\mathrm{Age}}-\Delta t\right)

D is the number of eligible datasets and N_d the number of valid biological intervals in dataset d. RC95 is a supplementary repeatability coefficient, not an ICC or a confidence interval for MAD. A clock can be stable within a person while still predicting chronological age poorly.

Geographic generalizability

For each clock, we calculate mean absolute prediction error within each dataset–country group. We take the median of those dataset MAEs within each country, then the median across country medians.

Countries contribute equally to the final score, regardless of their sample or dataset counts. All samples with known country and valid age and clock estimates are eligible. The current analysis includes the United States and excludes samples from Gambia and Mexico only from this domain.

MAEdk=1Ndk∑i=1Ndk∣Age^i−Agei∣\mathrm{MAE}_{dk}=\frac{1}{N_{dk}}\sum_{i=1}^{N_{dk}}\left|\widehat{\mathrm{Age}}_i-\mathrm{Age}_i\right|
MAEk=median⁡d(MAEdk),G=median⁡k(MAEk)\mathrm{MAE}_k=\operatorname{median}_d(\mathrm{MAE}_{dk}),\qquad G=\operatorname{median}_k(\mathrm{MAE}_k)

Here d indexes datasets and k countries; N_dk counts valid samples in that dataset–country group. Lower scores indicate better typical age prediction across the available countries. A good median can conceal poor performance in an individual country, so country-specific results remain relevant.

Responsiveness to interventions

For each intervention or exposure comparison, a clock’s effect is the mean adjusted age acceleration in cases minus the mean in controls. The reference direction is the sign of the median effect across all valid clocks, including the clock being scored.

We multiply each clock’s effect by that reference sign, then average its valid direction-aligned effects with equal comparison weights. Multiple comparisons from the same dataset contribute separately. Effects opposite to the reference direction reduce the score.

Δcj=ε‾cjcase−ε‾cjcontrol\Delta_{cj}=\overline{\varepsilon}_{cj}^{\mathrm{case}}-\overline{\varepsilon}_{cj}^{\mathrm{control}}
sj=sign⁡ ⁣(median⁡cΔcj),Rc=mean⁡j(sjΔcj)s_j=\operatorname{sign}\!\left(\operatorname{median}_c\Delta_{cj}\right),\qquad R_c=\operatorname{mean}_j(s_j\Delta_{cj})

Here c indexes clocks and j comparisons. Only comparisons with resolved reference directions contribute; near-zero reference medians (absolute value ≤ 10⁻¹⁰ years) are unresolved. This is response magnitude relative to the clock ensemble, not proof of health benefit. Clock scale and the set of clocks contributing to the reference can affect it.

Age acceleration and covariate adjustment

Disease, mortality, and responsiveness analyses use age acceleration: the residual from an ordinary least-squares regression of predicted age on chronological age and eligible covariates, fitted separately for each dataset and clock.

Age^i=β0+βageAgei+βsexSexi+∑k=17βkCik+εi\widehat{\mathrm{Age}}_i=\beta_0+\beta_{\mathrm{age}}\mathrm{Age}_i+\beta_{\mathrm{sex}}\mathrm{Sex}_i+\sum_{k=1}^{7}\beta_k C_{ik}+\varepsilon_i

Predicted age is denoted by a hatted Age; Cₖ denotes cell fraction k and β the fitted regression coefficients. The fitted residual ε̂ is age acceleration, expressed in years.

Sex is included when at least five males and five females have valid age and clock estimates. Otherwise, sex is omitted. The model first includes all seven cell fractions; if that model cannot be supported, all cell terms are omitted, retaining eligible sex. Age alone is used when necessary. Cell-composition influence has its own paired-model requirements.

Adapted from the manuscript’s Methods, with the current benchmark specification and ClockArena’s selected-domain ranking definition.