Everything in the lab
AtAttendance TrackerLive product

Experiment

Live at at.suvamsahoo.com

Attendance Tracker

Students at my college can be kept out of exams by an attendance number they can't check. I built them their own copy of the record, first for my friends and then for the whole college.

Role
Product, design + engineering, solo
Apparatus
PHP 8 · MySQL · Vanilla JS · Web Push · PWA
Tags
  • Built with Claude Code
  • Live product
  • Consumer
Three screens of the app. Class suggestions when you sign up, the dashboard showing 84.1% with how many classes you can still miss, and the day editor celebrating full attendance.

The problem

Below 75% attendance, you can be barred from the exam. The college shows you the number late, with no record of your own to check it against. Other apps lose students at step one, "type in your timetable".

What happened

  • 201 sign-ups in 3 days after launch. No ad spend.
  • 56% marked a day. I found why the rest didn't and fixed it the same day.
  • 13 classes with timetables pre-loaded, so most students join in one tap.
  • 0.03 s to open the dashboard on a slow connection, down from 1.32 s.
  • ₹0 extra running cost. No paid services.
  • 2 weeks from first build to public launch. Solo, with Claude Code.

The bet

People don't give up on attendance trackers because marking a class is hard. They give up before they start, at the setup.

  1. A student signs upThree fields, then they pick their class.
  2. First in the class?They set up the timetable once, or send me a photo.
  3. It becomes the class templateOnly its creator can edit it.
  4. Classmates join in one tapEach gets their own copy, and a prompt to share.

↺ Only the first student in a class pays the setup cost. The class, not the student, is the unit of growth.

The product

  • MarkEvery period comes pre-filled from the timetable. Most days it's one tap, then Save.
  • KnowYour percentage, and how many more classes you can miss and stay above 75%.
  • PlanPer-subject margins, the weekday you skip most, and a streak worth keeping.
  • Leave"Can I afford three days off?", answered for each subject.
The dashboard: 84.1%, how many more classes you can miss, and “if you miss tomorrow”
Know: one number first, then what you can still miss.
“Did you mean one of these?” class suggestions
Join: classes with a timetable already loaded come first.
The leave planner, filled in from the student's own attendance and timetable
Leave: 84.1% now, 79% after three days off.

After launch

By 5 Oct, 112 of 201 sign-ups had marked a day. I looked at what the other 89 had actually done:

  • 41 · Just arrivedNothing to fix. Sign-ups under 24 hours old now stay out of the activation rate.
  • 26 · Mistyped their classThey ended up in an empty duplicate class. Now they get "Did you mean…?" suggestions.
  • 22 · "0% of 0"The empty dashboard looked broken. Now new users see a single "Mark today" card.

Then came the habit: one reminder at 7 pm, sent only when there’s a class to mark, and a dashboard that opens instantly from the phone’s cache.

Timeline

  1. A private app for 13 friendsFour-digit codes, two hardcoded sections.
  2. A week of fixes from real use"You can still miss N classes", "what if I miss tomorrow".
  3. Public launchAccounts, the class directory, a QR poster on noticeboards.
  4. Reminders and an owner dashboardNightly Web Push, and one screen showing where students get stuck.
  5. 201 sign-ups, first activation fixesClass suggestions and the "Mark today" card.
  6. A leave plannerPublic for anyone, pre-filled from the dashboard.

Key decisions

  • Copy the timetable, don't share itOne student's edit can never change thirty other people's records.
  • "No class" as its own stateCancelled classes don't count for or against you, so every percentage stays right.
  • Load timetables by handAt this scale my time is cheaper than building OCR.
  • A web app, not an app store appNo review queue and no download. From QR code to a working app in under a minute.

What I learned

  • Sign-ups are easy. Activation is the work.
  • Read the raw data before reacting to a metric.
  • At this scale, doing things by hand is a strategy, not a shortcut.

The honest note

201 is sign-ups, not retention. November will show whether this is a product or a launch spike. Some setup is still done by hand, which works for one college but not for five.