We investigate productivity and cost pass-through of German manufacturing firms using administrative data from 2001 to 2014. Our framework allows for the estimation of quantity-based production functions for multi-product firms while controlling for unobserved productivity shocks and unobserved input quality. Using our parameter estimates, we can compute total factor productivity, markups and marginal costs. We find no effect of the EU ETS on firm productivity or profits for the whole sector, and a positive effect for some industries. Firms pass on shocks to materials costs completely, or even more than completely, whereas pass-through of energy costs is around 35-60\%. Although pass-through of energy costs is incomplete, it nevertheless allowed firms to recover more than their total carbon costs due to generous free allocation of allowances. Our results add to the recent literature concerning the causal effects of climate policy on firms and are relevant for policy makers when defining the level of free allowance allocation to industry.