Statistical Methods Atlas
Atlas › Predict & Explain › Ordinal Logistic Regression

Ordinal Logistic Regression

Predicts an ordered categorical outcome — e.g., low/medium/high engagement — respecting the ordering that multinomial models throw away.

Predict & ExplainMultivariate also known as: Proportional odds model, Cumulative logit model

✓ When to use

  • Outcome has 3+ ordered categories: performance ratings, satisfaction bands, severity levels, single Likert items as DV.
  • You want one odds ratio per predictor describing movement 'up' the ordered scale.
  • Analyzing a genuinely ordinal DV without pretending it is interval.

✗ When NOT to use

  • Outcome categories unordered — multinomial logistic.
  • The proportional-odds assumption clearly fails for key predictors — use partial proportional odds or multinomial.
  • The DV is a well-behaved multi-item composite — treating it as continuous in OLS is usually fine and simpler.
  • Only two categories — binary logistic.

Data requirements

Dependent / outcome variableOne ordinal variable with 3+ ordered categories.
Independent / grouping variableContinuous and/or dummy-coded categorical predictors.
DesignIndependent observations.
Sample size guidance≥ 10 cases per predictor per outcome-category boundary as a loose guide; sparse top/bottom categories may need merging.

Assumptions

Hypotheses

H₀ — A predictor's coefficient is zero: it does not shift the odds of being in higher outcome categories.
H₁ — The coefficient differs from zero.

The concept

The model stacks all cumulative splits of the ordered outcome (low vs rest; low+medium vs high; …) and fits one common slope per predictor across them, with separate intercepts (thresholds) per split. The exponentiated slope is a cumulative odds ratio: the multiplicative change in the odds of being in a higher (vs lower) category per unit of the predictor.

The proportional-odds assumption is what buys the single-coefficient elegance; when the Brant/parallel-lines test rejects it for a predictor, that predictor's effect differs across the scale and needs freeing (partial proportional odds) or a multinomial fallback. Thresholds themselves are rarely of substantive interest.

Worked example

Predicting engagement band (low/medium/high) from job autonomy and workload among 350 employees.

Result: autonomy OR = 1.86, 95% CI [1.48, 2.35] — each autonomy point nearly doubles the odds of a higher engagement band; workload OR = 0.71. Test of parallel lines: χ²(2) = 2.1, p = .35 — assumption holds.

How to run it

library(MASS)
df$engage_band <- factor(df$engage_band, levels = c("low","medium","high"), ordered = TRUE)
model <- polr(engage_band ~ autonomy + workload, data = df, Hess = TRUE)
summary(model)
exp(cbind(OR = coef(model), confint(model)))

library(brant); brant(model)     # proportional odds test

Interpreting the output

APA-style reporting

Ordinal logistic regression indicated that autonomy increased the odds of higher engagement, OR = 1.86, 95% CI [1.48, 2.35], p < .001, while workload decreased them, OR = 0.71, 95% CI [0.58, 0.87], p = .001; the proportional-odds assumption was satisfied, χ²(2) = 2.10, p = .350.

Common mistakes

Related methods

Binary Logistic RegressionTwo outcome categoriesMultinomial Logistic RegressionUnordered categoriesMultiple Linear RegressionContinuous outcome
← Binary Logistic RegressionMultinomial Logistic Regression →