Consumer / Side project· Fantasy & predictions

How to Build a Private Sports Prediction App

A construction company owner in Spain built a 7-a-side football prediction app for his friends. It reached about 100 users in 10 days through existing WhatsApp groups. Here's the pattern.

In 2026 a construction company owner in Almería, Spain, built a sports prediction app for his friends. He plays 7-a-side football with them. They had been making predictions in Excel for years. He shipped the app in a few weeks of evenings in Rork. 100 users in 10 days, all from his WhatsApp groups, zero ads. $4/month premium, $50 one-time "partner" tier. The app earns him a small amount of money. More importantly: it exists. Until 2026 it could not have.

This is the pattern.

Why This Is the Best First Side-Project App

Building a custom app for a real business is high-stakes. Building a sports prediction app for your friend group is low-stakes and learns you everything you need to know about Rork, App Store submission, native payments, deep links, push notifications, and live data integration.

By the time the app is shipped, you have done the full real-world cycle. Now you are dangerous.

What to Build

The minimum viable structure:

  1. Matches list. Upcoming games from the data source you care about (the World Cup, your local 7-a-side league, the NFL season). Pulled from a sports data API.
  2. Prediction screen. For each match, the user enters their predicted score. Submit before kickoff.
  3. Live results. When the match ends, the API returns the actual score. A Supabase Edge Function polls hourly and updates everyone's score.
  4. Leaderboard. A simple ranked list of friends in the league. Real-time updates after each match.
  5. Premium tier. Locked behind App Store IAP. Premium unlocks: more leagues, custom scoring rules, statistical breakdowns, the ability to "open" a new league as a partner ($50 one-time).
  6. Invite link. WhatsApp share button. Generates a deep link that opens the app to "join league" screen. Universal Links on iOS, App Links on Android, both handled by Expo Linking.

That is the whole app. Six screens. Two database tables (User, Prediction). One external integration (sports data API). Two native payment products (premium subscription, partner pass).

The Stack

  • Rork for the cross-platform native app (iOS + Android + web from one Expo project).
  • Supabase for users, predictions, and league data.
  • A sports data API (api-football.com is the cheapest for football; the-odds-api.com covers most sports). $10 to $50/month for a hobby tier.
  • App Store In-App Purchases via expo-in-app-purchases (or RevenueCat for cross-platform IAP management, $99/mo above a free tier).
  • Expo Linking for universal deep links so WhatsApp shares open the app.

Total monthly cost for a small friend league: under $50.

The 7-Day Build Plan

  • Day 1: Auth + matches list. Sign in with Apple, sign in with Google, today's matches showing from the sports API.
  • Day 2: Prediction submission. User enters a score, saved to Supabase. Cutoff at kickoff time.
  • Day 3: Scoring. Edge Function polls match results. Updates each user's score based on your rules (exact score = 5 points, correct outcome = 1 point, etc.).
  • Day 4: Leaderboard. Sorted list of friends with their scores. Live updates via Supabase Realtime.
  • Day 5: League invite + WhatsApp share. Generate a short code, deep link, share via native iOS share sheet.
  • Day 6: Premium tier via IAP. Locked features behind a paywall. Test in TestFlight sandbox.
  • Day 7: Polish + ship to TestFlight + invite first 5 friends.

By the end of week one, your friends are using the app on their phones. They will give you feedback. You iterate from there.

What Mickey's Numbers Actually Looked Like

The Spanish operator who pioneered this pattern:

  • Pre-app: predictions in Excel, shared in WhatsApp every weekend.
  • Post-app: 100 users in 10 days. All from his existing friend network.
  • $4/month premium subscription, $50 one-time for friends who want to open their own league.
  • Earnings: small. Roughly $16/month at peak. He does not run it for the money.
  • What he actually built: a tool he wanted to exist. He uses it every weekend with his friends. They forgot Excel even existed.

This is the right frame for a first project. Not "how do I build the next Cal AI?" but "what tool do I wish my friend group had?" Build that. The skills transfer to anything you build next.

Where the App Store Likes This and Where It Doesn't

Two boundaries to know:

  1. Skill-based predictions with no real money are fine. Your friends predicting football scores for bragging rights is fine. Apple approves these regularly.
  2. Real-money payouts trigger gambling policies. If you want to do "winner gets the pot of subscription money paid out," you are in a different category. Country-specific gambling licenses, App Store approvals, accounting. Most hobbyists stop short of this.

Stick to side 1 for your first app.

Where to Start

Open Rork. Tell it: "I want a mobile app where my friends can predict 7-a-side football scores, see a leaderboard, and pay a small premium for extra features." Plan mode will ask you about the scoring rules, the data source, and the friend-invitation flow. By Friday, install it on your phone and invite three friends to try it.

If you build this first, you will have shipped a real iOS + Android app with payments, deep links, and a live data integration before you build anything more serious. That confidence transfers to the business app you build next.

Frequently asked questions

Do I need to be a developer to build a sports prediction app?+
No. With Rork you describe the workflow in plain English (matches, predictions, scoring rules, leaderboard, premium upgrade) and the AI generates a real native iOS + Android app. A working v1 typically takes 3 to 7 days of focused evenings.
How do I handle payments without a payment company partnership?+
Use App Store and Google Play in-app purchases for consumer pricing tiers ($4/mo premium, $50 one-time partner pass). They handle billing, tax, refunds globally. Stripe is an alternative for web users but App Store IAP is required for iOS consumer subscriptions per Apple's rules.
How do friends invite each other to the prediction league?+
Generate a short shareable code or deep link per league. Use Expo's universal links so tapping the link opens the app directly to the join-league screen. A WhatsApp share button is one component in Rork; people forward the link, friends tap, app opens, league joined.
How do I score predictions automatically?+
Connect to a sports data API (api-football.com, sportsmonk, the-odds-api). They return live match results in JSON. A scheduled Supabase Edge Function polls every hour during match days and updates each user's prediction score based on your rules.
Can I run a fantasy league or pool for any sport, not just football?+
Yes. Same pattern works for cricket, basketball, baseball, tennis, esports, even non-sports events (Oscar predictions, election results). The data source changes; the app pattern is identical.
Will Apple approve a sports prediction app with prizes?+
Yes for skill-based predictions among friends with no real-money gambling. If you add real-money payouts, you're entering App Store gambling-policy territory, which requires special approvals and varies by country. Most operators stick to private, friend-group predictions with bragging rights and a small premium tier.

Related guides