Skip to main content

Streak & Attendance System

Reward consistent engagement with streak bonuses and milestone rewards.

How Streaks Work

  1. Users check in daily with /daily
  2. Consecutive days build their streak counter
  3. Streak multipliers increase rewards
  4. Milestone bonuses unlock at specific days

Streak Multipliers

Higher streaks mean higher rewards on all activities:

Streak DaysMultiplierBonus
1-2 days1.0xBase reward
3+ days1.1x10% bonus
7+ days1.25x25% bonus
14+ days1.5x50% bonus
30+ days2.0x100% bonus

Calculation Example

Base daily reward: 25 LTZ

StreakCalculationTotal
Day 125 × 1.025 LTZ
Day 325 × 1.127.5 LTZ
Day 725 × 1.2531.25 LTZ
Day 1425 × 1.537.5 LTZ
Day 3025 × 2.050 LTZ

Milestone Bonuses

One-time bonuses for hitting streak milestones:

MilestoneBonus
7 days50 LTZ
30 days200 LTZ
100 days1,000 LTZ
365 days5,000 LTZ

Users claim milestones via /streak.


Grace Period

The grace period allows users to miss time without losing their streak.

Default: 24 Hours

Users have 24 hours from their last check-in before their streak resets.

Configure Grace Period

/config streaks grace-period:8     # 8 hours (stricter)
/config streaks grace-period:48 # 48 hours (more forgiving)

Range: 1-72 hours

Strategy Guide

Grace PeriodBest For
8 hoursActive communities, frequent engagement
24 hours (default)Standard daily engagement
48 hoursCasual communities, weekend forgiveness
72 hoursVery casual, maximum forgiveness

User Commands

View Streak Status

/streak

Shows:

  • Current streak days
  • Longest streak ever
  • Current multiplier
  • Next milestone
  • Available milestone claims

Claim Milestone

/streak claim milestone:7

Claims the 7-day milestone bonus (if eligible).


How Streak is Tracked

Daily Check-in

When a user runs /daily:

  1. Check if within grace period from last check-in
  2. If yes: Increment streak counter
  3. If no: Reset streak to 1
  4. Record check-in timestamp
  5. Apply multiplier to reward

Streak Persistence

Streaks are stored in the discord_user_streaks table:

  • current_streak - Current consecutive days
  • longest_streak - All-time record
  • last_checkin - Timestamp of last activity

Configuration in Partner Portal

Integrations → Discord → Streak Settings

Available Settings

  • Enable/disable streaks
  • Grace period (hours)
  • Streak multipliers (customize thresholds)
  • Milestone bonuses (customize amounts)

Best Practices

Encourage Daily Engagement

  1. Reasonable base rewards: Don't make day 1 too low
  2. Meaningful multipliers: 2x at day 30 is significant
  3. Achievable milestones: 7-day milestone should be reachable

Prevent Burnout

  1. Forgiving grace period: 24-48 hours recommended
  2. Weekend consideration: 48+ hours helps weekend breaks
  3. Communicate clearly: Users should know the rules

Combine with Other Features

  1. Role rewards: VIP members get streak bonuses
  2. Announcements: Celebrate milestone achievements
  3. Leaderboards: Show streak rankings

Troubleshooting

"My streak reset unexpectedly"

  1. Grace period expired: Check when last check-in was
  2. Different timezone: Resets at midnight UTC
  3. Test mode was on: Test activities don't count

"Multiplier isn't applying"

  1. Check current streak: /streak
  2. Verify multiplier threshold: Must hit exact day count
  3. Confirm streaks are enabled: Check Partner Portal

"Milestone already claimed"

Each milestone can only be claimed once. Check /streak for available milestones.