This paper presents evidence on taxable income responses using administrative data that link tax return information to detailed socioeconomic information for the full Danish population over 25 years. The identifying variation is provided by a series of tax reforms that create large tax variation across individuals, income forms, and over time. It is argued that the unique tax variation and data in Denmark makes it possible to control for the biases from non-tax changes in the income distribution and mean reversion that plague much of the existing literature. Using a very large and salient tax reform in the 1980s, we present compelling graphical evidence of taxable income responses by comparing treatment and control groups that experience very similar pre-reform income trends but face very different tax rate changes due to the reform. We then turn to panel regressions using the full population and all reforms over time, which produces the following main findings: (i ) Labor income elasticities are modest overall, around 0.05 for wage earners and 0.10 for self-employed individuals. (ii ) Capital income elasticities are two-three times larger than labor income elasticities. (iii ) Behavioral elasticities are much larger when estimated from large tax reform changes than from small tax reform changes, consistent with the idea that responses to small tax changes are attenuated by optimization frictions such as adjustment costs and inattention. (iv) Cross-tax effects between labor and capital income– for example due to income shifting–are in general small. (v) All of our findings are extremely robust to specification (such as pre-reform income controls), suggesting that we have controlled in a sufficiently rich way for non-tax factors impacting on taxable income.