Streaks

How active-day streaks are counted, what breaks them and how groups use them.

A streak is the number of consecutive calendar days you’ve been active. Streaks are a personal stat, but your current streak shows up next to your name on group leaderboards so everyone can see who’s on a run.

Missing screenshot src/assets/screenshots/streaks-ios.png
Missing screenshot src/assets/screenshots/streaks-android.png
Your current and longest streaks. The flame icon next to your name in any group shows your current streak.

The three streaks Sparta tracks

  • Current streak. The number of days in a row you’ve been active, counting back from your last active day. Shown all over the app.
  • Longest streak. The biggest current streak you’ve ever hit. Once you set a new high, this only goes up. Missing days doesn’t reset it.
  • Inactive streak. Days since your last active day. Only shown to group admins so they can see who’s fallen off. It’s useful for nudging members, not for shaming.

What counts

The streak rules are the same as the leaderboard. Any logged workout, run, sport or check-in on a calendar day keeps your streak alive. Multiple things on the same day don’t extend it. The day either counts or it doesn’t.

Imported workouts from Apple Health or Health Connect count the same as ones you log directly.

Calendar days, not 24-hour windows

Streaks use your local calendar date. Missing midnight breaks the streak.

A few concrete examples:

  • You train Monday at 10 PM and Tuesday at 1 AM. Two active days, streak continues.
  • You train Sunday at 9 PM and don’t train Monday at all. Sunday counted. Monday didn’t. If you train Tuesday, your streak resets to 1.
  • You travel across time zones. Sparta uses the local date your phone reports when you log the activity.

Breaking and rebuilding

Missing a single calendar day resets your current streak to 0. There’s no grace period, no streak freeze and no makeup days. That’s intentional. The whole system is designed to reward showing up, and showing up means showing up.

Your longest streak doesn’t reset. Once you hit 30 days, that record stays even if your current streak goes back to 0 the next day. Rebuild from there.

In groups

Your current streak is visible next to your name on the leaderboard. A long active streak is a social signal: you’re showing up.

If you stop showing up, your inactive streak starts ticking up where the admin can see it. They might check in on you. That’s the friction the app is built on.

For more on how rankings work alongside streaks, see ranking.