diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/storage/entity/ContactDiaryLocationEntity.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/storage/entity/ContactDiaryLocationEntity.kt
index c7e21989fd781d408136627899c6b122adea96bc..31529a2382e582f02eba099eb398e189fccea157 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/storage/entity/ContactDiaryLocationEntity.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/storage/entity/ContactDiaryLocationEntity.kt
@@ -5,6 +5,7 @@ import androidx.room.ColumnInfo
 import androidx.room.Entity
 import androidx.room.PrimaryKey
 import de.rki.coronawarnapp.contactdiary.model.ContactDiaryLocation
+import de.rki.coronawarnapp.util.trimToLength
 import kotlinx.parcelize.Parcelize
 
 @Parcelize
@@ -19,10 +20,13 @@ data class ContactDiaryLocationEntity(
         get() = locationId
 }
 
+private const val MAX_CHARACTERS = 250
+private fun String.trimMaxCharacters(): String = this.trimToLength(MAX_CHARACTERS)
+
 fun ContactDiaryLocation.toContactDiaryLocationEntity(): ContactDiaryLocationEntity =
     ContactDiaryLocationEntity(
         locationId = this.locationId,
-        locationName = this.locationName,
-        phoneNumber = this.phoneNumber,
-        emailAddress = this.emailAddress
+        locationName = this.locationName.trimMaxCharacters(),
+        phoneNumber = this.phoneNumber?.trimMaxCharacters(),
+        emailAddress = this.emailAddress?.trimMaxCharacters()
     )
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/storage/entity/ContactDiaryPersonEntity.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/storage/entity/ContactDiaryPersonEntity.kt
index f9a10824c76675487d7466cfb996a0a3131b517b..df4c008029586a80d117d193c66860de31cc737e 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/storage/entity/ContactDiaryPersonEntity.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/storage/entity/ContactDiaryPersonEntity.kt
@@ -5,6 +5,7 @@ import androidx.room.ColumnInfo
 import androidx.room.Entity
 import androidx.room.PrimaryKey
 import de.rki.coronawarnapp.contactdiary.model.ContactDiaryPerson
+import de.rki.coronawarnapp.util.trimToLength
 import kotlinx.parcelize.Parcelize
 
 @Parcelize
@@ -19,10 +20,13 @@ data class ContactDiaryPersonEntity(
         get() = personId
 }
 
+private const val MAX_CHARACTERS = 250
+private fun String.trimMaxCharacters(): String = this.trimToLength(MAX_CHARACTERS)
+
 fun ContactDiaryPerson.toContactDiaryPersonEntity(): ContactDiaryPersonEntity =
     ContactDiaryPersonEntity(
         personId = this.personId,
-        fullName = this.fullName,
-        phoneNumber = this.phoneNumber,
-        emailAddress = this.emailAddress
+        fullName = this.fullName.trimMaxCharacters(),
+        phoneNumber = this.phoneNumber?.trimMaxCharacters(),
+        emailAddress = this.emailAddress?.trimMaxCharacters()
     )
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/ui/location/ContactDiaryAddLocationFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/ui/location/ContactDiaryAddLocationFragment.kt
index b7540115e47f5e7109b60d9a9369739b37112298..8e35cbf814b1e79ac44fac7171e58a29893f2f2d 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/ui/location/ContactDiaryAddLocationFragment.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/ui/location/ContactDiaryAddLocationFragment.kt
@@ -52,8 +52,8 @@ class ContactDiaryAddLocationFragment : Fragment(R.layout.contact_diary_add_loca
                     it.hideKeyboard()
                     viewModel.updateLocation(
                         location,
-                        phoneNumber = binding.locationPhoneInput.text.toString().trim(),
-                        emailAddress = binding.locationEmailInput.text.toString().trim()
+                        phoneNumber = binding.locationPhoneInput.text.toString(),
+                        emailAddress = binding.locationEmailInput.text.toString()
                     )
                 }
             }
@@ -64,8 +64,8 @@ class ContactDiaryAddLocationFragment : Fragment(R.layout.contact_diary_add_loca
                 locationSaveButton.setOnClickListener {
                     it.hideKeyboard()
                     viewModel.addLocation(
-                        phoneNumber = binding.locationPhoneInput.text.toString().trim(),
-                        emailAddress = binding.locationEmailInput.text.toString().trim()
+                        phoneNumber = binding.locationPhoneInput.text.toString(),
+                        emailAddress = binding.locationEmailInput.text.toString()
                     )
                 }
             }
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/ui/location/ContactDiaryAddLocationViewModel.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/ui/location/ContactDiaryAddLocationViewModel.kt
index 3f0b7c7ab96dfecadf57e861e7a475b3ad9f09d9..ca648415609b7a88a35d40c3b53ad836e4a0a5b3 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/ui/location/ContactDiaryAddLocationViewModel.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/ui/location/ContactDiaryAddLocationViewModel.kt
@@ -39,7 +39,7 @@ class ContactDiaryAddLocationViewModel @AssistedInject constructor(
         .asLiveData()
 
     fun locationChanged(value: String) {
-        locationName.value = value.trim()
+        locationName.value = value
     }
 
     fun addLocation(phoneNumber: String, emailAddress: String) = launch(coroutineExceptionHandler) {
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/ui/person/ContactDiaryAddPersonFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/ui/person/ContactDiaryAddPersonFragment.kt
index ae8716f9fd970d59bf157a4dce9b2813f602e256..e54cede4df8d31fdc7e82a5d309f34f7b4803c32 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/ui/person/ContactDiaryAddPersonFragment.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/ui/person/ContactDiaryAddPersonFragment.kt
@@ -54,8 +54,8 @@ class ContactDiaryAddPersonFragment :
                     it.hideKeyboard()
                     viewModel.updatePerson(
                         person,
-                        phoneNumber = binding.personPhoneNumberInput.text.toString().trim(),
-                        emailAddress = binding.personEmailInput.text.toString().trim()
+                        phoneNumber = binding.personPhoneNumberInput.text.toString(),
+                        emailAddress = binding.personEmailInput.text.toString()
                     )
                 }
             }
@@ -65,8 +65,8 @@ class ContactDiaryAddPersonFragment :
             binding.personSaveButton.setOnClickListener {
                 it.hideKeyboard()
                 viewModel.addPerson(
-                    phoneNumber = binding.personPhoneNumberInput.text.toString().trim(),
-                    emailAddress = binding.personEmailInput.text.toString().trim()
+                    phoneNumber = binding.personPhoneNumberInput.text.toString(),
+                    emailAddress = binding.personEmailInput.text.toString()
                 )
             }
         }
diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/ui/person/ContactDiaryAddPersonViewModel.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/ui/person/ContactDiaryAddPersonViewModel.kt
index f00889cfb4be8cc61242db89f5a8bc90f1fb271a..34eb68336c02d2300dd75fda71a27ce5310af72d 100644
--- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/ui/person/ContactDiaryAddPersonViewModel.kt
+++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/contactdiary/ui/person/ContactDiaryAddPersonViewModel.kt
@@ -38,7 +38,7 @@ class ContactDiaryAddPersonViewModel @AssistedInject constructor(
         .asLiveData()
 
     fun nameChanged(value: String) {
-        name.value = value.trim()
+        name.value = value
     }
 
     fun addPerson(phoneNumber: String, emailAddress: String) = launch(coroutineExceptionHandler) {
diff --git a/Corona-Warn-App/src/main/res/layout/contact_diary_add_location_fragment.xml b/Corona-Warn-App/src/main/res/layout/contact_diary_add_location_fragment.xml
index 1e1ec8dbe6c01241da337b636491fd0a4209fc6a..b2b7e568adcf48b11c6cf027b5eeb4d1e2966ca6 100644
--- a/Corona-Warn-App/src/main/res/layout/contact_diary_add_location_fragment.xml
+++ b/Corona-Warn-App/src/main/res/layout/contact_diary_add_location_fragment.xml
@@ -63,6 +63,7 @@
                 android:id="@+id/location_name_input_edit"
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"
+                android:maxLength="250"
                 android:imeOptions="actionNext"
                 android:inputType="textCapWords" />
 
@@ -85,6 +86,7 @@
                 android:id="@+id/location_phone_input"
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"
+                android:maxLength="250"
                 android:imeOptions="actionNext"
                 android:inputType="phone" />
 
@@ -107,6 +109,7 @@
                 android:id="@+id/location_email_input"
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"
+                android:maxLength="250"
                 android:imeOptions="actionDone"
                 android:inputType="textEmailAddress" />
 
diff --git a/Corona-Warn-App/src/main/res/layout/contact_diary_add_person_fragment.xml b/Corona-Warn-App/src/main/res/layout/contact_diary_add_person_fragment.xml
index 2163a98fb554e92ad433c7b14c37fcca9376e0bd..b77f760528b0e1d2d540246c7e0d9de019734410 100644
--- a/Corona-Warn-App/src/main/res/layout/contact_diary_add_person_fragment.xml
+++ b/Corona-Warn-App/src/main/res/layout/contact_diary_add_person_fragment.xml
@@ -62,6 +62,7 @@
                 android:id="@+id/person_name_input"
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"
+                android:maxLength="250"
                 android:imeOptions="actionNext"
                 android:inputType="textCapWords" />
 
@@ -84,6 +85,7 @@
                 android:id="@+id/person_phone_number_input"
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"
+                android:maxLength="250"
                 android:imeOptions="actionNext"
                 android:inputType="phone" />
 
@@ -107,6 +109,7 @@
                 android:id="@+id/person_email_input"
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"
+                android:maxLength="250"
                 android:imeOptions="actionDone"
                 android:inputType="textEmailAddress" />
 
diff --git a/Corona-Warn-App/src/main/res/values/styles.xml b/Corona-Warn-App/src/main/res/values/styles.xml
index 246bcd8c0ff714441dc65d8b46af7f69909a1f5e..d1fc93e477682fd469efb0b74369d1b656953e38 100644
--- a/Corona-Warn-App/src/main/res/values/styles.xml
+++ b/Corona-Warn-App/src/main/res/values/styles.xml
@@ -477,8 +477,6 @@
         <item name="boxCornerRadiusTopStart">@dimen/spacing_mega_tiny</item>
         <item name="boxStrokeWidth">0dp</item>
         <item name="boxStrokeWidthFocused">0dp</item>
-        <item name="counterTextAppearance">@color/colorTransparent</item>
-        <item name="android:maxLength">5</item>
     </style>
 
     <style name="DefaultNumberPickerTheme" parent="AppTheme">
diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/ui/durationpicker/DurationExtensionKtTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/ui/durationpicker/DurationExtensionKtTest.kt
index 4bfa961ca21dcfff47bb170e56e8c2441ee99680..84d647ea27cf50a0499fb23ca5d15a87d889d365 100644
--- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/ui/durationpicker/DurationExtensionKtTest.kt
+++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/contactdiary/ui/durationpicker/DurationExtensionKtTest.kt
@@ -54,4 +54,4 @@ internal class DurationExtensionKtTest {
         val suffix: String?,
         val expectedReadableDuration: String
     )
-}
\ No newline at end of file
+}