Most web services need to be contracted through service level agreements that typically specify a certain quality of service (QoS) in return for a certain price. We propose a new form of service level agreement where the price is determined by the QoS actually delivered. We show that such agreements make it optimal for the service provider to deliver the service at the promised quality. To allow efficient monitoring of the actual QoS, we introduce a reputation mechanism. A scoring rule makes it optimal for the users of a service to correctly report the QoS they observed. Thus, we obtain a practical scheme for service-level agreements that makes it uninteresting for providers to deviate from their best effort.