diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/risk/RiskLevelCalculation.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/risk/RiskLevelCalculation.kt
index b2e73150567df72cf5441316ad9229f5e190b406..10547f52aa6de3e406c3fe72459c15421e9cb301 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/risk/RiskLevelCalculation.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/risk/RiskLevelCalculation.kt
@@ -17,14 +17,14 @@ object RiskLevelCalculation {
 
         /** all attenuation values are capped to [TimeVariables.MAX_ATTENUATION_DURATION] */
         val weightedAttenuationLow =
-            attenuationParameters.weights.low.capped()
-                .times(exposureSummary.attenuationDurationsInMinutes[0])
+            attenuationParameters.weights.low
+                .times(exposureSummary.attenuationDurationsInMinutes[0].capped())
         val weightedAttenuationMid =
-            attenuationParameters.weights.mid.capped()
-                .times(exposureSummary.attenuationDurationsInMinutes[1])
+            attenuationParameters.weights.mid
+                .times(exposureSummary.attenuationDurationsInMinutes[1].capped())
         val weightedAttenuationHigh =
-            attenuationParameters.weights.high.capped()
-                .times(exposureSummary.attenuationDurationsInMinutes[2])
+            attenuationParameters.weights.high
+                .times(exposureSummary.attenuationDurationsInMinutes[2].capped())
 
         val maximumRiskScore = exposureSummary.maximumRiskScore.toDouble()
 
@@ -49,7 +49,7 @@ object RiskLevelCalculation {
         return round(riskScore.times(DECIMAL_MULTIPLIER)).div(DECIMAL_MULTIPLIER)
     }
 
-    private fun Double.capped(): Double {
+    private fun Int.capped(): Int {
         return if (this > TimeVariables.getMaxAttenuationDuration()) {
             TimeVariables.getMaxAttenuationDuration()
         } else {
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/risk/TimeVariables.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/risk/TimeVariables.kt
index ad8103a7e78d8c59b5dc6c01acd5bf25e01483b9..1dc1d93d7afd2358b79ad5ebccc2618e9a6b3250 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/risk/TimeVariables.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/risk/TimeVariables.kt
@@ -118,7 +118,7 @@ object TimeVariables {
      * This is the maximum attenuation duration value for the risk level calculation
      * in minutes
      */
-    private const val MAX_ATTENUATION_DURATION = 30.0
+    private const val MAX_ATTENUATION_DURATION = 30
 
     /**
      * Getter function for [MAX_ATTENUATION_DURATION]
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/risk/RiskLevelCalculationTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/risk/RiskLevelCalculationTest.kt
index 3a17562f085cf105e1e5822a365318e610f53712..237f7274f6686ff9285542944a48851f6eb35cb0 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/risk/RiskLevelCalculationTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/risk/RiskLevelCalculationTest.kt
@@ -62,6 +62,17 @@ class RiskLevelCalculationTest {
         assertEquals(9830.4, riskScore)
     }
 
+    @Test
+    fun calculateRiskScoreCapped() {
+        val riskScore =
+            RiskLevelCalculation.calculateRiskScore(
+                buildAttenuationDuration(0.5, 0.5, 1.0),
+                buildSummary(4096, 45, 45, 45)
+            )
+
+        assertEquals(9830.4, riskScore)
+    }
+
     private fun buildAttenuationDuration(
         high: Double,
         mid: Double,