Configure the modal once ("Friday at Champs"), tap ๐พ Save current, and the next time pick from the dropdown + Apply. Saved settings include the round queue, timers, break style, team config, and mode (Voting / Manual / Emcee).
When you're logged in, templates sync to your venue so the same recipe shows up on iPad and laptop. Guests (or pre-login saves) keep templates per-device until you log in.
Manual Queue: you build the rounds yourself โ pick a category, difficulty, question count, and timer for each. Drag to reorder. Best when you want a planned arc (warm-up โ harder โ finale) or themed rounds in a specific order.
Player Voting: skip the queue โ players vote on the next category from 4 random options each round. Configure how many rounds total + per-round timer below. Categories already played in the night are skipped from future voting slates. Best for crowds that like the surprise.
To run a host-authored round (you read questions aloud and judge each answer), use the Emcee Night card on the home screen โ that's its own flow, separate from Game Night, so emcee rounds and curated rounds don't mix in one night.
A Break swaps the screen to a dedicated countdown UI โ big timer, "Up next: [category]", running leaderboard, and TV ad rotation. Best for actual pauses where patrons hit the bar or restroom.
Alternating breaks let you set two durations and switch every round (e.g. 8 min long break after rounds 1, 3, 5โฆ and 4 min short break after 2, 4, 6โฆ). Useful for league nights where one break is "food + restroom" and the next is just "quick refresh."
Mutually exclusive with Auto-Advance below. Pick one. Setting Break to None turns the section off and uses Auto-Advance instead (or, if Auto-Advance is also Off, the host has to tap Next manually between rounds).
Stays on the round-end scoreboard with a countdown, then starts the next round โ keeps momentum without a dedicated break screen. Best for tight nights where you want continuous flow.
Mutually exclusive with Break above. If you set both, Break wins. Set Auto-Advance to Off if you want manual control (host taps Next between rounds) or if you want Break to be the only between-rounds option.
Affects pacing inside a round only โ the gap from one question's reveal to the next question. The between-rounds gap is controlled separately by Break / Auto-Advance above.
Manual = the round won't advance until you tap Next. Use for emcee-led play where you want to read each answer aloud or chat. Numbered values = set-and-forget; the server auto-advances at the elapsed time. 8s is the sweet spot for fast play; 20s+ for crowds who like discussion between questions.
Players see a team chip picker after joining; they pick which team to play on. Per-team scores aggregate from each player's individual answers, and the night-end screen + recap email lead with the team leaderboard alongside individual standings.
Mid-game switching is off by default โ keeps casual nights from being gamed by patrons hopping to the winning team mid-round. With it on, the team picker stays available between rounds; switching is confirmed with a "your previous points stay with your old team" prompt.
Set 2-8 teams with a name + color picker. Teams that nobody picks still appear on the leaderboard with 0 points so the bracket structure is visible.
A soft time cap. After the timer expires, the night ends at the next round boundary โ the current round always finishes, so you never cut a question off mid-flight.
Most useful with Player Voting + Unlimited rounds: the night plays as many voted rounds as fit in the window, then ends cleanly. Less useful with a fixed Manual Queue (the queue's length already bounds the night).
Set to No limit if you want the night to run until the queue ends (Manual) or until you manually end it (Voting Unlimited).
This is where password resets and important account notices get sent. Verify by clicking the link in the verification email โ unverified addresses still log you in, but won't receive notifications.
Change this here if you switch from a personal inbox to a shared venue address. The new address has to be re-verified before anything starts arriving.
Each address gets its own verify link, separate from your primary. Once verified, the address receives the same daily emails and post-night recaps as the primary โ no extra setup.
Useful for handing off operations to a manager or co-owner without sharing your login. Remove an address any time; recipients stop getting emails immediately.
One email per morning per mode you opted into. Sends to every verified address (primary + additional). Skips days with no activity entirely โ no empty "0 players" emails.
Open Play covers continuous OP scoring; Game Night covers final standings from completed nights. You can turn on either or both. Defaults off so a new venue isn't surprised by an inbox of emails.
Run this 5-10 minutes before doors open. It probes the things that actually break a live night: database health, your bank quota, email deliverability, the join URL responding correctly.
Each check returns โ or โ. Any โ shows what failed and how to fix it โ investigate before opening. No fail = you're cleared to go.
/tv-op.html screen. Default OFF = each patron answers at their own pace.Off (async, default): each patron has their own question and timer. Good for crowds that drift in and out โ patrons can join any time and start their own cycle.
On (sync): the whole room sees one shared question with one shared countdown, like a slow-paced trivia table game. The question + timer also render on your TV-OP screen so the room can play along together.
Takes effect on the next OP open. If OP is already running, the in-progress room converts automatically โ no need to close and reopen.
/tv-op.html renders. Use Landscape for a normal horizontal TV; switch to Portrait if you mounted the TV vertically.Match this to how your physical TV is mounted. Landscape (default) is a normal horizontal TV; Portrait reflows the QR code, leaderboard, and ads into stacked rows instead of side-by-side for a vertical mount.
Only affects /tv-op.html (the Open Play TV). The regular game-night TV at /tv.html is always landscape.
/tv.html shows between game nights. The QR code is always visible.Controls what fills the TV between game nights (when no night is running). The join QR code is always visible regardless of this setting.
This month's leaderboard keeps the screen useful between events โ patrons see who's leading the running tally. Last night's final standings runs an after-action victory lap the morning after a night. QR only minimizes distraction in venues that don't want a leaderboard visible.
Add one or more weekly windows (e.g., Mon-Thu 4pm-10pm). At each window's start the server opens OP automatically โ no host login required. When the window closes, OP stops the same way.
Set your timezone first so the windows fire at the right local time. You can still start OP manually outside scheduled hours; the schedule only controls automatic open/close.
When on, patrons must be physically near the bar to join Open Play โ their phone sends GPS coordinates on join, and the server rejects anyone outside the radius you set. Stops random internet players from scoring on your leaderboard.
Important: capture the center coordinate while you're physically inside the bar. Phone GPS indoors is imprecise (~100m on iOS), so seeding from home will mis-locate the fence by hundreds of meters. Doesn't affect Game Night joins โ only OP.
Two QR codes โ one for Game Night joins, one for Open Play (with the OP flag baked in). Download the PNG and use it for table tents, A-frames, or posters at the bar.
Your room code is permanent, so these QRs stay valid forever unless an admin renames the room. If that happens you'll see a yellow "QR refresh needed" banner above โ reprint when that appears.
Pro plan only. Upload your bar's logo (PNG, JPG, or WebP โ transparent backgrounds work best). It replaces the "Trivia Fun" wordmark in the corner of the TV display and on the player join screen, so the night feels branded for your venue.
Roughly square images (around 512ร512) crop the cleanest; very wide or tall logos get letterboxed. Replace any time โ the new logo takes effect on the next page load.
Defaults that apply to every new Game Night you open. Each setting can still be overridden inside the night-setup wizard for a one-off variation; what's here is just the starting point.
Changes save the moment you flip a toggle or pick a chip โ there's no separate "Save" button. They apply to the next night you open; nights already running keep their original settings.
Pro plan only. Tracks patrons by display name across every Game Night at your venue and surfaces who shows up the most. Use it to recognize loyal players, run loyalty promotions, or compare turnout week-over-week.
Recognition is by name only โ encourage patrons to use a consistent name (or to create an account) so they're tracked accurately. Different spellings count as different people.
Premium plan only. Upload a JSON file of your own questions to use as a custom bank. The format matches the export schema โ download the template for a working example you can edit.
Imported banks are scoped to your venue, so only your Game Nights and Open Play can pull from them. Great for venue-specific trivia (local history, themed nights, in-jokes about regulars). Max 500 questions per import; run multiple imports for larger banks.
Premium plan only. Group multiple venues you own under one organization for a shared cross-venue leaderboard and combined reporting. Most useful for chains, franchises, or pop-up tour ops running multiple bars.
Create the org from any venue you own, then add other venues to it. Each venue keeps its own room code and per-venue stats โ the org adds an aggregate view on top.
Share your referral link with another venue owner. When they sign up using your code and stay on a paid plan for one month, you both get one month of plan credit applied to your next billing cycle.
Stack referrals across multiple venues for compounding credits. Available on every plan, including Starter โ no upgrade required to refer someone.
Each home card opens a different flow. Pick the one that matches what you actually need.
One tap โ instant lobby. Picks a random category with at least 10 questions, sets sensible defaults (10 questions, 15s timer, 20s auto-advance, 8s reveal), and opens the lobby. Use this when you don't want to configure anything.
Structured multi-round event with a live host. Configure the round queue (or use voting / emcee rounds), pick timers + breaks, optionally enable team mode, save the recipe as a template. Best for scheduled weekly trivia.
Single round with three bot players for testing on localhost. Honors all the same timer settings but no queue, no night, just one round. No data is logged to insights or recap emails.
Self-serve mode that runs on autopilot. Players join anytime, no host required. Good for slower afternoon crowds or background bar entertainment. Two flavors: async (default โ each patron has their own question and timer) or sync (whole room sees one shared question on /tv-op.html, like a slow table game). Optionally configure rounds with breaks. Toggle and schedule live in the Venue panel โ Open Play tab.
Every game involves these three screens. Knowing which is which makes the rest of this doc easier to follow.
The big screen at the bar. Two URLs depending on what's running: /tv.html for Game Night (QR + question + timer + category, reveal, leaderboards, ad rotation, break countdowns) and /tv-op.html for Open Play (QR + active-player count + leaderboard, plus the shared question overlay when OP sync mode is on). Everyone in the room looks at this.
Your (the bartender's) iPad or laptop โ this page. Shows the same question + timer as the TV but with control buttons (Pause / Next / Skip / Extend / End Round / Kick player). Live vote counts per choice. After reveal: Next Question button + auto-advance countdown. Only you look at this.
Each patron's phone, after they scan the QR code or visit /play?code=ROOM. Shows the question + A/B/C/D buttons (or a text input for open-ended), their live score, a rank chip, streak badges (3/5/7/10 in a row), and round/night totals during reveals. Players can join as a guest or register / Sign in with Google for cross-venue stats.
Canonical names. If something's labeled ambiguously anywhere, these win.
/tv-op.html. Per-venue toggle in the Venue panel โ Open Play tab.Everything you can configure in the ๐ฎ Game Night setup modal, in the order it appears.
The row at the top of the setup modal. Configure once ("Friday at Champs"), tap ๐พ Save current, and the next time just pick from the dropdown + Apply. When you're logged in, templates sync to your venue so the same recipe shows up on the iPad and laptop. Guests (or pre-login saves) keep templates per-device until you log in.
Build the rounds yourself: pick a category, difficulty, question count, and per-question timer for each. Drag-reorder if you want a specific running order. Categories already played in the night are skipped from voting picks if you switch later.
Skip building a queue โ players vote on the next category from 4 random options each round. Configure how many voting rounds total (3, 5, 8, 10, or unlimited), questions per round, and seconds per question. Mutually exclusive with the manual queue.
Inject a host-judged round into the queue (alongside multi-choice rounds, or alone). Set a round time + name, then add free-text questions with answers. During the round, players type answers; the host approves / rejects each. Premium-tier feature.
How long the reveal screen sits before the next question fires. Manual = host clicks Next. Any number = set-and-forget. Affects within-a-round pacing only.
Dedicated break screen with a big countdown, "Up next: [Category]", night leaderboard, and ad rotation. Best for actual pauses where patrons hit the bar or bathroom. Mutually exclusive with Auto-Advance.
Stays on the round-end scoreboard with a countdown โ keeps momentum without a dedicated break UI. Mutually exclusive with Break.
Toggle to show a mini scoreboard on the TV after every question (in addition to between-rounds). Off by default.
Toggle whether uploaded TV ads alternate with the scoreboard during breaks. On by default. Manage ads from the home screen โ ๐บ TV Ads.
Toggle on for team play. Configure 2โ8 teams with a name + color picker each. Players see a team picker when they join (and can switch teams between rounds). Team scores aggregate from individual answers and lead the night-end screen + recap email.
Break: None ยท Auto-Advance: 60s ยท Reveal: 20s
A 10-question round with 20s questions runs โ 7 minutes (20s answer + 20s reveal ร 10). Three rounds with a 60s between-rounds scoreboard โ 23 minutes of hands-off play after you hit Start.
Tighter: 8s reveal + 30s auto-advance. Dinner-crowd: 20s reveal + 10 min Break (Auto-Advance Off).
At any point the host can pause, extend time, skip a question, kick a disconnected player, or end the night early from the dashboard. A ๐ฒ Reroll button regenerates the voting slate during voting rounds.
Tap the ๐ข Venue card on home. Settings are grouped across six tabs (Status, Account, Game Night, Open Play, Branding, Advanced) โ the venue name, plan, and room code stay visible above the tabs. Every section in the panel also has its own "How this works" expander next to the title for inline details + gotchas; the cards below are quick reference.
Above the tabs. Shows your venue name, room code, and current plan (Starter / Pro / Premium / Custom). Logged-in venues can't edit the room code from the home screen โ it's locked to whatever you registered with. A yellow "QR refresh needed" banner appears here if an admin renames the room code.
Pre-flight checks. The default tab when you open the panel.
Tap โถ Run smoke test 5โ10 minutes before opening doors. Returns a colored checklist: server reachable, plan quota state, content bank loaded, recovery email status, Resend configured, TV + player URLs. Catches "is this thing actually going to work tonight?" in 1 second.
Email, notifications, and the referral program.
Add an email + verify it (we send a one-click link). Required for the "Forgot password?" reset flow. Verification is required before notifications start arriving โ unverified addresses still let you log in, but won't get emails. Switch to a shared venue inbox here and re-verify when you hand off to a manager.
Add co-owners or managers. Each address gets its own verify link; once verified, they receive the same daily score emails + post-night recaps as the primary. Remove any time โ recipients stop getting emails immediately.
Get yesterday's scores delivered each morning (~3 AM ET). Two independent toggles: Open Play covers continuous OP scoring; Game Night covers final standings from completed nights. Days with no activity skip the email entirely โ no empty "0 players" mail. Defaults off; opt in to whichever modes you actually want a digest for.
Share your referral link with another venue owner. When they sign up using your code and stay on a paid plan for one month, you both get one month of plan credit applied to your next billing cycle. Available on every plan including Starter; stack referrals for compounding credits.
Defaults and insights for the structured, host-driven mode.
Per-venue policies that apply to every new Game Night you open: Allow Guest Players (off = require login) and Min Display Name Length (1โ4, blocks one-letter names). Each setting can still be overridden inside the night-setup wizard for a one-off variation; what's here is just the starting point.
Controls what /tv.html shows between game nights (when no night is running). Three modes: This month's leaderboard (default, keeps the TV useful between events), Last night's final standings (after-action victory lap the morning after), QR only (minimal โ just the join code). The join QR is always visible regardless.
Tracks repeat patrons across nights. Shows total visits, last seen, and lifetime score for each. Recognition is by display name only โ encourage patrons to use a consistent name (or create an account) for accurate tracking.
Per-team rollup of points across every team-mode night you've run. Hidden until you run at least one team-mode night. Useful for league seasons where teams compete across multiple weeks โ pulls from the team-name field, so consistent team names link results.
Hardest 5 + easiest 5 questions at this venue, ranked by % correct across all plays. Filtered to questions with at least 3 plays so a one-off fluke doesn't dominate. Updates live after every reveal; hidden until your venue has tracked data.
Questions your patrons reported during a game (via the small flag icon on the question screen). For custom-bank questions you own, edit or delete inline; for shared-bank questions, dismiss to clear the flag โ repeated cross-venue flags get reviewed centrally for global removal. The section hides itself when you have zero flags.
Per-question stats from emcee rounds โ how often you scored an answer correct vs. wrong, response time. Tracking is keyed on the question text, so reusing the same wording (or loading from a saved template) makes stats accumulate over time. Useful for spotting questions where your scoring criteria may need refining. Hidden until you've run at least one trackable emcee round.
Self-serve OP configuration: how patrons join, when it runs, and the shared TV.
Default off (async): each patron has their own question and timer. Switch on (sync) and the whole room sees one shared question with one shared countdown, mirrored on /tv-op.html โ like a slow-paced trivia table game. Takes effect on the next OP open; if OP is already live, the in-progress room converts automatically.
Match this to how your physical TV is mounted: Landscape (default) is a normal horizontal TV; Portrait reflows the QR, leaderboard, and ads into stacked rows for a vertical mount. Only affects /tv-op.html; the Game Night TV at /tv.html is always landscape.
Add weekly windows where OP starts and stops on its own each week (e.g., Mon-Thu 4pm-10pm). The server boots OP at the start of each window and ends it at the close โ no host login needed. Set your timezone first so windows fire at the right local time. Manual starts outside scheduled hours still work.
Optional. When on, OP joins must be physically near the bar โ patrons' phones send GPS on join and the server rejects anyone outside the radius. Stops random internet players from scoring on your leaderboard. Important: capture the center coordinate while you're physically inside the bar โ indoor phone GPS is ~100m off, so seeding from home will mis-locate the fence. Doesn't affect Game Night joins.
Logo and the print-ready QR codes patrons scan.
Upload a PNG/JPG/WebP logo (transparent backgrounds look best) to replace "Trivia Fun" branding on the TV and player join screens. Roughly square (around 512ร512) crops cleanest; very wide or tall logos get letterboxed. Pro plan unlocks branding.
Two high-res QR PNGs: one for Game Night joins, one for Open Play (with the OP flag baked in). Save and print on coasters / table tents / posters. Room codes never change โ print these once. If an admin ever renames the room, a "QR refresh needed" banner appears above the tabs and you'll need to reprint.
Custom banks, multi-venue orgs, and the upgrade CTA.
Upload a JSON file of your own questions as a custom bank โ format matches the export schema; download the template for an editable example. Imported banks are scoped to your venue (only your Game Nights and OP can pull from them). Max 500 questions per import; run multiple imports for larger banks.
Group multiple venues you own under one organization for a shared cross-venue leaderboard and combined reporting. Each venue keeps its own room code and per-venue stats; the org adds an aggregate view on top. Most useful for chains, franchises, or pop-up tour ops running multiple bars.
The upgrade card. Hidden when you're already on the highest tier you can buy. Shows the next-plan benefits and pricing inline โ no separate billing page needed.
What happens on the patron's phone.
/play?code=ROOM. Pick a name + avatar (or save favorites). Optionally tap Log in or register to set up a player account โ emails verified, password resettable, Google sign-in supported. In team-mode lobbies, pick a team chip. Open Play joins use a separate QR (with &openplay=1) so a scanner lands directly in OP mode; if geofence is on, the patron's phone is asked for GPS permission at join time.Auto-fires on night-end. Your verified Account Email (plus any verified additional notification addresses) gets a venue summary โ top 3 + team standings if applicable. Each registered + verified player who participated also gets a personalized recap (their rank, score, top 3 of the night). Guests and unverified players are skipped so inboxes stay clean.
Every reveal during the night feeds the Question Insights card in your Venue panel. Hardest / easiest lists refresh automatically.