CLI

Your stats,
in the terminal.

Pull your rounds, stats, and strokes gained data from any terminal. Pipe it into a spreadsheet, feed it to an AI, or just read it over coffee.

Install

Homebrew macOS / Linux

brew install --cask undeadC0rp/tap/yips

Windows manual install

Download the latest yips_windows_amd64.zip (Intel) or yips_windows_arm64.zip (ARM) from the releases page, extract, and add yips.exe to your PATH.

Getting started

Authenticate with your Google account. This opens a browser for OAuth — credentials are stored at ~/.config/yips/credentials.json and refreshed automatically.

yips login

Commands

yips roundsList all your rounds
ID        DATE        COURSE            HOLES  SCORE  +/-
a1b2c3d4  2024-11-03  Pine Valley GC    18     82     +10
b5c6d7e8  2024-10-20  Cypress Creek CC  18     79     +7
yips round <id>Hole-by-hole scorecard with strokes gained

Use the short ID prefix shown in yips rounds. Add --profile hcp_10 to compare against a different benchmark.

Pine Valley GC  ·  2024-11-03  ·  18 holes
Rating: 74.5  ·  Slope: 142  ·  Par: 72
SG benchmark: tour_pro (putting: scratch)

HOLE  PAR  SCORE  +/-   PUTTS  FIR  GIR  SG:TEE  SG:APP  SG:ARG  SG:PUTT
1     4    5      +1    2      Y    N    -       -       -       -0.78
2     3    4      +1    2      -    N    -       -       -       -0.42
4     4    4      E     1      Y    N    -0.21   -1.00   +0.18   +0.02
5     4    3      -1    1      Y    Y    -0.06   +0.95   -       +0.00
───   ───  ─────  ────  ─────  ───  ───  ──────  ──────  ──────  ───────
TOT   72   82     +10   34     9/14 10/18 +1.20  -3.41   +0.18   -1.18
yips hole <id> <hole>Shot-by-shot chart for a single hole

Requires shot data recorded in the mobile app. Each bar shows where the shot started relative to the hole length.

Hole 5  Par 4  350yds  Score: 3 (-1)

         0                        175                  350yds
         ────────────────────────────────────────────────────
TEE    1 █████████████████████████████░░░░░░░░░░░░░░░░░░░░░  200yds   FWY
APP    2 ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░███████████████████████  155yds   FWY
PUTT   3 ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░●  Gimmie
yips statsAggregate stats across all rounds
12 rounds  ·  Last played 2024-11-03

METRIC           VALUE
Scoring average  84.2
Average +/-      +12.2
Putts / round    33.1
Fairways hit     58%
GIR              38%
Up & down        32%

PAR  HOLES  AVG SCORE
3    72     3.42
4    216    4.61
5    72     5.38
yips stats <id>Full breakdown for a single round
Pine Valley GC  ·  2024-11-03
SG benchmark: tour_pro (putting: scratch)

METRIC                VALUE
Score                 82 (+10)
Putts                 34
Fairways hit          9/14 (64%)
GIR                   10/18 (56%)
Up & down             4/8 (50%)
SG: Off-the-Tee       +1.20 (10 holes)
SG: Approach          -3.41 (12 holes)
SG: Around-the-Green  +0.18 (3 holes)
SG: Putting           -1.18 (16 holes)

SCORING  COUNT
Birdie   2
Par      8
Bogey    6
Double   2
yips clubsDistance and strokes gained per club

SG per club is aggregated from shot-level data. Add --json to emit raw data for further analysis.

CLUB               BRAND    SHOTS  AVG  MIN  MAX  SG TOTAL  SG/SHOT
Driver KING LTDx   Cobra      20   264  198  328    +7.47    +0.498
7 Wood             Cobra      10   178   40  234    +1.15    +0.128
7i                 Takomo      5   158  140  171    -0.65    -0.325
Putter             L.A.B.      0     -    -    -   -14.29    -0.265
yips holes <course>Per-hole breakdown across all rounds at a course

Accepts a partial, case-insensitive course name. Holes are flagged (*) when you're averaging +1.0 or worse and GIR is below 30% across 3+ rounds.

Course: Riverbend GC  ·  3 rounds

HOLE  PAR  RNDS  AVG +/-  FIR%  GIR%  TEE CLUB  ⚠
1     4    3     +0.7     67%   44%   Driver
7     4    3     +1.3     33%    0%   Driver     *

* Club selection review:
  Hole 7 (par 4) — Driver 3× (avg +1.3) — consider a shorter club off the tee
yips notesYour scorecard tells you what happened. Notes tell you why.

Add freeform notes to any hole or round in the app — context on a double bogey, a decision that backfired, or anything worth remembering. yips notessurfaces all of them across every round. Filter by course with --course <name>.

Round: Pine Valley GC  ·  2024-11-03  ·  82 (+10)  [a1b2c3d4]

Hole 7  Par 4  Index 3  412yds  Score: 6 (+2)
  Tried to cut the corner on the dogleg, pulled driver into the trees.
  Punched out sideways, chunked the third. Down the left side next time.

Hole 16  Par 4  Index 1  445yds  Score: 7 (+3)
  Three-putted from 8 feet. Mental collapse after the drive caught the rough.

---

Round: Cypress Creek CC  ·  2024-10-20  ·  79 (+7)  [b5c6d7e8]

Hole 3  Par 5  Index 9  520yds  Score: 8 (+3)
  Lost two balls in the hazard. Should have laid up off the tee.

Use yips notes <id> to pull notes for a single round.

Add --json to get structured output — each note includes hole number, par, yardage, hole index, score, and score vs par. Enough context for an AI to find patterns across months of rounds:

yips notes --json | claude "what patterns do you see in my double bogeys or worse? what should I focus on?"

Flags & options

FlagCommandsDescription
--profile <slug>round, stats, clubsSG benchmark profile. Valid slugs: tour_pro, scratch, hcp_5, hcp_10, hcp_15, hcp_20, hcp_25. Default: tour_pro.
--estimateround, statsFill GPS-missing distances from hole yardage and club averages so partial holes still show a split. Estimated cells are marked with ~.
--jsonnotes, clubs, holesEmit raw JSON for piping into other tools.
--course <name>notesFilter by partial, case-insensitive course name.

Environment variables

VariableDefaultDescription
YIPS_TOKENGoogle ID token; bypasses stored credentials.
YIPS_API_URLhttps://api.theyips.appOverride the API base URL.

Pipe it anywhere

Every command that accepts --json outputs clean JSON you can pipe into anything — a spreadsheet, a script, or an AI.

yips notes --json | claude "what patterns do you see in my double bogeys or worse? what should I focus on?"
yips holes 'Riverbend' --json | claude "where is my club selection hurting me most?"
yips clubs --json > clubs.json
yips rounds | grep "Pine Valley"