We study a general screening model that encompasses a health insurance market in which consumers have multiple dimensions of private information and a price-setting insurer (e.g., a monopolist or a social planner) offers vertically differentiated contracts. We combine theory and empirics to provide three novel results: (i) optimal menus satisfy intuitive conditions that generalize the literature on multidimensional screening and shed light on insurer incentives; (ii) the insurer's problem with an unlimited number of contracts is well-approximated with only a small set of contracts; and (iii) under an additional assumption, the problem becomes dramatically simpler and can be solved using familiar graphical analysis. Calibrated numerical simulations validate assumptions, quantify the differential incentives of a monopolist and a social planner, and evaluate common policy interventions in a monopoly market.