Pool Scoring and Deadlines
2026-05-11
Pool Scoring and Deadlines
Every pool in FanPoolHQ has three configurable knobs that determine when picks lock and how they're scored — the deadline, the scoring window, and the per-pool category configuration. None of these are FanPoolHQ-wide constants; they're all set by the pool creator when the pool is built.
The three knobs
Deadline. A single timestamp configured by the pool creator. Up until this moment, every participant can freely update their picks; the latest saved state is what counts. At the deadline, every pick locks in place and the pool moves to its "scoring" phase. There is no per-league default deadline — each pool sets its own.
Scoring window. A start date and an end date, also configured per pool. Only events that fall inside this window are scored. A regular-season awards pool typically uses opening night through the last day of the regular season; a playoff pool uses puck drop of round one through the awarding of the Cup. The window is independent of the deadline — you can lock picks on October 1 and score the events that happen from October 1 through April 15.
Per-category configuration. Each category inside a pool has its own option type (player or nhl_team) and its own list of eligible options. Player categories pull cumulative goals + assists from the day-by-day stats sync for the picked player across the scoring window. NHL-team categories pull current standings points for the picked team. The category configuration is what makes pools flexible — the same pool format supports "most goals", "Hart Trophy", "division winner", and so on, by changing the option list and (where applicable) the underlying stat.
When picks lock vs. when they score
These two moments are independent.
- Picks lock at the deadline. Until the deadline, you can change your mind freely. After the deadline, your picks are read-only and the pool moves into its scoring phase.
- Picks score continuously as the scoring window plays out. Player picks accumulate goals + assists every time the daily stats sync runs; NHL-team picks track the team's current standings points. The pool standings page updates on the same cadence as the stats sync (typically nightly during the season).
It's common for a pool to lock picks well before its scoring window opens — for example, an end-of-season awards pool with a September deadline and a scoring window covering the full October-to-April regular season. It's also common for them to overlap — for example, a "March top scorer" pool that opens late February with a deadline of March 1 and a scoring window covering all of March.
Pool visibility
Each pool has an isPublic flag, set by the creator. Public pools are visible to anyone who can see the league (including any spectator who hits the league's public page); private pools are visible only to league members signed in to FanPoolHQ. The visibility setting affects who can read the pool's results — it does not change who can participate (participation is always limited to league members regardless of the visibility flag).
Pool status flow
A pool moves through three statuses over its lifetime:
open— picks are being accepted. The deadline hasn't passed. Participants can join, update, or remove their picks freely.locked— the deadline has passed. Picks are read-only. The scoring window is either underway or pending. The pool standings page shows running scores.closed— the scoring window has fully elapsed. Final standings are locked in and the pool is archived.
The transition from open to locked happens automatically at the deadline timestamp. The transition from locked to closed happens when the scoring window's end date passes. There is no manual "close" button on a pool — both transitions are time-driven.
Configurability summary
| Setting | Set by | When | Where | |---------|--------|------|-------| | Pool name | Pool creator | At pool creation | Pools page → Create category pool / playoff pool | | Deadline | Pool creator | At pool creation | Same form, "Deadline" field | | Scoring window start + end | Pool creator | At pool creation | Same form, "Scoring window" fields | | Per-category options | Pool creator | At pool creation | Same form, "Categories" section | | isPublic | Pool creator | At pool creation (changeable until the deadline) | Same form, "Visibility" toggle | | Per-pool point weights (playoff pools) | Pool creator | At pool creation | Same form, "Round weights" section |
No pool setting is a per-league or FanPoolHQ-wide default. Every pool is its own self-contained configuration — which means you can run several pools in parallel with different deadlines, scoring windows, and category structures without them stepping on each other.