Football prediction game for the Football World Cup 2026 and other competitions. Members predict match outcomes, place bonus bets, and compete on a shared leaderboard.
This guide covers setup and day-to-day operation of the Kickoff module. It is aimed at HumHub administrators running a prediction game for the Football World Cup 2026 (or another competition).
Once the module is enabled, grant the three Kickoff permissions to the user groups that should use it (HumHub Admin → Permissions):
The fastest way to get started:
That single action creates the competition, imports all 48 teams and 104
matches, applies team strength ratings, and adds the default special bets
(tournament winner, 12 group winners). No API key required — all data
comes from the HumHub data service at api.humhub.com.
You can re-click the button at any time to top up missing metadata; it's idempotent and never destroys existing data.
Kickoff supports several adapters; the right one is picked when you create a competition (or auto-selected by the quick setup):
humhub-api) — zero-config feed served from
api.humhub.com. Exclusively for the FWC 2026. Pre-aggregated
and cached at HumHub's end so no token is required on your side. The
underlying data is graciously provided by
football-data.org — many thanks to
them.For anything beyond the one-click FWC 2026 setup: HumHub Admin → Kickoff → New competition.
humhub-api and set external_competition_id in the data source config
field to consume from api.humhub.com; pick football-data to pull
directly with your own token.After saving you land on the competition detail page — that is where every follow-up action happens.
The competition view's More ▾ menu exposes:
Both humhub-api and football-data adapters propagate each match's group
label to the teams, so group-winner special bets work without extra steps.
Competition detail → Special bets. Two types are supported:
The Auto-resolve button tries to resolve every still-open special bet based on the current state (group winners once all group games are finished, tournament winner once the final is decided). Auto-resolve also runs in cron.
Manual Resolve is shown only for special bet types that cannot be auto-resolved — currently there are none, but the hook stays in place for future types.
To help inexperienced participants, Kickoff shows three percentages under
every match that hasn't kicked off yet — e.g. 62% · 22% · 16%. They are
derived from each team's world-ranking points and Elo rating (standard Elo expectancy
formula, with a draw share that shrinks as the strength gap widens). These
are explicitly not betting odds and not labelled as such — they are an
orientation hint and therefore not subject to bookmaker-data license issues.
For the FWC 2026 the quick setup applies ratings automatically. For other competitions:
country_code matches (ISO-2, ISO-3, and 3-letter
international codes are all accepted).kickoff_team.fifa_points and elo_rating) or extend
data/wm2026_ratings.php.Existing values are preserved when you click the action, so manual corrections survive subsequent imports.
Each competition has its own scoring scheme (the "Scoring scheme" tab in the competition editor):
Tips are saved automatically as soon as their value changes (small jQuery debounce). There is no submit button — the deadline is always the kickoff of the match in question. After kickoff the tip is locked.
Special bets have their own deadlines, typically the first kickoff of the respective group or the tournament start.
Per competition you can decide whether other participants' tips are visible before kickoff or only after (default: only after, to prevent copying).
The Show in navigation flag adds the competition as its own entry to HumHub's main top menu. As soon as at least one competition is flagged that way, those specific entries replace the generic "Kickoff" menu item.
Create a test competition (tick Is test competition when creating it). Test competitions are hidden from the default admin list — click "Show test competitions (N)" at the bottom of the index to access them.
The competition view's More ▾ menu picks up an extra action for tests:
Delete (any competition, test or production) lives in the danger zone at the bottom of the Edit page.
Once the competition is live, the module handles most routine work itself:
Admin intervention is usually only needed when something goes wrong (manual result correction, API outage, mid-tournament scoring change). For all of those, Sync results and Recompute points in the More ▾ menu are the tools to reach for.