Author-reviewedEvidence: highv1.0.3

Transition Matrix

A transition matrix is the table of probabilities of moving between, or staying in, health states in one cycle of a Markov model, with rows summing to one.

Download concept guide
Last reviewed byDr Darrin Baines

Concept Architecture

Transition Matrix for Cohort Propagation and Cycle Length Changes in Markov Models

In a Markov model used for economic evaluation, the transition matrix is what moves the cohort forward in time, so every cost and QALY the model reports rests on the state occupancy it produces. Its entries are transition probabilities, whose estimation is a separate topic. The matrix as a whole has its own rules for rows, for cohort propagation and for building it from rates when a state has competing exits, and changing the cycle length needs a matrix root or logarithm rather than a cell-by-cell formula. An illustrative example below runs a three-state cohort for three cycles and converts its annual matrix to six-month cycles, first incorrectly and then correctly.

Rows, columns and the row-sum rule

A cohort model with KK mutually exclusive and collectively exhaustive health states needs a K×KK \times K matrix for each cycle. Under the usual convention in health economic models, rows are the states at the start of a cycle and columns the states at its end. Each row therefore accounts for everyone who starts in that state.

pij≥0for all i,j,∑j=1Kpij=1for each ip_{ij} \ge 0 \quad \text{for all } i, j, \qquad \sum_{j=1}^{K} p_{ij} = 1 \quad \text{for each } i

where pijp_{ij} is the probability that a member of the cohort in state ii at the start of the cycle is in state jj at its end, and KK is the number of states. Sonnenberg and Beck, who called this array the P matrix, noted that probabilities for disallowed transitions are zero; these structural zeros encode the model's transition structure, such as no recovery from a progressed cancer. An absorbing state, usually death, has 1 on the diagonal and 0 elsewhere in its row. Some texts outside health economics put starting states in columns, which reverses the multiplication, so a model should state its orientation.

Constant and cycle-dependent matrices

A model can use one matrix for every cycle or a different matrix in each cycle. Sonnenberg and Beck called the constant case a Markov chain (a time-homogeneous chain in current usage) and observed that age-specific mortality had led modellers to rely more on probabilities that vary over time. The tutorial on time-dependent cohort models by Alarid-Escudero and colleagues separates simulation-time dependence, where the matrix changes with time since the start of the model (P1,P2,…P_1, P_2, \dots), from state-residence time dependence, where risk changes with time already spent in a state.

The second kind is handled with tunnel states, which change the shape of the matrix rather than its values. Sonnenberg and Beck described them as temporary states visited only in a fixed sequence, so each one adds a row and a column, and its row sends the cohort onward rather than letting it stay. Every tunnel state enlarges the matrix, which limits how much history a cohort model can carry in practice.

Propagating the cohort one cycle at a time

Multiplying the row vector of state proportions by the matrix moves the cohort forward one cycle. Repeating the step builds the cohort trace. With a constant matrix the nn-cycle result is a matrix power.

mt+1=mtPt,mn=m0Pnwhen Pt=P for every cycle\mathbf{m}_{t+1} = \mathbf{m}_t P_t, \qquad \mathbf{m}_n = \mathbf{m}_0 P^{n} \quad \text{when } P_t = P \text{ for every cycle}

where mt\mathbf{m}_t is the row vector of proportions in each state at the end of cycle tt, PtP_t is the matrix for cycle tt, and the entries of PnP^{n} are nn-cycle transition probabilities summed over every pathway, including those through intermediate states. Counting rewards within a cycle belongs to cohort simulation and half-cycle correction, and leaves the matrix unchanged.

Building a matrix from rates when a state has competing exits

When evidence gives probabilities over the model's own interval, each row is filled directly, with the diagonal as one minus the exits. When evidence gives rates, the coherent route for a multistate model builds a rate matrix and converts it in one step. Jones, Epstein and García-Mochón set out the relationship as follows.

P(Δ)=exp⁡(ΔQ)=∑r=0∞(ΔQ)rr!P(\Delta) = \exp(\Delta Q) = \sum_{r=0}^{\infty} \frac{(\Delta Q)^{r}}{r!}

where QQ is the rate (generator) matrix, whose off-diagonal entries qijq_{ij} are constant transition rates from state ii to state jj and whose diagonal entries make each row of QQ sum to zero, Δ\Delta is the cycle length in the time unit of the rates, and P(Δ)P(\Delta) is the one-cycle matrix. They note that applying the simple formula p=1−e−rtp = 1 - e^{-r t} to each rate separately is always wrong when a state has competing exits, because exits compete and a person can have more than one event in a cycle, such as healthy to ill to dead; the exponential captures such sequences.

The transition probability page gives a proportional split of competing exits for absorbing exits and notes that it is not universal; the worked example below shows the size of the error when a destination has onward transitions. Numerical software such as the msm package for R can do the conversion, and Jones and colleagues derive algebraic formulas for spreadsheets, although their procedure cannot be used in some cases, for example when the eigenvalues are very close together or when several backward transitions have no algebraic solution.

Changing the cycle length with roots and logarithms, not scaled cells

An annual matrix often has to become monthly or six-monthly. The ISPOR-SMDM report on state-transition modelling recommends converting probabilities between time units through rates. Chhatwal, Jayasuriya and Elbasha showed that the usual way of doing this, converting each annual probability to a rate and back separately, applies only to two-state models; in their three-state example it produced a different Markov chain. Assuming the same shorter-cycle matrix applies throughout the original interval, the correct conversion to cycles nn times shorter takes the nnth root of the whole matrix by eigendecomposition.

P1/n=VD1/nV−1P^{1/n} = V D^{1/n} V^{-1}

where VV is the matrix of eigenvectors of PP, DD is the diagonal matrix of its eigenvalues, D1/nD^{1/n} takes the nnth root of each eigenvalue, and P1/nP^{1/n} is the shorter-cycle matrix, which returns PP when raised to the power nn. Equivalently, the matrix logarithm of PP, when it exists, gives a rate matrix, which is divided by nn and exponentiated.

The root is not always a valid matrix. Chhatwal and colleagues caution that not every matrix is diagonalisable and that a root may contain complex or negative entries; in their HIV example one monthly probability was minus 0.0053. They list necessary conditions for PP to be embeddable, that is, for a valid rate matrix to exist, namely a positive determinant no greater than the product of the diagonal entries, and no zero entry for a transition that is reachable through other states. The authors note that these conditions may also be necessary for the root method to work. When the root is not stochastic, they approximate it with the closest stochastic matrix. Lengthening the cycle to a whole multiple is simpler, since integer powers of a stochastic matrix stay stochastic. In their liver disease example run on monthly cycles, cell-by-cell conversion gave lifetime errors, against the matrix root, of minus 42% in cumulative incidence of liver cancer, minus 19% in total costs and 0.9% in QALYs.

Worked example of a three-state cohort and a six-month conversion

The figures below are illustrative. A cohort with advanced cancer starts progression-free (PF). Each year, 70% remain progression-free, 20% progress (PD) and 10% die; of those who have progressed, 60% remain alive and 40% die. Death is absorbing and there is no return from PD to PF.

From \ ToPFPDDeadRow total
PF0.700.200.101.00
PD00.600.401.00
Dead001.001.00

1. Three annual cycles. Starting from m0=(1,0,0)\mathbf{m}_0 = (1, 0, 0), each row is the previous row times the matrix; for example, PD in cycle 3 is mPD=0.49×0.20+0.26×0.60=0.254m_{\mathrm{PD}} = 0.49 \times 0.20 + 0.26 \times 0.60 = 0.254.

End of cyclePFPDDeadTotal
10.7000.2000.1001.000
20.4900.2600.2501.000
30.3430.2540.4031.000

2. An incorrect six-month matrix. Converting each annual probability pp separately to p6m=1−(1−p)1/2p_{6\mathrm{m}} = 1 - (1 - p)^{1/2} gives 0.105573 for PF to PD, 0.051317 for PF to Dead and 0.225403 for PD to Dead, with diagonals of 0.843110 and 0.774597 as remainders. Two cycles should return the annual PF row, but squaring gives s11=0.8431102=0.710834s_{11} = 0.843110^{2} = 0.710834 for staying in PF and s12=0.843110×0.105573+0.105573×0.774597=0.170786s_{12} = 0.843110 \times 0.105573 + 0.105573 \times 0.774597 = 0.170786 for PF to PD, leaving 0.118380 for PF to Dead. Per 1,000 people the model has about 711 progression-free, 171 progressed and 118 dead after one year, against 700, 200 and 100 in the evidence.

3. The correct six-month matrix. The matrix is upper triangular, so its eigenvalues are its diagonal entries, 0.70, 0.60 and 1, and the square root RR has diagonal entries r11=0.70=0.836660r_{11} = \sqrt{0.70} = 0.836660, r22=0.60=0.774597r_{22} = \sqrt{0.60} = 0.774597 and 1. The PF to PD entry of R×RR \times R is r12(r11+r22)r_{12}(r_{11} + r_{22}), which must equal 0.20, as follows.

r12=0.200.836660+0.774597=0.201.611257=0.124127r_{12} = \frac{0.20}{0.836660 + 0.774597} = \frac{0.20}{1.611257} = 0.124127

where r12r_{12} is the six-month probability of moving from PF to PD. The PD row has one exit to an absorbing state, so r23=1−0.774597=0.225403r_{23} = 1 - 0.774597 = 0.225403, as in step 2, and the row-sum rule gives r13=1−0.836660−0.124127=0.039213r_{13} = 1 - 0.836660 - 0.124127 = 0.039213. Squaring RR returns the annual matrix; the PF to Dead entry, for instance, is r11r13+r12r23+r13=0.836660×0.039213+0.124127×0.225403+0.039213=0.100000r_{11} r_{13} + r_{12} r_{23} + r_{13} = 0.836660 \times 0.039213 + 0.124127 \times 0.225403 + 0.039213 = 0.100000. The matrix logarithm has non-negative annual rates of 0.308 from PF to PD, 0.048 from PF to Dead and 0.511 from PD to Dead, so PP is embeddable and exponentiating half of it gives the same RR.

4. Interpretation. The annual 10% death probability from PF includes people who progressed and then died within the year. The cell-by-cell method counts all of it as direct death, so it sets six-month death from PF too high (0.0513 against 0.0392) and progression too low (0.1056 against 0.1241). After six six-month cycles, three years, it has 0.221 in PD and 0.420 dead, against 0.254 and 0.403 in the annual model, understating time in the progressed state and its costs. Splitting the PF exits in proportion to the observed annual exits (0.20 and 0.10) gets PF right but still gives 0.175 in PD and 0.125 dead at one year, because it treats PD as absorbing.

Representing uncertainty with Dirichlet rows

In probabilistic sensitivity analysis the matrix must stay valid in every iteration, so the exits from a state are sampled together, usually from a Dirichlet distribution as Briggs, Ades and Price proposed. Each starting state with several destinations gets its own Dirichlet row, absorbing rows stay fixed and structural zeros stay zero; fitting and sampling are covered on the Dirichlet page.

Cycle-length conversion interacts with sampling. If the evidence gives an annual matrix and the model runs on shorter cycles, the root has to be taken for each sampled matrix, not once for the mean. Chhatwal and colleagues found that whether eigendecomposition gives a valid root depends on the probability values as well as the model structure, so the check for negative or complex entries belongs inside the sampling loop.

Checks before a matrix enters the model

Row sums and ranges are the basic checks, covered with the errors below. Two further checks are specific to a matrix that has been converted or that drives a long trace.

  1. Conversions reproduce their source. A converted matrix raised to the right power returns the original matrix.
  2. The trace is conserved and predictable. Proportions add to one in every cycle, and the ISPOR-SMDM report suggests setting parameters so the trace can be predicted, for example so that no one enters a given state.

Where the matrix sits among neighbouring concepts

Several pages describe parts of the same machinery, and the split between them is deliberate. Single entries, hazard ratios and survival curves belong to transition probability, the whole model to Markov model, and running it to cohort simulation; particular rows belong to absorbing state, tunnel state and Dirichlet distribution. What applies to the matrix as a whole, namely orientation and row rules, propagation, conversion of a full matrix between rates and probabilities, and the matrix root, is kept together here.

Where transition matrices go wrong

The basic errors are rows that do not sum to one within rounding tolerance, entries outside zero and one (including those produced by roots, logarithms or sampling), absorbing rows without 1 on the diagonal, disallowed transitions that are not zero, and living states with no route to death. Changing cycle length cell by cell is an error that row-sum checks miss, because, as the worked example shows, every row of the incorrect matrix still sums to one. Filling a row from separately sourced probabilities with the diagonal as the remainder can hide a negative diagonal or exits that describe different populations or intervals. Using one constant matrix when risk changes with age or time in a state calls for cycle-specific matrices or tunnel states instead.

Some limits no check repairs. The matrix describes average movement under the Markov property and carries no costs or utilities. A valid root need not be unique, and Chhatwal and colleagues note that different roots can lead to different conclusions about cost-effectiveness. Coherent arithmetic does not show that the states and evidence describe the disease well enough for the decision.

Sources

  • Alarid-Escudero F, Krijkamp E, Enns EA, Yang A, Hunink MGM, Pechlivanoglou P, Jalal H. A tutorial on time-dependent cohort state-transition models in R using a cost-effectiveness analysis example. Medical Decision Making. 2023;43(1):21-41. https://doi.org/10.1177/0272989X221121747
  • Briggs AH, Ades AE, Price MJ. Probabilistic sensitivity analysis for decision trees with multiple branches: use of the Dirichlet distribution in a Bayesian framework. Medical Decision Making. 2003;23(4):341-350. https://doi.org/10.1177/0272989X03255922
  • Chhatwal J, Jayasuriya S, Elbasha EH. Changing cycle lengths in state-transition models: challenges and solutions. Medical Decision Making. 2016;36(8):952-964. https://doi.org/10.1177/0272989X16656165
  • Jones E, Epstein D, García-Mochón L. A procedure for deriving formulas to convert transition rates to probabilities for multistate Markov models. Medical Decision Making. 2017;37(7):779-789. https://doi.org/10.1177/0272989X17696997
  • Siebert U, Alagoz O, Bayoumi AM, Jahn B, Owens DK, Cohen DJ, Kuntz KM. State-transition modeling: a report of the ISPOR-SMDM Modeling Good Research Practices Task Force-3. Value in Health. 2012;15(6):812-820. https://doi.org/10.1016/j.jval.2012.06.014
  • Sonnenberg FA, Beck JR. Markov models in medical decision making: a practical guide. Medical Decision Making. 1993;13(4):322-338. https://doi.org/10.1177/0272989X9301300409

Media & tools (1)

Transition Matrix Interactive Demonstrator

interactive interactive demonstrator for building and checking a transition matrix, propagating a cohort, and changing cycle length with a matrix root.

Open tool →

Institutional Perspectives (2)

  • PBAC

    Transition Probabilities Matched to the Model Cycle and Structure

    PBAC asks submissions to present every transition probability in the base-case model with point and interval estimates and justified sources, and to adjust values from all sources to the transitions the model structure requires, for example translating reported rates or cumulative probabilities to probabilities for the model cycle. For cohort state transition models, sponsors should consider whether transitions depend on earlier states, use tunnel states for time-varying probabilities, explain the choice of cycle length and apply a half-cycle correction by default. Correlation between transition probabilities should be assessed.

    Guidelines for preparing a submission to the Pharmaceutical Benefits Advisory Committee, version 5.0 (September 2016), subsections 3A.2.3 and 3A.4.1View source →
  • Belgian Health Care Knowledge Centre (KCE)

    Markov Transition Probabilities Presented in Matrix Form

    For Markov models, the Belgian Health Care Knowledge Centre requires the nature of each health state, temporary or absorbing, to be specified and the choice of health states to be justified. Transition probabilities should be presented, for example in matrix form, with an indication of whether each probability is constant or variable, and the choice of cycle length should be justified. Half-cycle corrections are recommended, except for events that occur specifically at the beginning of a cycle, such as surgery or a first drug administration.

    Belgian Health Care Knowledge Centre (KCE), Belgian guidelines for economic evaluations and budget impact analyses: third edition, KCE Reports 400C (published 8 May 2025), Guideline 14 (sections 5.14.2 and 5.14.5)View source →

Functions & Formulae (1)

P^(1/n) = V * D^(1/n) * V^(-1); (P^(1/n))^n = P

Converts a transition matrix estimated over one interval into the matrix for a cycle n times shorter by taking the n-th root of the whole matrix, so that n short cycles reproduce the original matrix, including movements through intermediate states within the interval. Cohort propagation with a matrix is HE-FM-MM-001, the matrix exponential of a rate matrix HE-CF-CONT-001, competing exits HE-FM-TP-004 and cell-by-cell rescaling of a single probability HE-FM-TP-003. Notation follows the Transition Matrix article.

  • Six-month matrix as the square root of a progressive three-state annual transition matrix

    r_11 = sqrt(p_11); r_22 = sqrt(p_22); r_12 = p_12 / (r_11 + r_22); r_13 = 1 - r_11 - r_12; r_23 = 1 - r_22

    For a progressive model with states progression-free (1), progressed (2) and dead (3), no return from 2 to 1 and death absorbing, the annual matrix is upper triangular, so its eigenvalues are its diagonal entries and the square root has diagonal entries equal to their square roots. The progression entry follows from requiring the root squared to return the annual progression probability, the death entries are the row remainders, and two six-month cycles then reproduce every entry of the annual matrix.

View all formulae

Library

Publications

3
  • Journal article

    State-Transition Modeling: A Report of the ISPOR-SMDM Modeling Good Research Practices Task Force-3 — Siebert, Alagoz, Bayoumi, Jahn, Owens, Cohen & Kuntz, Task Force Report 3 ed., 2012 (Value in Health / Medical Decision Making)

    Best-practice guidance for cohort and individual-based state-transition (Markov) models, covering development, analysis, validation and reporting.

  • Book

    Markov Chains — J. R. Norris, 1st Edition ed., 1997 (Cambridge University Press)

    A rigorous introduction to discrete- and continuous-time Markov chains, transition structures, recurrence and long-run behaviour.

  • Book

    Markov Processes for Stochastic Modeling — Masaaki Kijima, 1st Edition ed., 1997 (Chapman & Hall)

    An applied mathematical treatment of discrete- and continuous-time Markov processes for modeling the transient behaviour of stochastic systems.

Frequently Asked Questions (6)

  • What is a transition matrix?

    A transition matrix is the table of probabilities of moving between, or staying in, health states in one cycle of a Markov model, with rows summing to one.

    Source: Sonnenberg & Beck 1993

  • How is a transition matrix used to move a cohort forward?

    To advance a cohort by one cycle, the current distribution of patients across states is combined with the transition matrix, which holds the probability of moving from each state to every other in that cycle. Applying the matrix redistributes the cohort, sending the appropriate fraction of each state's occupants to their next states and leaving the rest in place. Repeating this cycle after cycle traces the cohort through the whole horizon. The matrix is thus the engine that drives the model forward. Briggs and colleagues (2006) describe this use.

    Source: Briggs et al. 2006

  • How is a transition matrix structured?

    A transition matrix is a square table with one row and one column for each health state. Each entry gives the probability of moving from the row's state to the column's state in one cycle, including the probability of remaining in the same state, which lies on the diagonal. Because a patient in any state must move to some state, the probabilities in each row sum to one. This structure captures all the possible transitions and their probabilities in a single specification.

    Source: Sonnenberg & Beck 1993

  • Why must each row of a transition matrix sum to one?

    Each row of a transition matrix must sum to one because it gives the probabilities of all the states a patient in that row's state could move to in a cycle, and the patient must end the cycle in some state, so these probabilities are exhaustive and mutually exclusive. If a row summed to less or more than one, some probability would be missing or over-counted, and the cohort would not be conserved. Ensuring rows sum to one is therefore a basic check that the matrix is valid.

    Source: Sonnenberg & Beck 1993

  • How is a transition matrix used in a Markov model?

    A transition matrix is used to advance the cohort through the Markov model: multiplying the current distribution across states by the matrix gives the distribution after one cycle, and repeating this steps the cohort through the states over the horizon. In an individual model, the row for a patient's current state gives the probabilities from which their next state is sampled. The transition matrix thus governs the movement of patients between states each cycle, driving the model's evolution over time.

    Source: Sonnenberg & Beck 1993

  • What does the diagonal of a transition matrix represent?

    The diagonal of a transition matrix represents the probabilities of remaining in the same state over a cycle, since each diagonal entry is the probability of moving from a state to itself. For a state patients tend to stay in, the diagonal value is high, while for a state they leave quickly it is low. For an absorbing state such as death, the diagonal entry is one, since patients cannot leave. The diagonal thus captures how likely patients are to persist in each state each cycle.

    Source: Sonnenberg & Beck 1993

Trust Record

Verified by Dr Darrin Baines

British health economist

Professional identity: darrinbaines.org

Verification date: 10 Oct 2026

Content version: 1.0.3

Canonical Identity

Term code
HE-EM-MM-027
Wikidata
Q176583

Stable URI · Machine-readable · Resolvable · CC BY 4.0