Ancient DNA has unlocked new genetic histories and shed light on archaeological and historical questions, but many known and unknown historical events have remained below detection thresholds because subtle ancestry changes are challenging to reconstruct. Methods based on sharing of haplotypes and rare variants can improve power, but are not explicitly temporal and have not been adopted in unbiased ancestry models. Here, we develop Twigstats, a new approach of time-stratified ancestry analysis that can improve statistical power by an order of magnitude by focusing on coalescences in recent times, while remaining unbiased by population-specific drift. We apply this framework to 1,151 available ancient genomes, focussing on northern and central Europe in the historical period, and show that it allows modelling of individual-level ancestry using preceding genomes and provides previously unavailable resolution to detect broader ancestry transformations. In the first half of the first millennium ~1-500 CE (Common Era), we observe an expansion of Scandinavian-related ancestry across western, central, and southern Europe. However, in the second half of the millennium ~500-1000 CE, ancestry patterns suggest the regional disappearance or substantial admixture of these ancestries in multiple regions. Within Scandinavia itself, we document a major ancestry influx by ~800 CE, when a large proportion of Viking Age individuals carried ancestry from groups related to continental Europe. This primarily affected southern Scandinavia, and was differentially represented in the western and eastern directions of the wider Viking world. We infer detailed ancestry portraits integrated with historical, archaeological, and stable isotope evidence, documenting mobility at an individual level. Overall, our results are consistent with substantial mobility in Europe in the early historical period, and suggest that time-stratified ancestry analysis can provide a new lens for genetic history.