Features

Everything your club needs to run a season

From the first scratch sheet to the final standings, WP SailingFlow handles the whole arc of PHRF club racing — organizing, scoring, and publishing — inside your own WordPress site.

Organize your racing

A clear structure for the whole season

Model your club exactly the way it races — then reuse that structure year after year.

A four-level hierarchy

Season → Series → Regatta → Race. Each race can belong to a season, a racing series, and a regatta — or none, for schedule-only events.

Fleets & divisions

Keep a managed division list and a master boat registry. Every boat holds its own identity and history across seasons.

Per-season ratings

A boat's division, sail number, and PHRF rating are stored per racing series — so Spring and Fall fleets can differ without losing a boat's record.

A date-driven schedule

The public schedule is built from race dates, so practices, socials, and externally-scored events all appear on the right year automatically.

Score with confidence

PHRF scoring, by the rules

Enter finish times; WP SailingFlow does the corrected-time math and the points — under the Racing Rules of Sailing 2025–2028.

Corrected times

Time-on-distance by default. Time-on-time scoring, with editable A/B factors, is available per series. Pro

World Sailing Low-Point

Points assigned by the Low-Point system (RRS A4): first scores 1, second 2, and so on — with race ties averaged per A7.

Non-finisher scoring

Standard A5.2 (entries + 1) out of the box, plus all the RRS codes: DNF, DNS, DNC, OCS, RET, NSC, RAF, DSQ, DNE. Optional A5.3 scoring per series. Pro

Always editable

Results stay editable after submission, and a confirmed “Clear Results” resets a race to scheduled without deleting it — perfect for protests and corrections.

Stand-alone races

Score a one-off race that belongs to no series: pick its boats, set ratings and sail numbers, enter times, and publish a results page that touches no standings.

Conditions & cancellations

Record course and conditions per race. Cancelled races aren't scored, stay off the standings, and show the reason on the schedule.

Standings & series

Live standings, scored the right way

Standings are built per racing series, with one column per regatta showing each boat's net total. Everything recalculates the moment you save a result.

  • Tiered throwouts — drop 1 after 8 races, 2 after 10, on a schedule you define. Pro
  • RRS A8 tiebreaks resolve series ties correctly
  • Non-excludable scores (DNE) are never dropped
  • Mobile-ready — Place and Boat stay frozen while scores scroll

Publish to your site

Your results, on your own pages

Drop a shortcode onto any WordPress page or post. Output is responsive and inherits your theme — no embeds, no separate scoreboard, no extra logins for your fleet.

  • Schedules, scratch sheets, race results, race details, and standings
  • Pulls context from the URL, so one page serves every race
  • Legacy 1.x shortcode tags keep working after an upgrade

See the shortcode reference →

[wpsf_schedule]        season race schedule
[wpsf_scratch_sheet]   registered boats by division
[wpsf_race_results]    results of a single race
[wpsf_race_details]    course & conditions detail
[wpsf_standings]       full series standings grid
[wpsf_series_title]    standings breadcrumb heading

Place one on a page and it stays in sync with your data.

Notify your fleet Pro

Keep racers in the loop, automatically

Email your fleet the moment results post or a race is called off — with unsubscribe handling done properly.

Result & cancellation emails

Send the results table — or a cancellation notice with the reason — to your recipient list as soon as a race is finalized.

One-click unsubscribe

Every email carries an unsubscribe link and List-Unsubscribe headers. A confirmation step keeps scanners and prefetchers from unsubscribing anyone by accident.

Per-recipient sends

Each message is sent individually so an unsubscribe removes only that address. Opt-outs are skipped on future sends and reviewable in Settings.

Built to professional standards

Secure, self-contained, and easy to install

Secure by design

Prepared statements throughout, nonce and capability checks on every admin action, escaped output, and prefixed tables — a clean, audited rewrite.

Installs from a zip

Self-contained with its own autoloader — no Composer step on your server. Requires WordPress 6.0+ and PHP 7.4+. Schema updates apply automatically.

Your data is safe

Configurable club name and page URLs. If a Pro license lapses, nothing is deleted — Pro features just pause and reactivate instantly when a license is active.

Free core, optional Pro

What's free, and what's Pro

Free The full workflow

  • Seasons, series, regattas & races
  • Divisions, boats & per-season PHRF ratings
  • Time-on-distance Low-Point scoring
  • Stand-alone scored races
  • Schedules, scratch sheets, results & standings
  • Every public shortcode

Pro For competitive series

  • Tiered series throwouts
  • Time-on-Time scoring
  • RRS A5.3 penalty scoring
  • Automatic result & cancellation emails
  • One-click unsubscribe handling
  • Priority support

Start on the free edition and upgrade whenever your racing calls for it — your existing data carries straight over.

Ready to run your season in WordPress?

Set up your fleet in an afternoon and publish standings your racers can check from the dock.

Get WP SailingFlow