diff --git a/src/main/scala/leon/synthesis/SynthesisPhase.scala b/src/main/scala/leon/synthesis/SynthesisPhase.scala
index 028c7dcdd9d1d0b2d9e2201132ba2fc299226ea1..3e03d9a14923800dfda320d170ace28f442b82b7 100644
--- a/src/main/scala/leon/synthesis/SynthesisPhase.scala
+++ b/src/main/scala/leon/synthesis/SynthesisPhase.scala
@@ -45,7 +45,12 @@ object SynthesisPhase extends LeonPhase[Program, Program] {
           case Some(model) =>
             options = options.copy(costModel = model)
           case None =>
-            ctx.reporter.fatalError("Unknown cost model: "+cm)
+
+            val errorMsg = "Unknown cost model: " + cm + "\n" +
+                           "Defined cost models: \n" +
+                           (CostModel.all.map(_.name).mkString("  - ", "\n  - ", ""))
+
+            ctx.reporter.fatalError(errorMsg)
         }
       case v @ LeonValueOption("timeout", _) =>
         v.asInt(ctx).foreach { t =>