A growth loop built from scratch, product, revenue, community, analytics
A PWA for a 478-member club, ticketing, surveys, live NPS/CSAT and community, built solo with AI and measured commercially.

In short
As a voluntary board member I built and shipped Sip & Serve TCO, a PWA with ticketing, surveys, live NPS/CSAT and community features, solo, with AI as coding partner, for a 478-member club.
The result: a sold-out event, NPS +66, organic reach +1,186% and a feedback loop the board now plans the next edition on.
The challenge
The club wanted a new flagship event but had no way to sell tickets, hear from members or measure success beyond a headcount.
- No digital channel for ticketing or check-in
- Member feedback anecdotal, never structured
- Volunteer team of four with limited time
- No baseline to judge the next edition against
Tennis Club Odense needed a solution that could:
- Sell tickets and check members in without manual admin
- Capture pre- and post-event feedback inside the same product
- Show live NPS/CSAT the volunteer team could act on
- Grow reach and the team without a budget
From a headcount to a measured growth loop
I built the platform end to end: PWA, auth, MobilePay ticketing, QR check-in, pre/post surveys, live NPS/CSAT, admin dashboard, push notifications, EN/DA. Discovery with volunteers, survey design and iteration followed the same method I use professionally.
Built with Claude as copilot in VS Code: front end and Supabase backend with Resend and GitHub integrations, deployed manually on Netlify. AI also assisted the survey design, analysis and comms. Design decisions, member conversations and trade-offs stayed with the team.
Key value drivers
- Revenue and capacity data in real time
- Member sentiment captured, not guessed
- Next edition briefed on evidence
- Team grown 4 → 15 on the momentum
Tasks solved by the platform
- Ticketing, check-in and waitlist
- Pre/post surveys with live NPS/CSAT
- Community gallery and communications
Challenges solved
- Manual admin
- Anecdotal feedback
- No success baseline
- Limited reach without budget
What changed.
- +66
- NPS, 29 responses
- 65+
- Participants on the day
- 38/38
- App tickets sold out · 12 on waitlist
- 124.6k
- Organic Facebook views (+1,186%)
- ↳Sold out, 38/38 tickets, 12 on the waitlist, 65+ participants.
- ↳NPS +66 (29 responses) · 9.4/10 would recommend.
- ↳Organic reach +1,186%, followers +400%, event team 4 → 15.
- ↳Two pre-event articles and TV2 Fyn coverage on the day.
“The slam took all the lights, and rightly so. So much fun!”
From survey to decision, one loop, closed
Pre- and post-event surveys ran inside the app. What members said, and what the board did with it.
- Insight 1
63% want more matches; 82% call the tennis/social balance 'perfect'.
ActionNext edition: more court time, same social format.
- Insight 2
52% knew about the event more than a month ahead.
ActionLong comms runway and press timeline kept as the club standard.
- Insight 3
12 on the waitlist after 38/38 sold out; 6 more sold at the door.
ActionCapacity and ticket tiers first on the next-edition agenda.
“Klubben var virkelig fint pyntet og fællesskabet var i fokus.”
“The slam took all the lights, and rightly so. So much fun!”
What I’d do differently.
Live analytics change how a volunteer team behaves. A real-time NPS chart did more than any post-event report could.


