We consider optimal nonuniform pricing schedules, where the price depends upon the amount purchased. Such schedules are regularly used by public utilities and other services. Welfare-optimal nonuniform prices are related to the theory of optimal uniform prices developed by Ramsey. We characterize situations in which upward or downward discontinuities in pricing schedules are optimal. Our results are applicable to a number of related problems, including optimal taxation, insurance, and incentives. Economic theory has confined most of its attention to markets with uniform prices, in which the price per unit charged is invariant to the level of a customer's purchases. This focus is warranted when goods are resellable, since any attempt to charge nonuniform prices could be circumvented by reselling amongst customers. But when goods are not resellable, nonuniform prices are not only possible but common. Public utilities have declining block pricing, with lower unit charges for large levels of consumption. Many agencies providing services, including communications, transportation-even education-use two-part pricing, with a fixed entry or retainer charge, and a further charge per unit consumption. Nonuniform price schedules can be expected to be ever more common as services become a larger fraction of total output. The increasing prevalence of nonuniform pricing policies have made them the focus of recent public and economic attention. Oi (1971), Feldstein (1972), and Ng and Weisser (1974) have examined optimal two-part pricing policies. Leland and Meyer (1976) examine block pricing, and show by example that optimal welfare policies may require nonuniform prices if zero profit constraints are binding. In this paper, we consider arbitrary nonuniform pricing policies, using variational techniques. Two-part and block pricing schedules are, of course, special cases of the environment we consider. The work most closely related to our examination is the seminal paper by Spence (1978) and subsequent analysis by Roberts (1979). Spence, however, does not pay explicit attention to the key role played by constraints on optimal pricing schedules. Roberts considers upward price discontinuities which lead to bunching of consumers at a given level of consumption, but not downward price discontinuities, which lead to regions in which no consumer chooses to consume (gaps). Bunching or gaps may appear in the optimal price schedule even when underlying demand and cost functions are smooth and well behaved. The prevalence of discontinuous pricing schedules (e.g. the block pricing structures of public utilities) argues that these questions are of practical as well as theoretical interest.