Most productivity apps give you one primitive: the task. A checkbox. Maybe a due date. Maybe a label.
Then life shows up with work that does not fit one shape:
- Finish a finite project — move apartment, launch a site
- Repeat a behavior — exercise, language practice, inbox zero
- Hit ordered checkpoints — visa approval before booking flights
Call the first a project. Call the second a habit. Call the third a milestone path.
When everything is a flat task, you track habits and projects with the same progress bar. That is why "7 of 12 done" feels wrong for "run 3 times this week" — and why a repeating gym task pollutes a project list.
A better model treats them as different goal kinds with different math.
Projects want completion counts
A checklist goal answers: how much of the defined work is done?
Examples:
- Pack non-essentials for a move
- Draft three portfolio case studies
- File taxes
Progress is completed one-time tasks / total one-time tasks. When the denominator hits zero, the project is finished. You archive it and move on.
This is the default mental model most todo apps assume — and it works until the work repeats.
Habits want period quotas
A quota goal answers: how many times did I do the thing in this window?
Examples:
- Exercise 3× per week
- Practice Spanish 5 days per week
- Publish one newsletter per month
Progress is completions in the period / target for the period — not "total tasks ever." A run on Monday does not mean Tuesday's session is less important; it means this week's tally moved.
That is the core of track habits and goals together without lying about what kind of progress you are making. The habit is not a project you "finish." It is a rhythm you maintain.
Milestones want ordered checkpoints
A milestone goal answers: which key steps on the path are done?
Examples:
- Thesis: proposal → research → draft → defense
- Product: prototype → beta → launch
- Immigration: documents → approval → relocation
Tasks can be ordinary work; milestone-flagged tasks are the named checkpoints. Progress reflects how many gates you have passed — useful when order matters more than raw task volume.
Breaking a big goal into phases often produces milestone-shaped structure naturally.
Why labels are a weak substitute
Many apps unify habits and projects with tags: #habit, #deepwork, #health.
Tags describe. They do not compute.
You still see one list. You still choose manually whether progress means "done once" or "done three times this week." Filters help visibility; they do not fix semantics.
Habit tracker vs project planner is not a branding debate. It is a question of whether the tool knows what "on track" means for each outcome.
| Goal kind | Question it answers | Progress shape |
|---|---|---|
| Checklist | How much is done? | X of Y tasks |
| Quota | How often this period? | X of Y per week/month |
| Milestone | Which gates passed? | X of Y milestones |
Routines: habits that travel together
Some habits cluster — morning stretch, journal, review calendar. Doing them as separate unrelated lines scatters context.
Routines group tasks that tend to appear together on a day view (for example, a morning block). Deleting the routine removes grouping; the tasks remain. It is organizational glue, not a fourth goal type.
If you have ever wanted your morning routine visually bundled instead of mixed with random errands, routines are that layer — separate from whether the underlying goal is quota or checklist.
A concrete contrast
Project: "Move apartment" (checklist)
- Give notice
- Book movers
- Change address with bank
Done means the list empties.
Habit: "Stay active" (quota, 3×/week)
- Monday run
- Wednesday yoga
- Saturday walk
Done means you hit the weekly target — not that running is "finished forever."
Path: "Publish novella" (milestone)
- Outline (milestone)
- First draft (milestone)
- Editor feedback (milestone)
You might complete dozens of tasks; progress tracks the named gates.
Lumping all three into one project called "Life" destroys signal.
How Questpad implements the split
Questpad assigns each goal a kind — checklist, quota, or milestone — at creation time. The wizard can propose one based on your brain dump; you can edit before saving.
Each kind drives its own progress UI on the goals list:
- Checklist — bar: tasks done / total
- Quota — period dots or counts: this week / target
- Milestone — segment bar across named checkpoints
Tasks still live in a shared system: backlog, schedule to a day, show on a focus-first queue one at a time. The goal kind changes how "am I winning?" is measured — not how individual tasks behave.
This is personal software for solo use — not a team workspace. There is no calendar sync with Google or Apple; scheduling uses simple day blocks.
Free tier: 15 active tasks, 5 goals, wizard included. Pro ($5/month) raises limits.
Choosing the right kind at the start
Ask one question when you create a goal:
- Will I be glad when this is over? → checklist project
- Do I want to keep doing this regularly? → quota habit
- Are there a few named gates that define progress? → milestone path
Wrong-kind confusion is fixable, but annoying. A gym habit modeled as a checklist never "finishes." A move modeled as a quota never feels complete.
When one app is enough
You do not need separate habit tracker and project planner apps if the tool respects different progress models — and if you are willing to plan goals deliberately instead of infinite capturing.
Start from structure: turn a vague goal into sections and tasks, pick the kind that matches the outcome, then work the daily queue.
Try the wizard without an account if you want to see checklist / quota / milestone proposed on a real goal you care about — not a demo titled "Test project."
Habits and projects were never the same job. Your software should stop pretending they are.