The self-diffusion coefficient of zinc in ZnO is derived as a function of the chemical potential and Fermi level from first-principles calculations. Density functional calculations in combination with the climbing image-nudged elastic band method are used in order to determine migration barriers for vacancy, interstitial, and interstitialcy jumps. Zinc interstitials preferentially diffuse to second-nearest neighbor positions. They become mobile at temperatures as low as 90 to 130 K and therefore allow for rapid defect annealing. Under predominantly oxygen-rich and n-type conditions self-diffusion occurs via a vacancy mechanism.