Games · Devlog #06 · personal project
World Cup 2026 Pool
Looking back at a no-money office pool
A look back at the system I built for a 2026 World Cup pool: predictions, a leaderboard, groups, badges and stickers, with fixtures imported from the official source. No bets, no money and no odds; just friends and coworkers competing.

Goodbye, spreadsheet
The office pool always dies on the round-2 spreadsheet. World Cup pools tend to end up in a shared spreadsheet nobody trusts and a group chat nobody reads.
For the 2026 World Cup I built a system that automates the fixtures, the scoring and the ranking. The Cup is over; this post looks back at what was built.
No money, just bragging rights
No money bets. No odds. No payments.
That stance was declared from day one. It’s a recreational product for friends, families and coworkers, which is why it can be shared at a company, a school or on social media without the baggage that comes with betting.
How it worked
Predictions
With configurable scoring rules.
Leaderboard
Global and per group.
Groups
Email invites and WhatsApp sharing.
Automatic fixtures
Matches imported from FIFA’s public API.
Badges and stickers
Achievements, profile stickers and avatar upload.
Admin
Entering results and adjusting the rules.
The look had a Brazil identity with glassmorphism, and it was responsive. Accounts had password recovery by email.
Decisions I’d make again
- Nobody types in fixtures by hand. Matches come from the official source, so the pool starts out with the right schedule.
- Invite people where they already are. With WhatsApp invites, the group grows where the conversation already happens, without asking anyone to change habits.
- Something to do between rounds. Badges and stickers give people a reason to come back even when there’s no match.
- A product with a fixed date. A World Cup pool has a set window; the system had to be ready before the tournament, with the 2026 matches already loaded.
Stack & tech sheet
- .NET Framework 4.8
- ASP.NET MVC 5 (Razor)
- Entity Framework 6.4
- SQL Server
- Bootstrap 5
- Forms Authentication + PBKDF2
- Status
- Working system, with database scripts and the 2026 World Cup matches preloaded
- Audience
- Friends, families and coworkers
- Money
- None: no bets, odds or payments
- Passwords
- Stored as PBKDF2 hashes
Want a no-money pool for the next World Cup, or to talk about internal gamification? Write to me.
Write to me