While the literature has established that there is substantial and highly selective return migration, the growing importance of repeat migration has been largely ignored. Using Markov chain analysis, this paper provides a modeling framework for repeated moves of migrants between the host and home countries. The Markov transition matrix between the states in two consecutive periods is parameterized and estimated using a logit specification and a large panel data with 14 waves. The analysis for Germany, the largest European immigration country, shows that more than 60% of the migrants are indeed repeat migrants. The out-migration per year is low, about 10%. Migrants are more likely to leave again early after their arrival in Germany, and when they have social and familial bonds in the home country, but less likely when they have a job in Germany and speak the language well. Once out-migrated from Germany, the return probability is about 80% and guided mainly by remittances and family considerations.