In this study, an iterative learning control (ILC) algorithm is proposed to improve synchronous errors in rigid tapping. In rigid tapping, the displacements of the z-axis and spindle must be kept synchronous to prevent damage. Using learning control provides better commands for both the z-axis and spindle dynamics, improving the synchronicity of the output responses of the z-axis and spindle. The proposed ILC makes use of synchronous errors in the previous cycle of tapping to modify the current position commands of both the z-axis and spindle. A systematic algorithm is proposed for the computation of learning gains that guarantee the monotonic convergence of synchronous errors. A systematic procedure of applying ILC to rigid tapping is also proposed, where the ideas of effective learning gains and stop learning criteria are discussed. Experimental results on a tapping machine verify the effectiveness of the proposed ILC algorithm.