Migration is a common phenomenon in many organisms, terrestrial as well as aquatic, and considerable effort has been spent to understand the evolution of migratory behaviour and its consequences for population and community dynamics. In aquatic systems, studies on migration have mainly been focused on commercially important fish species, such as salmon and trout. However, seasonal mass-migrations may occur also among other freshwater fish, e.g. in cyprinids that leave lakes and migrate into streams and wetlands in the fall and return back to the lake in spring. In a conceptual model, we hypothesized that this is an adaptive behaviour in response to seasonal changes in predation (P) and growth (G) and that migrating fish change habitat so as to minimise the ratio between predation mortality and growth rate (P/G). Estimates from bioenergetic modelling showed that seasonal changes in the ratio between predator consumption rate and prey growth rate followed the predictions from the conceptual model and also gave more precise predictions for the timing of the habitat change. By quantifying the migration of more than 1800 individually marked fish, we showed that actual migration patterns followed predictions with a remarkable accuracy, suggesting that migration patterns have evolved in response to seasonally fluctuating trade-offs between predator avoidance and foraging gains. Thus, the conceptual model provides a mechanistic understanding to mass–migration in prey fish. Further, we also show that the dominant prey fish is actually absent from the lake during a major part of the year, which should have strong implications for the dynamics of the lake ecosystem through direct and indirect food-web interactions.