Offline-first · Built for the deck

Run the deck.Not the paperwork.

An offline-first meet sheet for coaches: live event tracking, DQ slips, entries, and win probabilities — all on the deck, no signal required.

Monte Carlo runs per swimmer
2,000
Monte Carlo runs per swimmer
pt minimum touch target
44
pt minimum touch target
spinners on the deck
0
spinners on the deck

The live meet sheet.

Harbor Aquatics Invitational

Heat Sheet — Session 2

12

Girls 11-12 50 Free

Heat 3 · Ln 4 · Alvarez, J.

28.90
13

Girls 11-12 50 Free

Heat 4 · Ln 2 · Chen, M.

27.44
14

Boys 11-12 100 Back

Heat 1 · Ln 5 · Patel, R.

1:32.10
Printed 6:14 AMPage 2 of 9
EvtSwimmerStatus
12Alvarez, J.50 FR · Heat 3 Ln 4
FINAL
13Chen, M.50 FR · Heat 4 Ln 2
NOW
14Patel, R.100 BK · Heat 1 Ln 5
UP NEXT

Tap to skip ahead

Paper doesn't survive the deck.

Every surface

One meet, every screen.

Deck Buddy live console: On Deck, In the Water, Previous, and Results tiers

Live console — lane times as the heat runs, no signal required.

See the full Console feature →

The meet sheet, live.

A printed sheet is static the moment it prints. This one updates as the meet runs — search it, filter it to your own swimmers, and annotate it in place.

Live meet sheet

Every event carries a Now marker and a heat pointer that advances as heats finish — in manual timing mode, the coach drives it with a single tap.

EvtSwimmerStatus
12Alvarez, J.50 FR · Heat 3 Ln 4
FINAL
13Chen, M.50 FR · Heat 4 Ln 2
NOW
14Patel, R.100 BK · Heat 1 Ln 5
UP NEXT

DQ slips

A disqualification is a list, not a single reason. Pick from the official code sheet and stack as many as apply.

DQ 1CAlteration of stroke
DQ 3DNot touching wall

Guided notes

Stroke, then part of the stroke, then the specific nitpick — a coaching note in three taps instead of a blank text box.

FreestyleTurnsOpen turn

Multi-code DQ sheets

Built-in USA Swimming and VCSL code sheets, or import your league's own as CSV or JSON — validated row by row.

Win probabilities you can see the work behind.

A seeded Monte Carlo engine runs 2,000 simulations per swimmer over personal bests, seed times, this meet's drops, age, event load, and DQ history, reusing the same placing and points logic that scores the meet. Every prediction is labeled an estimate, with the run count and the factors listed — and marked low data when there isn't enough history to trust it.

0

P(win) · 100 FR
  • Personal bests+
  • This meet's drops+
  • Seed time+
  • Event load
  • Age group·
  • DQ historylow data
NameMeet ΔChance
Alvarez, J.-1.2%
73%
Chen, M.+0.4%
41%
Patel, R.-2.8%
58%
ESTIMATE
2,000 runs · seeded, deterministic · sample data shown

One code gets your whole team in.

Create a team at sign-up and get a join code back. Share it with coaches and swimmers — they join in one step, no invite emails. Roster comes in by CSV, validated row by row so a bad line doesn't block the rest.

  • Live member list as people join
  • Regenerate the code any time
  • Paste-CSV roster import, atomic
Team join code
HARB-5EIJ
Alvarez, J.Swimmer
Chen, M.Swimmer
Coach ReyesCoach
Offline is the normal case

Works with no signal. Everything stays on the device.

Notes, scratches, DQs, and results queue locally and sync when a connection comes back — last write wins, nothing blocks on a spinner.

What coaches say.This space is waiting for you.

Your meet here

Ran a meet with Deck Buddy? Two sentences about how the deck went is exactly what belongs in this box.

Coaches shape it already

A coaching tag was removed from the app because one real coach said it wasn't useful. That kind of feedback is the roadmap.

Swimmers and parents too

The swimmer side is half the product. If your team used it on race day, we want the unpolished version of how it felt.

Get started

Open the app on your iPad or phone, or take a look at the source.