The RoBMA R package fits a comprehensive collection of Bayesian
meta-analytic models (Bartoš & Maier, 2020). It provides single-model
fits, meta-regression, location-scale models, multilevel and
multivariate models, fully Bayesian model-averaged ensembles, and
built-in publication-bias adjustment using selection models, PET-PEESE,
and Robust Bayesian Meta-Analysis (RoBMA). Posterior sampling is
performed by JAGS through a custom C++ module that implements the
weighted distributions used in selection models. Prior handling,
plotting, and Bayesian diagnostics are delegated to the companion
BayesTools package.
This introduction maps the package at a high level and points to the more detailed vignettes that follow.
The RoBMA R package requires JAGS 4.x (4.3.1 or newer; JAGS 5 is not
supported) (Plummer, 2003). Install JAGS from
https://mcmc-jags.sourceforge.io/ before installing the R package.
install.packages("RoBMA")Note on backwards compatibility. The 4.0 release is not backwards
compatible with earlier versions of the package. The Manuscript
Companions section accompanies the methodological papers in which the
RoBMA R package was originally developed and illustrated; the
vignettes there have been updated to the 4.0 version of the package, and
the numerical results differ from the published values because the
underlying algorithms have changed. To reproduce the published analyses
exactly, install RoBMA version 3.6.1 together with BayesTools
version 0.2.23:
remotes::install_version("BayesTools", version = "0.2.23")
remotes::install_version("RoBMA", version = "3.6.1")The package exposes a small set of high-level fitting functions.
| Function | What it fits |
|---|---|
brma(), brma.norm(), brma.mv() |
Bayesian random-effects meta-analysis |
brma.glmm() |
Bayesian GLMM meta-analysis (binomial / log OR or Poisson / log IRR) |
bselmodel(), bselmodel.mv() |
Bayesian weight-function selection model |
bPET(), bPEESE(), bPET.mv(), bPEESE.mv() |
Bayesian PET / PEESE publication-bias adjustment |
BMA(), BMA.norm(), BMA.mv() |
Bayesian model-averaging across presence / absence of effect and heterogeneity (no bias adjustment) |
BMA.glmm() |
Bayesian model-averaging for GLMM meta-analysis |
RoBMA(), RoBMA.mv() |
Robust Bayesian model-averaging including publication-bias models |
brma() and RoBMA() are the main workhorses. brma() fits a single
model in the same spirit as metafor::rma(); RoBMA() averages across
an ensemble that includes publication-bias adjustment. BMA() is
RoBMA() without the bias-adjustment models. The .mv variants extend
these models to multivariate and multilevel data with a known sampling
covariance matrix (V) and random-effect formulas (random, e.g.,
~ 1 | study / esid), in the same spirit as metafor::rma.mv().
All fitting functions
- share an effect-size interface (
yi,sei/vi,measurearguments; the.mvvariants also acceptV, and the.glmmvariants take outcome counts), - can be extended into a meta-regression (
modsargument), - can be extended into a location-scale model (
scaleargument), - can be extended into a multilevel model (
clusterargument;randomin the.mvvariants), - and produce objects that work with the same set of inference helpers
(
summary(),plot(),predict(),loo(),funnel(),regplot(), residuals and influence diagnostics, …); see Feature Coverage for the exceptions.
The vignettes are organized into four sections.
| Vignette | Topic |
|---|---|
| Introduction to RoBMA | Package overview, fitting functions, and vignette map |
| Prior Distributions | Default, informed, and custom prior distributions; rescaling guidance |
| Bayesian Meta-Analysis | Random-effects meta-analysis with brma(), compared with metafor::rma() |
| Feature Coverage | Overview of available functionality across model families |
The foundations section gives the package overview, prior specification,
a baseline brma() workflow, and current feature coverage. The
Bayesian
Meta-Analysis
vignette walks through the BCG-vaccine example from the metafor
package in brma(), covering summaries, meta-regression, marginal
means, residuals, influence, LOO, and the standard meta-analytic plots.
| Vignette | Topic |
|---|---|
| Multilevel Meta-Analysis | brma() with cluster and metafor::rma.mv() for 3-level data |
| Publication-Bias Adjustment | bselmodel() / bPET() / bPEESE() and metafor::selmodel() |
| Location-Scale Models | brma() with scale and metafor::rma.ls() |
| Generalized Linear Mixed-Effects Meta-Analysis | brma.glmm() and metafor::rma.glmm() for binomial and Poisson outcomes |
| Multivariate and Multilevel Meta-Analysis | brma.mv() with known sampling covariance matrices and structured random effects |
Each vignette starts from a metafor package analysis and shows the
matching RoBMA R package syntax, output, and diagnostics.
| Vignette | Topic |
|---|---|
| Bayesian Model Averaging | Accounting for model uncertainty across presence and absence of effect and heterogeneity, with posterior model probabilities and inclusion Bayes factors |
| Robust Bayesian Meta-Analysis | Extending the ensemble to publication-bias models used in RoBMA(), with PSMA, PP, and bespoke ensemble specifications |
| Posterior Densities and Parameter Tests | Likelihood-aware posterior densities and hypothesis tests with qCMDE and IWMDE |
The first vignette introduces model averaging on an ensemble of models
with and without effect and heterogeneity. The second extends the
ensemble to publication-bias models used in RoBMA().
| Vignette | Companion paper / dataset |
|---|---|
| Adjusting for Publication Bias Tutorial | Bartoš et al. (2022), JASP / R tutorial on Lui2015 |
| Robust Bayesian Meta-Regression | Bartoš et al. (2025), RoBMA-reg on Andrews2021 |
| Multilevel Robust Bayesian Meta-Analysis | Bartoš et al. (2026), Multilevel RoBMA on Johnides2025 |
| Multilevel Robust Bayesian Meta-Regression | Multilevel RoBMA-reg on Kroupova2021 |
| Informed Bayesian Meta-Analysis in Medicine | Bartoš et al. (2021), informed prior distributions for medical meta-analysis (continuous outcomes) |
| Informed Bayesian Meta-Analysis with Binary Outcomes | Bartoš et al. (2023), informed prior distributions for medical meta-analysis (binary and time-to-event outcomes) |
| Zplot Publication-Bias Diagnostics | Bartoš & Schimmack (2025), zplot diagnostics on Hoppen2025 |
These vignettes reproduce or update analyses from published papers and serve as references when citing the corresponding methodological work.
- For readers familiar with the
metaforpackage: read Bayesian Meta-Analysis, then the Correspondence withmetaforvignettes for the model family they use most. - For readers new to Bayesian meta-analysis: read Prior Distributions and then Bayesian Meta-Analysis.
- For publication-bias adjustment: read Robust Bayesian Meta-Analysis, with Adjusting for Publication Bias Tutorial as a worked example.
Bartoš, F., Gronau, Q. F., Timmers, B., Otte, W. M., Ly, A., & Wagenmakers, E.-J. (2021). Bayesian model-averaged meta-analysis in medicine. Statistics in Medicine, 40(30), 6743–6761. https://doi.org/10.1002/sim.9170
Bartoš, F., & Maier, M. (2020). RoBMA: An R package for robust Bayesian meta-analyses. https://CRAN.R-project.org/package=RoBMA
Bartoš, F., Maier, M., Quintana, D. S., & Wagenmakers, E.-J. (2022). Adjusting for publication bias in JASP and R — Selection models, PET-PEESE, and robust Bayesian meta-analysis. Advances in Methods and Practices in Psychological Science, 5(3), 1–19. https://doi.org/10.1177/25152459221109259
Bartoš, F., Maier, M., Stanley, T., & Wagenmakers, E.-J. (2025). Robust Bayesian meta-regression: Model-averaged moderation analysis in the presence of publication bias. Psychological Methods. https://doi.org/10.1037/met0000737
Bartoš, F., Maier, M., & Wagenmakers, E.-J. (2026). Robust Bayesian multilevel meta-analysis: Adjusting for publication bias in the presence of dependent effect sizes. Behavior Research Methods. https://doi.org/10.31234/osf.io/9tgp2_v2
Bartoš, F., Otte, W. M., Gronau, Q. F., Timmers, B., Ly, A., & Wagenmakers, E.-J. (2023). Empirical prior distributions for Bayesian meta-analyses of binary and time-to-event outcomes. https://doi.org/10.48550/arXiv.2306.11468
Bartoš, F., & Schimmack, U. (2025). Zplot: A visual diagnostic for publication bias in meta-analysis. In arXiv. https://doi.org/10.48550/arXiv.2509.07171
Plummer, M. (2003). JAGS: A program for analysis of Bayesian graphical models using Gibbs sampling. Proceedings of the 3rd International Workshop on Distributed Statistical Computing (DSC 2003), 1–10.