The purpose of this study was to design a regulatory policy to solve a nonpoint source (NPS) water pollution problem. Cost-sharing programs of various kinds have dominated NPS policy since the 1980’s. However, such programs are neither efficient nor effective. Economists agree that, in principle, performance-based approaches are preferred to design- based, because they allow firms to choose least-cost abatement practices. However, nonpoint sources are seldom included in performance-based programs since it is very costly to monitor the performance of individual NPS polluters. The NPS pollution problem can be modeled as a generalized principal-agents problem. That is, the principal has to regulate agents while he cannot observe either the types and or the effort level of the agents; only total level of ambient pollution is verifiable. I show that under assumptions consistent with the NPS pollution situation it is possible to decompose the generalized principal-agent problem into two univariate variational problems in the multi-agents case, and to design a two-step contract that solves both the adverse selection and the hidden action problems.