Bogey Boys
From manual scorecards to an autonomous golf league.
- Role
- Solo Product Designer & Builder (Product Strategy, UX/UI, Prototyping)
- Duration
- Sep 2025 – Present
- Platform
- Mobile Web (PWA) • iOS Native (In progress)
- Outcome
- 288 scorecards submitted and auto-verified in Fall 2026 with 0 manual intervention (down from ~960 manually verified cards across previous seasons).
Overview
Bogey Boys is a 40-player competitive golf league in Mérida, Mexico. Operating with zero budget and spotty on-course cell coverage, the league previously relied on players texting scorecard photos via WhatsApp, followed by hours of manual data entry in Excel.
I designed and shipped an offline-ready PWA that captures scores hole-by-hole, automates peer verification, and handles live rankings with zero administrative overhead.
1. The Real Problem: Don’t optimize verification, fix capture
Initial attempts to fix the manual Excel workflow focused on automating card verification (using Notion and OCR models to parse handwritten photos). While this cut manual reading time, it was solving the wrong problem.
The real opportunity was shifting from downstream auditing to upstream, error-proof data capture. When scores are structured and validated at the source, verification becomes instant.

2. Designing for Field Realities
Designing for golfers on an active course meant solving for sweaty hands, high glare, interrupted rounds, and network instability:
Collaborative Scoring (Building on existing habits): I initially designed a designated “Scorekeeper” role. Field observation quickly showed that players hated bottlenecking score entry on one person. Borrowing from habits established in other popular golf apps, I removed fixed roles so anyone in the group can log anyone’s score. Result: half of all hole entries were recorded by someone other than the player.

Resilient to Signal Drops: Cell reception often cuts out across parts of the course. The UI caches inputs locally and provides clear, discreet system feedback (pending sync dots) so players know their data is safe. Finalizing a card simply pauses until a stable connection returns, preventing partial submissions.
Frictionless Verification: Golf leagues rely on official handicaps (GHIN). Instead of asking players to self-report and manually audit screenshots, I integrated direct handicap fetching via API with an automated screenshot fallback. First-try verification went from 94% with screenshots to 97% with the API. Players loved the change most: no more taking a screenshot in GHIN, saving it and uploading it to close a card.
3. Behavioral Insights & The Edge Cases
Intentional “Abandonment”: Data showed that ~11% of scorecards triggered an automatic midnight penalty (144 strokes). User interviews revealed this was not an onboarding drop-off or a forgotten flow. Since the tournament only counts players’ top rounds, some golfers deliberately abandoned bad rounds to absorb the penalty. Designing rules around player psychology proved just as critical as designing the UI.
Social Accountability over Auditing: Instead of policing players, the app introduced a real-time feed featuring live leaderboards and round-start group selfies. Social visibility replaced administrative enforcement (groups posted a selfie in 134 of 140 rounds).
4. Reflections & Next Steps
- Rules should govern behavior, not bugs: Early on, abandoning a broken round carried a penalty, inadvertently punishing edge cases and bugs. Separating game policy from error states was an early design lesson.
- Next: Transitioning the PWA into a native iOS app focused on league engagement, adding push alerts when groups tee off and async comments per round.