diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/util/CWADateTimeFormatPatternFactory.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/util/CWADateTimeFormatPatternFactory.kt
new file mode 100644
index 0000000000000000000000000000000000000000..ae56622db3edfc2d6e6f42f623bd35029b806cab
--- /dev/null
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/util/CWADateTimeFormatPatternFactory.kt
@@ -0,0 +1,18 @@
+package de.rki.coronawarnapp.contactdiary.util
+
+import org.joda.time.format.DateTimeFormat
+import java.util.Locale
+
+object CWADateTimeFormatPatternFactory {
+
+    fun Locale.shortDatePattern() = when {
+        this == Locale.GERMANY -> "dd.MM.yy"
+        this == Locale.UK -> "dd/MM/yyyy"
+        this == Locale.US -> "M/d/yy"
+        this == Locale("bg", "BG") -> "d.MM.yy 'г'."
+        this == Locale("ro", "RO") -> "dd.MM.yyyy"
+        this == Locale("pl", "PL") -> "dd.MM.yyyy"
+        this == Locale("tr", "TR") -> "d.MM.yyyy"
+        else -> DateTimeFormat.patternForStyle("S-", this)
+    }
+}
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/util/ContactDiaryExtensions.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/util/ContactDiaryExtensions.kt
index 6348145c6833c9a85aa064e517e8a154fb2e2f77..9429701e6c193d8a8361c72955957249e140dc84 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/util/ContactDiaryExtensions.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/util/ContactDiaryExtensions.kt
@@ -9,6 +9,7 @@ import androidx.core.view.AccessibilityDelegateCompat
 import androidx.core.view.ViewCompat
 import androidx.core.view.accessibility.AccessibilityNodeInfoCompat
 import androidx.viewpager2.widget.ViewPager2
+import de.rki.coronawarnapp.contactdiary.util.CWADateTimeFormatPatternFactory.shortDatePattern
 import org.joda.time.LocalDate
 import org.joda.time.format.DateTimeFormat
 import java.util.Locale
@@ -31,12 +32,7 @@ fun Context.getLocale(): Locale {
     }
 }
 
-fun LocalDate.toFormattedDay(locale: Locale): String {
-    // Use two different methods to get the final date format (Weekday, Shortdate)
-    // because the custom pattern of toString() does not localize characters like "/" or "."
-    return "${toString("EEEE", locale)}, " +
-        DateTimeFormat.shortDate().withLocale(locale).print(this)
-}
+fun LocalDate.toFormattedDay(locale: Locale): String = toString("EEEE, ${locale.shortDatePattern()}", locale)
 
 fun LocalDate.toFormattedDayForAccessibility(locale: Locale): String {
     // Use two different methods to get the final date format (Weekday, Longdate)
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/util/CWADateTimeFormatPatternFactoryTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/util/CWADateTimeFormatPatternFactoryTest.kt
new file mode 100644
index 0000000000000000000000000000000000000000..326895d778c395a91919603b72696b986ba2fdf0
--- /dev/null
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/util/CWADateTimeFormatPatternFactoryTest.kt
@@ -0,0 +1,44 @@
+package de.rki.coronawarnapp.contactdiary.util
+
+import de.rki.coronawarnapp.contactdiary.util.CWADateTimeFormatPatternFactory.shortDatePattern
+import io.kotest.matchers.shouldBe
+import org.junit.Test
+import java.util.Locale
+
+class CWADateTimeFormatPatternFactoryTest {
+
+    @Test
+    fun `pattern for german date`() {
+        Locale.GERMANY.shortDatePattern() shouldBe "dd.MM.yy"
+    }
+
+    @Test
+    fun `pattern for bulgarian date`() {
+        Locale("bg", "BG").shortDatePattern() shouldBe "d.MM.yy 'г'."
+    }
+
+    @Test
+    fun `pattern for gb date`() {
+        Locale.UK.shortDatePattern() shouldBe "dd/MM/yyyy"
+    }
+
+    @Test
+    fun `pattern for us date`() {
+        Locale.US.shortDatePattern() shouldBe "M/d/yy"
+    }
+
+    @Test
+    fun `pattern for romanian date`() {
+        Locale("ro", "RO").shortDatePattern() shouldBe "dd.MM.yyyy"
+    }
+
+    @Test
+    fun `pattern for polish date`() {
+        Locale("pl", "PL").shortDatePattern() shouldBe "dd.MM.yyyy"
+    }
+
+    @Test
+    fun `pattern for turkish date`() {
+        Locale("tr", "TR").shortDatePattern() shouldBe "d.MM.yyyy"
+    }
+}
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/util/ContactDiaryDateFormatterExtensionTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/util/ContactDiaryDateFormatterExtensionTest.kt
index 18a4cd7d5ca8dcde944edeb3c4287f7613078cf7..969ec9009d0cb0799653ba6428e2fafbc826f4a2 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/util/ContactDiaryDateFormatterExtensionTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/util/ContactDiaryDateFormatterExtensionTest.kt
@@ -1,5 +1,6 @@
 package de.rki.coronawarnapp.contactdiary.util
 
+import io.kotest.matchers.collections.shouldBeIn
 import io.kotest.matchers.shouldBe
 import org.joda.time.LocalDate
 import org.junit.jupiter.api.Test
@@ -11,7 +12,7 @@ class ContactDiaryDateFormatterExtensionTest {
     fun `format bulgarian date`() {
         LocalDate("2021-01-01").toFormattedDay(
             Locale("bg", "BG")
-        ) shouldBe "петък, 1.01.21 г."
+        ) shouldBeIn arrayOf("петък, 1.01.21 г.", "Петък, 1.01.21 г.")
     }
 
     @Test
@@ -40,7 +41,7 @@ class ContactDiaryDateFormatterExtensionTest {
     fun `format romanian date`() {
         LocalDate("2021-01-05").toFormattedDay(
             Locale("ro", "RO")
-        ) shouldBe "marți, 05.01.2021"
+        ) shouldBeIn arrayOf("marţi, 05.01.2021", "marți, 05.01.2021")
     }
 
     @Test