Understanding the molecular basis of gene expression evolution is a central problem in evolutionary biology. However, connecting changes in gene expression to increased fitness, and identifying the functional basis of those changes, remains challenging. To study adaptive evolution of gene expression in real time, we performed long term experimental evolution (LTEE) of Saccharomyces cerevisiae (budding yeast) in ammonium-limited chemostats. Following several hundred generations of continuous selection we found significant divergence of nitrogen-responsive gene expression in lineages with increased fitness. In multiple independent lineages we found repeated selection for non-synonymous mutations in the zinc finger DNA binding domain of the activating transcription factor (TF), GAT1, that operates within incoherent feedforward loops to control expression of the nitrogen catabolite repression (NCR) regulon. Missense mutations in the DNA binding domain of GAT1 reduce its binding affinity for the GATAA consensus sequence in a promoter-specific manner, resulting in increased expression of ammonium permease genes via both direct and indirect effects, thereby conferring increased fitness. We find that altered transcriptional output of the NCR regulon results in antagonistic pleiotropy in alternate environments and that the DNA binding domain of GAT1 is subject to purifying selection in natural populations. Our study shows that adaptive evolution of gene expression can entail tuning expression output by quantitative changes in TF binding affinities while maintaining the overall topology of a gene regulatory network.