Skip to content

Prompting tips

The recipe library has working prompts you can use verbatim. When you write your own, these patterns keep the AI on the rails.

A blanket “analyse my data” returns generic stats. The more precisely you name the fields, filters, and grouping, the better the answer.

Vague: “How am I doing?”

Specific: “Group my passes by month using setDate. For each month, find the longest lineOffUs where buoyCount >= 4 and speedMph === 34. Output a markdown table.”

There is no universal best-pass formula. The export caches some fields (bestDisplay, bestPassLineOffUs, etc.) but they’re for UI display and may not match what you care about. State your definition every time:

“Best pass = longest lineOffUs, tiebreaker highest buoyCount.”

Or for tournament prep:

“Best pass = highest (lineOffUs, buoyCount) lexicographic order, but only count completed passes (buoyCount === 6).”

Always exclude drafts and auto-generated passes

Section titled “Always exclude drafts and auto-generated passes”

Unless you explicitly want them:

“Exclude draft passes (any of speedMph / lineOffUs / buoyCount null) and autoGenerated: true passes.”

Auto-generated passes are filler rows the app inserts to map out the line progression between your opening and best pass. They don’t reflect a real attempt.

speedKph, finLengthMm, etc., avoid rounding drift compared to the US fields. The export keeps both, kept in sync at write time, but the metric versions are the source of truth.

Ask for charts in formats that render natively

Section titled “Ask for charts in formats that render natively”
  • Mermaid for line / bar / scatter charts.
  • Markdown tables for distributions and grouped stats.

Both render natively in ChatGPT, Claude, and Gemini.

If a number feels off, ask the AI to show its work:

“List the exact set IDs and pass IDs you included in that average, and explain any you excluded.”

Hallucination is rare with this dataset because the prompts are quantitative — but column-misnaming or accidental aggregation across drafts happens. Five seconds of verification beats a wrong conclusion.

Models drift if you leave a chat open for hours and pile on follow-ups. If you’re switching from “best pass over time” to “fin DFT causality”, start a fresh chat and re-paste the export. Cheap insurance.