Skip to content

X times per Y is incorrect in average  #2115

@gruvw

Description

@gruvw

Pre-submission checklist

  • I am submitting a bug report, not a feature request.
  • I have searched for similar issues, but did not find any matches.

Description

TL;DR: The X times per Y system does not guarantee an average corresponding to user expectations due to the sliding window implementation.

If I want to perform a given task let's say two times per week, the current implementation allows for doing it only ~1.1 times per week on average.

Screenshot_2025-03-01-11-21-07-042_org.isoron.uhabits.jpg

On most weeks (12 out of 14) the user performed the task only once. Though they have kept their streak and are increasing their score. This is quite misleading for a user who wanted to perform the task twice per week.

Note: I was a little bit hesitant to choose between a Feature Request tag or a Issue tag as this was probably intentional though I think it can be quite misleading to users that don't expect it.
So the current behavior feels like an issue to me but the solution to it might be a new feature.

Steps to reproduce

(see picture)

System information

N/A

App Version: Android 2.2.1

Potential solutions

  1. Add a "fixed window" check box (keeps user input simple) when selecting the habit frequency to force the completion of the task X times in the Y days fixed window.

  2. Use a running average computation based streaks system where you compute the score based on how close you are to the average in the sliding window.

  3. ? other ideas ?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions