Advanced Bayesian Multilevel Modeling with the R Package brms

The brms package allows R users to easily specify a wide range of Bayesian single-level and multilevel models which are fit with the probabilistic programming language Stan behind the scenes. Several response distributions are supported, of which all parameters (e.g., location, scale, and shape) can be predicted. Non-linear relationships may be specified using non-linear predictor terms or semi-parametric approaches such as splines or Gaussian processes. Multivariate models can be fit as well. To make all of these modeling options possible in a multilevel framework, brms provides an intuitive and powerful formula syntax, which extends the well known formula syntax of lme4. The purpose of the present paper is to introduce this syntax in detail and to demonstrate its usefulness with four examples, each showing relevant aspects of the syntax.

Paul-Christian Bürkner

CRAN packages used

brms, lme4, rstanarm, MCMCglmm, mgcv, nlme, afex, loo,, bridgesampling

CRAN Task Views implied by cited packages

Bayesian, SocialSciences, Econometrics, Environmetrics, Psychometrics, OfficialStatistics, SpatioTemporal, ChemPhys, Finance, Phylogenetics, Spatial, Survival


Text and figures are licensed under Creative Commons Attribution CC BY 4.0. The figures that have been reused from other sources don't fall under this license and can be recognized by a note in their caption: "Figure from ...".


For attribution, please cite this work as

Bürkner, "The R Journal: Advanced Bayesian Multilevel Modeling with the R Package brms", The R Journal, 2018

BibTeX citation

  author = {Bürkner, Paul-Christian},
  title = {The R Journal: Advanced Bayesian Multilevel Modeling with the R Package brms},
  journal = {The R Journal},
  year = {2018},
  note = {},
  doi = {10.32614/RJ-2018-017},
  volume = {10},
  issue = {1},
  issn = {2073-4859},
  pages = {395-411}