Abstract: A well-known question in social choice theory is the following: given a collection of n candidates which are each pairwise comparable, how should we select a winner? The pairwise comparisons between candidates may be encoded as a tournament of n vertices, with edges directed from the winner to the loser in each comparison. The subtlety of the problem lies in the fact that the tournament need not be transitive, and therefore there is no indisputable way to select a global winner. One natural way of selecting a winning candidate from a tournament is to use a voting tree, a complete binary tree with leaves labelled from [n] (with possible repeats). Given any tournament as input, a voting tree deterministically selects a winner from the tournament by running pairwise elections between the leaves until we arrive at the root node. We want the winning candidate to beat many other candidates, so we define the performance guarantee of a voting tree as the minimum out-degree of any winner that it produces. We survey the question of how to construct good voting trees using deterministic and random methods and what the limitations of our techniques are.