Attendance Tracking for Paddling Clubs: What to Record and Why
Attendance is the most useful data a paddling club can collect and the one it's most squeamish about collecting. Both feelings are correct. It answers the questions that matter most — who to select, who's drifting, whether Tuesdays are worth running — and it also feels one step away from a workplace timesheet.
So the question isn't whether to track it. It's what to record, and what you're allowed to conclude from it.
Record three states, not two
This is the single most important design decision, and almost everyone gets it wrong.
The obvious model is a checkbox: present or absent. It's wrong because a checkbox has no way to say "nobody marked this."
Consider a Tuesday where the coach ticked off the eight people in the boat and then got distracted rigging a steering oar. Twelve names were never touched. Under a two-state model, those twelve are now absent. They're in the data as absent. They'll be absent in the end-of-month export, absent in the selection conversation, and absent in the reason someone quietly stops coming.
The third state — unmarked — is what makes attendance data trustworthy:
- There. Someone confirmed this person was in the boat.
- Missed. Someone confirmed this person wasn't.
- Unmarked. Nobody said. This session tells you nothing about this person, and it must never count against them.
Every report you build on top of attendance has to respect that distinction. "Attended 4 of 6" and "attended 4 of 6 marked sessions" are different sentences, and only the second one is honest.
What's worth recording
Keep the fields few. Every extra one is a field the coach skips on a windy dock.
- Date and session. Which practice, not just which day — clubs run two on a Saturday.
- Who was there. The three states above.
- What they'd said they'd do. The RSVP, kept separate from the mark. "Said going, didn't come" and "said can't, didn't come" are completely different pieces of information, and collapsing them into one absence destroys the useful half.
- Squad. So masters attendance and youth attendance don't average into one meaningless number.
That's it. Resist reasons-for-absence as a field. In practice it either goes unfilled or turns into a permanent record of somebody's medical history, and neither is what you wanted.
The RSVP is not the attendance
Worth stating plainly, because a lot of club software treats them as the same thing. An RSVP is a prediction made in advance by the paddler. Attendance is an observation made afterwards by the coach.
You want both, because the gap between them is the interesting bit:
- Consistently says going and comes → the person you build a crew around.
- Consistently says going and doesn't come → a conversation, not a punishment. Something is going on.
- Never RSVPs but always comes → your data is wrong about them, and your headcounts are too.
- Says maybe and comes half the time → completely normal, and the reason "maybe" has to exist as an option.
If you only collect one, collect the RSVP — it's what lets you know how many boats to rig. If you can collect both, the second one is what makes selection defensible.
Using it without it becoming surveillance
Some ground rules that have kept this useful rather than corrosive:
Attendance is for the coaching staff, not the club noticeboard. A public league table of who showed up is a great way to lose the person who's been juggling shift work and coming anyway.
Never rank people by it. Use it as one input into selection, alongside side, test results and technique — not as a score. The moment attendance becomes points, people start optimising for the points.
Explain the third state to your members. If people believe an unmarked session counts as a miss, they'll assume the data is against them, and they'll be right to. Telling them it doesn't is free.
Look at the aggregate before the individual. Attendance data's best use isn't judging paddlers, it's judging sessions. If Thursdays run at 40% for two months, the problem is Thursday.
Export it and keep it. A monthly CSV in the club's own files means the data outlives whatever tool you're using, and outlives the volunteer who set that tool up.
Make it a one-minute job
The reason clubs don't have attendance data isn't that they don't want it. It's that marking twenty names is a five-minute job at the worst possible moment — boat going out, hands wet, someone shouting about a missing paddle.
If marking the boat takes longer than a minute, it won't happen consistently, and inconsistent attendance data is worse than none, because people trust it anyway. That's a hard enough constraint that it's worth designing around on its own.
In PaddleLens, roll call is a swipe per name — right for there, left for missed — with unmarked as the real starting state, and a month exports as a CSV for the club's records. It's part of the free half, along with the practice calendar and the RSVPs that feed it; the club tools are here. The point isn't the tool, though. It's that the three states are in the data model, and the export is yours.
Get that right and attendance stops being a compliance exercise. It becomes the quiet answer to "who should be in this boat" — which is the question you were trying to answer all along.
Roster, squads, practices, roll call, messaging and the boat builder — free for the whole club, with no per-member cost and nothing to cancel.
See the club tools →Rui paddles dragon boat and built PaddleLens. He got interested in attendance data the season his club had to pick a race crew and nobody could say who had actually been showing up.
More from the blog
Training for the 500: The Distance That Lies to You
The 500 feels like a long sprint, but most of its energy is aerobic. What piece lengths to train, how to split the race, and why the middle 250 decides it.
Training for the 250: Sprint Races Aren't Sprint Training
A 250 is one long start and a minute of holding on. Why 400-meter pieces belong in sprint training, and how to build a week that survives race day.