Get started

Bad habits · Ascend

A bad habit tracker where resisting pays and slipping costs

Ascend’s bad habit tracker is a free daily check-in for the things you are trying to stop, like doomscrolling or junk food. Each day you log one word per habit, Resisted or Slipped. Resisting earns points and builds a clean streak; slipping, or not logging at all, costs points.

It works on trust: Ascend can’t see what you did, only what you log. The points are there to make an honest answer every evening feel like it matters.

Free · In beta · Phone and PC · No download needed

The Bad habits page on a phone: 1 of 3 resisted today, 2 still to log, and Late-night screen time with a 9-day resist streakThe Bad habits page on a phone: 1 of 3 resisted today, 2 still to log, and Late-night screen time with a 9-day resist streak

One honest answer a day

The whole feature is a short evening routine. It takes less than a minute once your habits are added.

  1. Add what you want to stop

    Tap New bad habit and pick one of the 10 in the library, or write your own. Start with one or two that matter most.

  2. Log the day

    Tick a habit to mark it Resisted, or press Slipped if it happened. On a phone, swipe right to mark Resisted. A wrong tap can be undone the same day.

  3. See your clean streak

    Each habit shows your current resist streak, your best one and the last seven days, with slips marked, so a pattern is easy to see.

  4. Watch the warning

    After bad days in a row, the habit says how many and what slipping today would cost, so you know the stakes before the evening, not after.

The bad-habit library

Each library bad habit has its own resist value, 1–3 points, shown next to it below and when you add it. A custom bad habit earns 1 point per resisted day.

  • Doomscrolling +2
  • Phone in the first hour after waking +2
  • Procrastination +2
  • Late-night screen time +1
  • Junk food +1
  • Porn +3
  • Gaming too long +2
  • Smoking / vaping +3
  • Sugary drinks +1
  • Staying up late +1

How resisting earns and slipping costs

Resist points add up across all your bad habits; penalties apply only to your oldest ones.

Each day
What happensPoints
Resisted, library bad habitThe habit’s own value.+1–3
Resisted, custom bad habit+1
Daily cap for all resists togetherThe ones you log first count first.6 a day
SlippedLogged the same day.−5
Not logged at allCharged after midnight, counting from the day you added the habit.−3
Bad days in a row
What happensPoints
Each further bad day in a row (slipped or not logged)Rounded to whole points. A resisted day resets the count.×1.5
From Performer rank (2,000 season points)For the 2nd bad day in a row, then the 3rd and later.×2, then ×2.5
  • Only your 2 oldest can cost points

    Penalties apply to the 2 bad habits you added first. Any you add after that earn resist points but never lose any, so adding a new habit to watch is never a risk.

  • Earlier days stay as they were

    Deleting a bad habit only takes back today’s points from it. Points and penalties from earlier days stay, so the record can’t be rewritten.

Being straight about the numbers. Three slips in a row cost −5, −8, −8. Three days left blank cost −3, −5, −5. A blank day costs less than a slip, but it still costs points and still counts as a bad day in a row, so the honest answer is always the better habit, and a resisted day is the only thing that resets the count.

Why a penalty helps

Most trackers only count the good days, so a slip just disappears. In Ascend a slip has a small, known cost, and that cost goes into the same season points as everything else you do. Your habits, workouts and reading can make up for a bad day, but they can’t hide it.

The points are a nudge, not a judgment. If a habit has turned into something you can’t control, such as drinking, drugs or gambling, use the Recovery tracker and reach out to a professional or a helpline; Ascend is not treatment.

The Bad habits page on a computer: two bad habits still to log with Slipped buttons, Doomscrolling resisted today with a 21-day streak, and 2 of 6 resist points earnedThe Bad habits page on a computer: two bad habits still to log with Slipped buttons, Doomscrolling resisted today with a 21-day streak, and 2 of 6 resist points earned
The Bad habits page on a computer, with the demo user Ali’s bad habits.

Bad habits at a glance

Library
10 bad habits, 1–3 points per resisted day
Custom bad habits
1 point per resisted day
Daily cap
6 resist points
Slipped
−5, more for bad days in a row
Not logged
−3, more for bad days in a row
Can lose points
Your 2 oldest bad habits only
Price
Free while in beta
Works on
Any browser on phone or computer

A good fit if

  • You want a daily, honest check-in for a habit you are cutting down.
  • A clean streak and a small cost for slipping keep you going.
  • You also track good habits and want both in one score.

Maybe not if

  • You don’t want a penalty for slipping or for forgetting to log.
  • You are dealing with an addiction that needs real support. Ascend can sit alongside that help, not replace it.

Bad habits: questions people ask

What counts as a slip?

You decide. Before you add a habit, settle what “slipped” means for you (for example, any scrolling after 11 pm) and log it the same way every day.

What if I forget to log a day?

For your 2 oldest bad habits, a day with no log costs 3 points after midnight, more if it keeps happening. Habits you added later never cost points.

Why do only some bad habits lose points?

So the penalties stay focused on what matters most to you. Your first 2 bad habits carry the risk; the rest are for tracking and resist points.

Can I undo a wrong tap?

Yes. Today’s Resisted or Slipped can be undone on the same day. Earlier days can’t be changed.

Is anything I log public?

League tables show your username, avatar and points, not what the points came from. Partners, and other members if your profile is public, see a summary of your stats. The Privacy Policy lists exactly who can see what.

Pick one habit to stop

Add it now, log tonight, and start a clean streak tomorrow.