diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/storage/AppDatabase.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/storage/AppDatabase.kt
index 632fef208855f1e9cdb7400887612c0b6ed387f4..df9ff72967b703742197b3d639ccbfcc6e303648 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/storage/AppDatabase.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/storage/AppDatabase.kt
@@ -8,8 +8,10 @@ import androidx.room.RoomDatabase
 import androidx.room.TypeConverters
 import de.rki.coronawarnapp.storage.keycache.KeyCacheDao
 import de.rki.coronawarnapp.storage.keycache.KeyCacheEntity
+import de.rki.coronawarnapp.storage.keycache.KeyCacheRepository
 import de.rki.coronawarnapp.storage.tracing.TracingIntervalDao
 import de.rki.coronawarnapp.storage.tracing.TracingIntervalEntity
+import de.rki.coronawarnapp.storage.tracing.TracingIntervalRepository
 import de.rki.coronawarnapp.util.Converters
 import de.rki.coronawarnapp.util.security.SecurityHelper
 import net.sqlcipher.database.SupportFactory
@@ -48,6 +50,11 @@ abstract class AppDatabase : RoomDatabase() {
                 SQLiteDatabase.deleteDatabase(dbFile)
             }
             resetInstance()
+
+            // reset also the repo instances
+            KeyCacheRepository.resetInstance()
+            TracingIntervalRepository.resetInstance()
+            ExposureSummaryRepository.resetInstance()
         }
 
         private fun buildDatabase(context: Context): AppDatabase {
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/storage/ExposureSummaryRepository.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/storage/ExposureSummaryRepository.kt
index de6c051e3806c1f709e5a660db9479ff09ce3756..60eb7bae15005e4f8d9e26013966e856729ba541 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/storage/ExposureSummaryRepository.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/storage/ExposureSummaryRepository.kt
@@ -14,6 +14,10 @@ class ExposureSummaryRepository(private val exposureSummaryDao: ExposureSummaryD
                 instance ?: ExposureSummaryRepository(exposureSummaryDao).also { instance = it }
             }
 
+        fun resetInstance() = synchronized(this) {
+            instance = null
+        }
+
         fun getExposureSummaryRepository(): ExposureSummaryRepository {
             return getInstance(
                 AppDatabase.getInstance(CoronaWarnApplication.getAppContext())
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/storage/RiskLevelRepository.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/storage/RiskLevelRepository.kt
index 17c0a5ef5b8505e9ba567e72c574262b457cc79f..4fcb0f09ba853355e8c30faa302c863f65820ec0 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/storage/RiskLevelRepository.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/storage/RiskLevelRepository.kt
@@ -30,6 +30,16 @@ object RiskLevelRepository {
         setLastSuccessfullyCalculatedScore(riskLevel)
     }
 
+    /**
+     * Resets the data in the [RiskLevelRepository]
+     *
+     * @see de.rki.coronawarnapp.util.DataRetentionHelper
+     *
+     */
+    fun reset() {
+        riskLevelScore.postValue(RiskLevelConstants.UNKNOWN_RISK_INITIAL)
+    }
+
     /**
      * Set the current risk level from the last calculated risk level.
      * This is necessary if the app has no connectivity and the risk level transaction
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/storage/keycache/KeyCacheRepository.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/storage/keycache/KeyCacheRepository.kt
index 243a5b3004b408239381fe0a9ab06547fecb48f9..9e3ce000310077d2827eefe94fb3ee4e5b2f4ecf 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/storage/keycache/KeyCacheRepository.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/storage/keycache/KeyCacheRepository.kt
@@ -37,6 +37,10 @@ class KeyCacheRepository(private val keyCacheDao: KeyCacheDao) {
                         .also { instance = it }
             }
 
+        fun resetInstance() = synchronized(this) {
+            instance = null
+        }
+
         fun getDateRepository(context: Context): KeyCacheRepository {
             return getInstance(
                 AppDatabase.getInstance(context.applicationContext)
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/storage/tracing/TracingIntervalRepository.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/storage/tracing/TracingIntervalRepository.kt
index 2b6ea7515d8c981d487a9ba17e56cadd8c023ba8..478e580bfec8ee9ffcc61d27896a23bb06d1c46a 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/storage/tracing/TracingIntervalRepository.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/storage/tracing/TracingIntervalRepository.kt
@@ -39,6 +39,10 @@ class TracingIntervalRepository(private val tracingIntervalDao: TracingIntervalD
                         .also { instance = it }
             }
 
+        fun resetInstance() = synchronized(this) {
+            instance = null
+        }
+
         fun getDateRepository(context: Context): TracingIntervalRepository {
             return getInstance(
                 AppDatabase.getInstance(context.applicationContext)
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/DataRetentionHelper.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/DataRetentionHelper.kt
index 2ffe2d1e6332f31fd99339be4de95f1f085f77bc..46343586783c5c9f28c5b71d5bb6825aa0d14ef4 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/DataRetentionHelper.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/DataRetentionHelper.kt
@@ -23,6 +23,7 @@ import android.annotation.SuppressLint
 import android.content.Context
 import de.rki.coronawarnapp.storage.AppDatabase
 import de.rki.coronawarnapp.storage.FileStorageHelper
+import de.rki.coronawarnapp.storage.RiskLevelRepository
 import de.rki.coronawarnapp.util.security.SecurityHelper
 import timber.log.Timber
 
@@ -43,6 +44,8 @@ object DataRetentionHelper {
         AppDatabase.reset(context)
         // Shared Preferences Reset
         SecurityHelper.resetSharedPrefs()
+        // Reset the current risk level stored in LiveData
+        RiskLevelRepository.reset()
         // Export File Reset
         FileStorageHelper.getAllFilesInKeyExportDirectory().forEach { it.delete() }
         Timber.w("CWA LOCAL DATA DELETION COMPLETED.")