Added missing phrases
Fixed broken JS init on XF 2.2
should have been fixed in the latest patch
Users report;
68 Day streak 9 Week streak 0 Month streek
its been like this for some users for a while, suggestions?>
Added an optional alert/push notification reminder sent a configurable number of hours before a user's streak resets ("Don't lose your streak!"). Users can disable it from Account > Alert Preferences.
Moved heatmap month phrases JS initialization from custom template to helper_js_global to avoid compatibility issues
| Counter | Value shown |
|---|---|
| Daily streak | 86 |
| Best streak | 86 |
| Weekly streak | 11 |
| Monthly streak | 1 |
| Calculation | Expected result |
|---|---|
| floor(86 / 7) | 12 weekly streak |
| floor(86 / 30) | 2 monthly streak |
If I have logged in for 86 consecutive days, why do I only have 11 weekly streaks and 1 monthly streak?
| Mode | Behavior |
|---|---|
| Calendar-based | Current behavior: completed calendar weeks/months |
| Duration-based | Weekly/monthly streaks calculated from the current daily streak |
Weekly streak = floor(current_daily_streak / 7)
Monthly streak = floor(current_daily_streak / 30)
View attachment 343399
Login Streak Rewards Are Here!
This update introduces milestone rewards for login streaks, giving members something extra to unlock as they keep coming back. It also adds more flexible streak calculations and improves reward presentation and reliability.
This is a release candidate version. Please take a full backup before installing it on a production site.
New...
added in last updateHi,
We are using your Daily Login Streak add-on on our forum and we have noticed a recurring confusion among users regarding the weekly and monthly streak counters.
I understand that the add-on currently calculates weekly and monthly streaks based on calendar periods. As far as I understand:
However, from a regular user perspective, this is quite confusing.
- Weekly streak is based on completed calendar weeks.
- Monthly streak is based on completed calendar months.
- These values are updated through the related cron jobs.
For example, we currently have a user with the following values:
Counter Value shown Daily streak 86 Best streak 86 Weekly streak 11 Monthly streak 1
Technically, this may be correct according to the current calendar-based logic. But users do not interpret it that way.
When a user sees an 86-day login streak, they naturally expect something like this:
Calculation Expected result floor(86 / 7) 12 weekly streak floor(86 / 30) 2 monthly streak
So from the user's perspective:
This creates support tickets and confusion because users think something is broken.
I think the current calendar-based logic is difficult to explain to normal forum users. Most users understand:
They do not usually think in terms of completed calendar weeks or completed calendar months.
- 7 consecutive days = 1 week
- 30 consecutive days = 1 month
Would it be possible to add an option for this?
For example:
Mode Behavior Calendar-based Current behavior: completed calendar weeks/months Duration-based Weekly/monthly streaks calculated from the current daily streak
The duration-based calculation could simply be:
Code:Weekly streak = floor(current_daily_streak / 7) Monthly streak = floor(current_daily_streak / 30)
This would make the add-on much easier to understand for regular users and would reduce support confusion.
We are not necessarily asking to remove the current calendar-based behavior. An admin option to choose between calendar-based and duration-based calculation would be enough.
Reduced database locking during daily login checks and streak resets on large forums
Avoided updating the visitor entity when another add-on makes it read-only


Hi,
There seems to be an issue with the Daily Login Streak add-on where a user's streak is being reset incorrectly.
The affected user reported that they had been visiting and using the site every day, but September 26 was not recorded in the streak. As shown in the streak calendar, the streak continues through September 25, September 26 is missing, and a new streak starts on September 27.
I will also attach the user's account login history and browser history for comparison. Both indicate that the user accessed Techolay on September 26 as well, so the missing day does not appear to be caused by the user simply not visiting the site.
Could you please check how the add-on determines whether a day qualifies for the streak, especially:
I’m attaching:
- which login/activity event is used,
- whether last_activity or another timestamp is involved,
- timezone/date conversion,
- and whether cron or another scheduled process could cause a day to be skipped.
It looks like the add-on failed to register activity for September 26 even though the user was present on the site that day.
- the Daily Login Streak calendar,
- the user's account login history,
- and the user's browser history.
View attachment 345652
View attachment 345651
View attachment 346141
This major update makes streak tracking more flexible and reliable with Streak Freezes, user-aware login days and grace periods, and rebuilt milestone reward processing. It also introduces detailed retention analytics for understanding streak activity, member retention, and reward delivery.
Streak Freezes, Local Time Zones & Retention Analytics!
This is a release...
- Added an optional animation for the current login streak counter and milestones, enabled by default.
- Added message streak label privacy controls and an option to control whether members may change them.
Added in last updateAny way to make the user streak label in messages optional by the user? I have some that like to show it and others that really don't.
We use essential cookies to make this site work, and optional cookies to enhance your experience.