The impact of synonymous codon choice on protein output has important implications for understanding endogenous gene expression and design of synthetic mRNAs. Synonymous codons are decoded at different speeds, but simple models predict that this should not drive protein output. Instead, translation initiation should be the rate limiting step for production of protein per mRNA, with little impact of codon choice. Previously, we used a neural network model to design a series of synonymous fluorescent reporters and showed that their protein output in yeast spanned a seven-fold range corresponding to their predicted translation elongation speed. Here, we show that this effect is not due primarily to the established impact of slow elongation on mRNA stability, but rather, that slow elongation further decreases the number of proteins made per mRNA. We combine simulations and careful experiments on fluorescent reporters to show that translation is limited on non-optimally encoded transcripts. Using a genome-wide CRISPRi screen, we find that impairing translation initiation attenuates the impact of slow elongation, showing a dynamic balance between rate limiting steps of protein production. Our results show that codon choice can directly limit protein production across the full range of endogenous variability in codon usage.