diff --git a/src/com/android/customization/picker/clock/ui/viewmodel/ClockCarouselViewModel.kt b/src/com/android/customization/picker/clock/ui/viewmodel/ClockCarouselViewModel.kt
index 47c6d2d..c11c333 100644
--- a/src/com/android/customization/picker/clock/ui/viewmodel/ClockCarouselViewModel.kt
+++ b/src/com/android/customization/picker/clock/ui/viewmodel/ClockCarouselViewModel.kt
@@ -63,7 +63,9 @@
             .flatMapLatest { allClockIds ->
                 interactor.selectedClockId.map { selectedClockId ->
                     val index = allClockIds.indexOf(selectedClockId)
-                    if (index >= 0) {
+                    /** Making sure there is no active [setSelectedClockJob] */
+                    val isSetClockIdJobActive = setSelectedClockJob?.isActive == true
+                    if (index >= 0 && !isSetClockIdJobActive) {
                         index
                     } else {
                         null
@@ -85,10 +87,7 @@
     fun setSelectedClock(clockId: String) {
         setSelectedClockJob?.cancel()
         setSelectedClockJob =
-            viewModelScope.launch(backgroundDispatcher) {
-                delay(SET_SELECTED_CLOCK_DELAY_MILLIS)
-                interactor.setSelectedClock(clockId)
-            }
+            viewModelScope.launch(backgroundDispatcher) { interactor.setSelectedClock(clockId) }
     }
 
     class Factory(
@@ -107,9 +106,5 @@
 
     companion object {
         const val CLOCKS_EVENT_UPDATE_DELAY_MILLIS: Long = 100
-
-        // In the case if the user scroll the clock carousel frequently, we make a delay for
-        // setting the selected clock to avoid too many heavy calls.
-        const val SET_SELECTED_CLOCK_DELAY_MILLIS: Long = 650
     }
 }
diff --git a/tests/src/com/android/customization/picker/clock/ui/viewmodel/ClockCarouselViewModelTest.kt b/tests/src/com/android/customization/picker/clock/ui/viewmodel/ClockCarouselViewModelTest.kt
index 4cda0d5..d3e458f 100644
--- a/tests/src/com/android/customization/picker/clock/ui/viewmodel/ClockCarouselViewModelTest.kt
+++ b/tests/src/com/android/customization/picker/clock/ui/viewmodel/ClockCarouselViewModelTest.kt
@@ -77,7 +77,6 @@
         val observedSelectedIndex = collectLastValue(underTest.selectedIndex)
         advanceTimeBy(ClockCarouselViewModel.CLOCKS_EVENT_UPDATE_DELAY_MILLIS)
         underTest.setSelectedClock(FakeClockPickerRepository.fakeClocks[2].clockId)
-        advanceTimeBy(ClockCarouselViewModel.SET_SELECTED_CLOCK_DELAY_MILLIS)
         assertThat(observedSelectedIndex()).isEqualTo(2)
     }
 
