We conduct an experiment assessing the extent to which people trade off the economic costs of truthfulness against the intrinsic costs of lying. The results allow us to reject a type-based model. People's preferences for truthfulness do not identify them as only either "economic types" (who care only about consequences) or "ethical types" (who care only about process). Instead, we find that preferences for truthfulness are heterogeneous among individuals. Moreover, when examining possible sources of intrinsic costs of lying and their interplay with economic costs of truthfulness, we find that preferences for truthfulness are also heterogeneous within individuals.