Skip to main content

Competition Formats

TeeTime supports 10 competition formats covering individual stroke play, points-based formats, and team events.

Individual formats

Stableford

Points-based scoring where higher is better. Most common club competition format.

Net ScorePoints
Net Double Bogey or worse0
Net Bogey1
Net Par2
Net Birdie3
Net Eagle4
Net Albatross+5

Use case: Weekly club competitions, social rounds, high-handicap friendly.

Stroke (Medal)

Traditional stroke play where lowest net score wins.

  • Gross strokes recorded per hole
  • Net score = Gross - Course Handicap
  • Lowest total net wins

Use case: Monthly medals, club championships, qualifying rounds.

Par/Bogey

Match play against the course. Each hole is won (+1), lost (-1), or halved (0) against par.

  • Calculate net score per hole
  • Compare to par: under = +1, over = -1, equal = 0
  • Sum all holes for final score

Use case: Alternative to stableford, emphasizes consistency.

Matchplay

Head-to-head hole-by-hole competition.

  • Holes won/lost, not total strokes
  • Match ends when lead exceeds holes remaining (e.g., "3&2")
  • Bracket/knockout progression

Use case: Club championships, knockout competitions, inter-club matches.


Team formats

Four-Ball Better Ball (4BBB)

Two-player teams, each plays their own ball.

  • Better net score of the two counts
  • Common in pairs competitions

Configuration:

{
isTeamEvent: true,
teamSize: 2,
format: 'FOUR_BALL_BETTER_BALL'
}

Foursomes

Two-player teams, alternate shots.

  • Partners alternate shots on each hole
  • Alternate tee shots (A tees odd holes, B tees even)
  • Single ball per team

Use case: Inter-club matches, Ryder Cup format.

Greensome

Hybrid of four-ball and foursomes.

  • Both players tee off
  • Select best drive
  • Alternate shots from there

Use case: Social team events, mixed competitions.

Scramble

Team format, all play from best position.

  • All players hit from each position
  • Best shot selected
  • Repeat until holed

Use case: Corporate days, charity events, social golf.

Texas Scramble

Scramble with minimum drive requirements.

  • Each player's drive must be used minimum number of times
  • Typically 3-4 drives per player over 18 holes
  • Prevents one player dominating

Configuration:

{
isTeamEvent: true,
teamSize: 4,
format: 'TEXAS_SCRAMBLE',
// minDrivesPerPlayer tracked in local rules
}

Ambrose

Team scramble with combined handicap calculation.

  • Scramble format play
  • Team handicap = sum of individual handicaps ÷ team size × factor
  • Factor varies (commonly 0.1 for 4-person teams)

Use case: Corporate events, mixed-ability teams.


Format comparison

FormatPlayersScoringBest For
Stableford1Points (higher)Weekly comps
Stroke1Net strokes (lower)Championships
Par/Bogey1+/- vs parConsistency focus
Matchplay1v1Holes wonKnockouts
4BBB2Better ballPairs events
Foursomes2Alternate shotInter-club
Greensome2Best drive + alternateSocial
Scramble2-4Best shotCorporate
Texas Scramble4Best shot + min drivesCharity
Ambrose2-4Scramble + team hcpMixed ability

Configuration

Create competition with format

await competitionsService.create({
clubId: 'club-123',
name: 'Club Championship',
format: 'STROKE',
isTeamEvent: false,
isHandicapQualifying: true,
handicapAllowance: 100, // Full handicap
rounds: [
{ roundNumber: 1, date: new Date('2025-03-01'), courseId: 'course-123' },
{ roundNumber: 2, date: new Date('2025-03-02'), courseId: 'course-123' },
],
});

Team event configuration

await competitionsService.create({
clubId: 'club-123',
name: 'Corporate Day',
format: 'TEXAS_SCRAMBLE',
isTeamEvent: true,
teamSize: 4,
isHandicapQualifying: false,
rounds: [{
roundNumber: 1,
date: new Date('2025-06-15'),
courseId: 'course-123',
startType: 'SHOTGUN',
shotgunTime: new Date('2025-06-15T08:00:00'),
}],
});

Format-specific scoring

The ResultsService automatically adjusts sorting based on format:

// Higher is better (Stableford-style)
case 'STABLEFORD':
case 'FOUR_BALL_BETTER_BALL':
case 'FOURSOMES':
case 'GREENSOME':
case 'SCRAMBLE':
case 'TEXAS_SCRAMBLE':
case 'AMBROSE':
return stablefordPoints;

// Lower is better (Stroke-style)
case 'STROKE':
case 'PAR_BOGEY':
return netTotal;

// Separate handling
case 'MATCHPLAY':
// Uses bracket/match results

Handicap allowances

Common allowance percentages by format:

FormatTypical Allowance
Stableford95% or 100%
Stroke95% or 100%
4BBB85% or 90%
Foursomes50% of combined
Greensome60% low + 40% high
Scramble10% of combined (4-person)

Configure via handicapAllowance (0-100):

{
format: 'FOUR_BALL_BETTER_BALL',
handicapAllowance: 85, // 85% of course handicap
}