The Cretaceous-Palaeogene mass extinction around 66 million years ago was triggered by the Chicxulub asteroid impact on the present-day Yucatán Peninsula1,2. This event caused the highly selective extinction that eliminated about 76% of species3,4, including all non-avian dinosaurs, pterosaurs, ammonites, rudists and most marine reptiles. The timing of the impact and its aftermath have been studied mainly on millennial timescales, leaving the season of the impact unconstrained. Here, by studying fishes that died on the day the Mesozoic era ended, we demonstrate that the impact that caused the Cretaceous-Palaeogene mass extinction took place during boreal spring. Osteohistology together with stable isotope records of exceptionally preserved perichondral and dermal bones in acipenseriform fishes from the Tanis impact-induced seiche deposits5 reveal annual cyclicity across the final years of the Cretaceous period. Annual life cycles, including seasonal timing and duration of reproduction, feeding, hibernation and aestivation, vary strongly across latest Cretaceous biotic clades. We postulate that the timing of the Chicxulub impact in boreal spring and austral autumn was a major influence on selective biotic survival across the Cretaceous-Palaeogene boundary.