If you are experiencing this bug with non-daily interval schedules ("Every Few Days", "Every Other Day", etc.) drifting or desynchronizing between your iPhone and Apple Watch, do not delete your medication or reset your devices-you do not need to lose your past logging history or adherence data.
I ran into this exact issue on my iPhone 14 (iOS 26.6.2) paired with an Apple Watch Series 10 (watchOS 26.3). A medication set to "Every 4 Days" started skipping cycles (leaving 7- and 8-day gaps) and firing out of phase because the background schedule cache got stuck.
You can force HealthKit to immediately recalculate the interval timeline without changing any data using a quick no-op duration save:
- Open the Health app on your iPhone.
- Go to Browse > Medications and tap your scheduled medication.
- Scroll down to the Schedule section and tap Edit.
- Scroll down to the bottom of the Edit Schedule screen to Duration and tap Edit.
- On the Edit Duration screen, do not change the Start Date or End Date. Simply tap the blue checkmark (✓) in the top-right corner to save.
- Tap the checkmark again on the Edit Schedule screen to commit.
Why this works: Saving the duration-even without modifying values-fires an internal CoreData update signal (didSaveNotification). This invalidates the stale scheduled notifications cache, recalculates future intervals starting from your original start date, and pushes a fresh sync packet to your Apple Watch over WatchConnectivity.
Ever since doing this, my reminders snapped back to the exact 4-day cadence and have been alerting properly on my wrist.
If anyone wants to see the visual screenshots of the steps or the underlying architecture breakdown of why the sync drifts, I documented the full write-up here:
https://techvigil.com/apple-health-medication-reminders-out-of-sync-fix/
Hope this saves others from wiping their medication history!