We prove an essentially tight lower bound on the unbounded-error communication complexity of every symmetric function, i.e., f (x, y) = D(|x∧y|), where D : {0, 1, . . . , n} → {0, 1} is a given predicate and x, y range over {0, 1} n . Specifically, we show that the communication complexity of f is between Θ(k/ log 5 n) and Θ(k log n), where k is the number of value changes of D in {0, 1, . . . , n}. Prior to this work, the problem was solved only for the parity predicate D (Forster 2001).Our proof is built around two new ideas. First, we show that a predicate D gives rise to a rapidly mixing random walk on Z n 2 , which allows us to reduce the problem to communication lower bounds for "typical" predicates. Second, we use Paturi's approximation lower bounds (1992), suitably generalized here to clusters of real nodes in [0, n] and interpreted in their dual form, to prove that a typical predicate behaves analogous to the parity predicate with respect to a smooth distribution on the inputs.