Estimation of multinomial (MNL) and mixed logit (MXL) models in R with “Preference” space or “Willingness-to-pay” (WTP) space utility parameterizations.

The latest version includes support for:

  • Homogeneous multinomial logit (MNL) models
  • Heterogeneous mixed logit (MXL) models (with normal and log-normal parameter distributions).
  • Preference space utility parameterization.
  • WTP space utility parameterization.
  • An option to run a multistart optimization loop that uses different random starting points in each iteration (useful for non-convex problems like MXL models or models with WTP space parameterizations).
  • Computing and comparing WTP from both preference space and WTP space models.
  • Simulating the expected shares of a set of alternatives using an estimated model.

Note: MXL models assume uncorrelated heterogeneity covariances and are estimated using maximum simulated likelihood based on the algorithms in Kenneth Train’s book Discrete Choice Methods with Simulation, 2nd Edition (New York: Cambridge University Press, 2009).


You can install {logitr} from CRAN:

or you can install the development version of {logitr} from GitHub:

# install.packages("remotes")

Load the library with:

Basic Usage

View the basic usage page for details on how to use logitr to estimate models.

Author, Version, and License Information

  • Author: John Paul Helveston
  • Date First Written: Sunday, September 28, 2014
  • Most Recent Update: February 15, 2021
  • License: MIT

Citation Information

If you use this package for in a publication, I would greatly appreciate it if you cited it - you can get the citation by typing citation("logitr") into R:

#> To cite logitr in publications use:
#>   John Paul Helveston (2021). logitr: Random utility logit models with
#>   preference and willingness to pay space parameterizations. R package
#>   version 0.1.0.
#> A BibTeX entry for LaTeX users is
#>   @Manual{,
#>     title = {logitr: Random Utility Logit Models with Preference and Willingness to Pay Space Parameterizations},
#>     author = {John Paul Helveston},
#>     year = {2020},
#>     note = {R package version 0.1.0},
#>     url = {},
#>   }