Longitudinal data on natural populations have been analysed using multistage models in which survival depends on reproductive stage, and individuals change stages according to a Markov chain. These models are special cases of stage-structured population models. We show that stage-structured models generate dynamic heterogeneity: life-history differences produced by stochastic stratum dynamics. We characterize dynamic heterogeneity in a range of species across taxa by properties of the Markov chain: the entropy, which describes the extent of heterogeneity, and the subdominant eigenvalue, which describes the persistence of reproductive success during the life of an individual. Trajectories of reproductive stage determine survivorship, and we analyse the variance in lifespan within and between trajectories of reproductive stage. We show how stage-structured models can be used to predict realized distributions of lifetime reproductive success. Dynamic heterogeneity contrasts with fixed heterogeneity: unobserved differences that generate variation between life histories. We show by an example that observed distributions of lifetime reproductive success are often consistent with the claim that little or no fixed heterogeneity influences this trait. We propose that dynamic heterogeneity provides a 'neutral' model for assessing the possible role of unobserved 'quality' differences between individuals. We discuss fitness for dynamic life histories, and the implications of dynamic heterogeneity for the evolution of life histories and senescence.