Inspired by the increasing popularity of Swiss-system tournaments in sports, we study the problem of predetermining the number of rounds that can be guaranteed in a Swiss-system tournament. Matches of these tournaments are usually determined in a myopic round-based way dependent on the results of previous rounds. Together with the hard constraint that no two players meet more than once during the tournament, at some point it might become infeasible to schedule a next round. For tournaments with n players and match sizes of k≥2 players, we prove that we can always guarantee ⌊nk(k−1)⌋ rounds. We show that this bound is tight. This provides a simple polynomial time constant factor approximation algorithm for the social golfer problem.We extend the results to the Oberwolfach problem. We show that a simple greedy approach guarantees at least ⌊n+46⌋ rounds for the Oberwolfach problem. This yields a polynomial time 13+ε-approximation algorithm for any fixed ε>0 for the Oberwolfach problem. Assuming that El-Zahar’s conjecture is true, we improve the bound on the number of rounds to be essentially tight.