The Favard length of a planar Borel set is the average length of its orthogonal projections. We prove that if an Ahlfors 1-regular set has large Favard length, then it contains a big piece of a Lipschitz graph. This gives a quantitative version of the Besicovitch projection theorem. As a corollary, we answer questions of David and Semmes and of Peres and Solomyak. We also make progress on Vitushkin’s conjecture.