Privacy
Fairway Peer is a golf scoring app for small groups of friends, on the web, as an iOS app and as an Android app that is still an early test build, offered to invited testers through Google Play. This page says what the app stores, who can see it, what stays on your device and which outside services see anything, and when.
In short: your rounds are visible to the people in them, and to anyone you give a live scoreboard link to. There is no advertising and no ad tracking, and your data is not sold.
Your account
Sign-in is handled by Clerk (clerk.com). Clerk keeps your email address, your name and how you sign in, and sets cookies on this site to keep you signed in. The app never stores your password.
You can use the demo without an account. It shows a sample golfer’s data and saves nothing.
What is stored
What you save is kept in the app’s database on Supabase (supabase.com), a hosted Postgres service. Each row is tied to your Clerk user id:
- Your profile: display name, handicap index and home course, if you save them.
- Rounds: course, format, teams, each player’s name and handicap, every score, optional stats (putts, fairways, penalties) and side events such as greenies, sandies, presses and wolf picks. A guest you add is stored by the name and handicap you give.
- Trips and leagues: rosters, schedules and tee times, teams, standings, and any bet amounts and payments you record. The app keeps the record; it never moves money.
- Saved groups, favorite courses, and course details you add or correct (pars, stroke index, yardages, a green’s position).
- Notification settings, if you turn notifications on (see below).
- My bag, if you use it: your clubs with the shot pattern worked out for each, and for each launch-monitor session you import, its date, the kind of file, the device name you choose, range / simulator / course, the ball and any carry adjustment, and per shot only the club, carry, left / right and, when the file has them, total and ball speed.
Your stats are worked out from your rounds; they are not a separate record.
Who can see it
The database checks every request with row level security, so each account only gets back what it is allowed to see:
- Only you: your profile, saved groups, favorite courses, notification settings, your course suggestions, and your bag and shot sessions (not the group, the scorer, the host or a live scoreboard).
- A round: its host and players, and the members of the trip or league it belongs to. Anyone you give the room code to can join the round and then see it.
- A trip or league: its members. Anyone you give its join code to can join.
- A live scoreboard link: sharing is off until a player in the round, or a trip’s organizer, turns it on. Then anyone with the link can watch without an account: player names, scores and results, never account ids, room codes or join codes. The same people can turn the link off or replace it.
- A guest’s claim link lets whoever holds it take over that guest’s scorecard with their own account.
- Course details: once enough players agree on a correction or a green position, it is added to the shared course list that everyone sees, without your name or account.
Hosting and analytics
The web app is hosted on Vercel (vercel.com). Like any web host, Vercel handles each request and sees your IP address and browser.
Vercel Analytics counts page views. Before a page view is sent, room codes, link tokens, the query string and anything after # are removed from the address, so it records a route pattern such as /live/[token].
There are no ads and no advertising or cross-site tracking, and your data is not sold or shared for marketing. The hole map’s Google imagery is described under “Other services”.
Anonymous error reports
When something breaks, the app can send a short report to its own database (no outside error service), without your sign-in. A report holds: the kind of failure, a shortened error message and code location, the screen’s path with ids removed (such as /game/[roomId]), the app version and a browser family such as “Safari iOS”.
Room codes, ids, email addresses, query strings and long numbers are stripped on your device before sending. A report never holds your user id, name, email address, scores or room code. At most 10 are sent per visit, none while offline, and they are deleted after 14 days.
Reports are on by default. Turn them off with “Send anonymous error reports” on your profile (it applies to that device).
Open your profileYour location
Distance to the green and the hole map use your device’s location, only after you allow it and only while you use the app. Distance to the green is on by default on the web, so your browser asks for your location when a round opens; turn off “Distance to green” in Round settings (on that device) and the round screen stops using it (the hole map still asks when you open it). Distances are worked out on your device.
Your position is sent to the app’s database only to find courses near you (or to sort a course search by distance), in round setup and with “Near me” in Explore courses, where it is asked for only when you tap it. It is used for that search; the app does not store it.
If you save a green’s position (“I’m on the green”), or mark its front, center and back on the hole map (“Mark the green”), those points are stored with the round. On a course from the shared list they are also sent to the app’s database as a course suggestion (the points, whether they came from your position or the map, and the time), tied to your account and readable only by you; the app reuses your own marks on later rounds on that course. Only once several players’ marks agree does their average (never your name or account) join the shared course list. A mark on a green that the course data already maps is not accepted. On the web you place the points on the hole map with the imagery you have chosen (Google satellite by default, see “Other services”); the points themselves go only to the app’s database.
Other services, and when they are used
Hole map imagery from Google (web): when you open a hole map, in a round or while exploring a course (also without an account), with “Map imagery” set to Google satellite (the default), your browser loads the Google Maps JavaScript API and its satellite images from Google (maps.googleapis.com and related Google addresses). Google receives your IP address, the area shown (that is, the course you are viewing), this site’s address as the referrer, and its own browser details, and may keep its own data in your browser. Nothing about your round, players or scores and no user id is sent. Marking a green on the hole map uses the same imagery, and only the points you mark are sent to the app’s database, never to Google. Google’s images are never stored by the app, so this map needs a signal. Choose “Standard imagery” (the “Map imagery” setting, on that device) and nothing is sent to Google; with no signal, or if Google’s map cannot load, the standard map is used. Google’s use is covered by its own privacy policy (policies.google.com/privacy).
These requests go from your device straight to public US government services. They carry no key, no user id, no referrer and nothing about your round; the service sees your IP address and the locations described.
- Standard hole map imagery (web): when you open a hole map (in a round or while exploring a course) with Standard imagery chosen, with no signal, or when Google’s map cannot load (this includes marking a green), your browser loads satellite tiles and one aerial photo per hole from USGS The National Map (basemap.nationalmap.gov, imagery.nationalmap.gov). USGS sees which area is shown, that is, the course you are viewing. “Save for offline” on a course asks for the same images for all its holes at once.
- “Plays like” wind and elevation: on by default during a round with distance to the green on, and switched off per device with “Plays like (wind and elevation)” in Round settings. While it is on, the US National Weather Service (api.weather.gov) then gets the course’s location rounded to about 1 km, and the USGS elevation service (epqs.nationalmap.gov) gets your position, the greens and map targets, each rounded to about 10 m. A wind you set by hand never leaves the device.
Green slope and hole elevation: when you play or look at a course from the shared list while signed in, the app may ask its own server to work out the course’s green slopes and the rise and fall from tee to green. Only the course (and the hole you are on) is sent. The server asks the USGS elevation service (elevation.nationalmap.gov) for the heights of points on the course, so USGS never sees you, and the result joins the shared course list.
Notifications (web): if you turn them on, your browser gives the app a push address at its maker’s push service (for example Google, Apple or Mozilla) and encryption keys. These are stored with your account, your time zone and the topics you chose. Messages are encrypted and only mention rounds and trips you are in. Turn them off on your profile.
Pay links on the bets screen only open Venmo (with the amount and a note filled in) or Cash App when you tap them.
My bag and imported shot files
A launch-monitor file you import (for example a CSV exported from the Garmin Golf app or from Trackman) is read on your device and never uploaded. Only the shot numbers listed under “What is stored” are saved; the file, its name, the player name, notes, tags, swing and weather data and the time of day are not. No Garmin or Trackman service is contacted and no account is linked. Your pattern and any club suggestion are worked out on your device. Delete a session, a club or your whole bag at any time from My bag.
What stays on your device
To keep working with weak signal, the app keeps some data in your browser or on your phone. It is not sent anywhere except as described above.
- Scores and side events that have not reached the server yet. They are sent as soon as there is a connection.
- A copy of each round you opened, so it loads without signal.
- On the web: pages and app files, and the standard (USGS) map tiles (up to 600) and hole photos (up to 54) you have viewed. Google’s map images are not kept.
- With “Plays like” on: the last wind forecast for each course location and up to 500 elevations.
- Your clubs and their patterns (not the sessions), so the hole map can show them without signal, and any import made with no signal until it is sent. Both are removed when you sign out.
- Green marks: a green you marked with no signal, until it is sent, and a copy of your own marks for each course you play, so they fill in its holes without signal. Both are removed when you sign out.
- Explore courses: the last 10 courses you looked at (their public scorecard, tees, hazards and green slopes) with the tee and hole you last viewed, so they open without signal (in the browser, or on the iPhone). They are removed when you sign out, or when you clear this site’s data or delete the app.
- Course elevation (web): the green slopes and tee-to-green heights of the last 20 courses you played or looked at, so the hole map shows them without signal. This is public course data; it is removed when you sign out, or when you clear this site’s data.
- Your settings, such as theme, distance units, scoring mode, map imagery, “Plays like” and the error report switch.
- Demo mode: a cookie (fairway-demo, lasting 24 hours) turns on the sample golfer’s app. The sample data lives in memory, nothing is saved, and the cookie never gives access to real data.
Clearing this site’s data removes all of it. Scores that are still waiting to be sent would be lost, so let them sync first.
The iOS app
The Fairway iOS app uses the same account, database and access rules as the web app, keeps its own offline score queue, round copies, “Plays like” results, your bag’s clubs and patterns (with any import made with no signal until it is sent; both removed when you sign out) and settings on the phone, reads a shot file you pick in Files on the phone without keeping it, and sends anonymous error reports the same way (switch on the Profile tab). It has no analytics, advertising or crash reporting service and does not track you.
- Location: asked for “while using the app” only (precise), for distance to the green, the hole map and courses near you (in Explore courses only when you tap Near me; looking round a course never asks for it). Never in the background.
- Maps: drawn with Apple Maps, which receives the area being shown, in a round or while exploring a course (also without an account). The iOS app does not load the web app’s Google or USGS map imagery; “Plays like” works as described above.
- Camera: only to scan a round’s QR code. The image stays on the phone.
- Live Activity and widget: during a round, the Lock Screen, Dynamic Island and widget show the course, the group’s hole and its par, your score to par, holes played and the format’s headline (such as the match status). Anyone who can see your Lock Screen can see them. They are updated on the phone only, with no push service. Turn the Live Activity off with “Show on Lock Screen (Live Activity)” in Round settings, or in iOS Settings.
- Apple Watch: the watch app has no sign-in and makes no network request. It shows the round in progress your iPhone sends it and passes the scores you enter to the iPhone, which saves them like any other score.
- The iOS app does not send notifications.
The Android app
The Fairway Android app is an early test build. It is offered only to invited testers, through Google Play’s internal testing (it is not listed in the store), or installed directly on a phone. It uses the same account, database and access rules as the web app. Today it signs you in, lists your rounds, starts a round (course, format, players and their handicaps, teams) or joins one by its room code, shows the waiting room, and saves your profile (display name, handicap index and home course); these are stored as described under “What is stored”. Scoring on the round screen, maps and notifications are not built yet, so much of this page does not apply to it. It has no analytics, advertising or crash reporting service of its own and does not track you. This section is extended as the app gains features.
- Sign-in: handled by Clerk, as on the web, with an emailed code, a password, Google or Apple. Google and Apple sign-in open Clerk’s page in a browser tab over the app, so your phone’s browser, Clerk and whichever of the two you choose are involved, as they are on the web. Clerk also receives the app’s name and version.
- Staying signed in: Clerk’s software in the app keeps your session and a copy of your account details (such as your name and email address) on the phone, in the app’s own storage, encrypted with a key kept by Android. Signing out ends the session; uninstalling the app removes what is stored.
- Location: only for “Courses near me” when you pick a course, after you tap it and allow approximate location. The app asks Android’s own location service for one approximate position while it is open (never in the background, never precise) and sends it only to the app’s database to find nearby courses; it is not stored.
- On the phone, in the app’s own storage and kept apart for each account: a copy of each round you open (at most 8, none older than 14 days) so it loads with no signal; the queue for scores and side events that have not reached the server yet, with any the server refused until you retry or discard them; which account signed in last (so a round keeps working when the app starts with no signal); and your appearance setting (auto, light or dark). Signing out removes only the last account; the rest stays on the phone for when that account signs in again. Uninstalling the app removes all of it.
- Backups: the app’s data is left out of Android’s cloud backup and of copying to a new phone, so it stays on that phone.
- Permissions: internet access, checking whether there is a connection, and approximate location (asked for only when you tap “Courses near me”). The app does not ask for precise location, camera, contacts or notifications. The fingerprint and face unlock permission is listed because Clerk’s software includes it; the app does not use it.
- Other services: none besides Clerk and the app’s database, and Google or Apple if you sign in with them. Sharing a round’s invite opens Android’s share sheet with the room code and its link, and it goes only where you send it. The Android app does not load map imagery, does not make “Plays like” requests and does not send the anonymous error reports described above.
- Google Play: testers install and update the app through Google Play, which handles the download and updates under Google’s own privacy policy (policies.google.com/privacy). If you have allowed your phone to share usage and diagnostics data with Google, Google also collects crash and “app not responding” reports for apps installed from Google Play and shows the developer counts and anonymous technical details (Android vitals). The app itself sends Google nothing for this and adds nothing about you, your rounds or your scores.
How long data is kept
- Error reports: deleted after 14 days.
- Rounds that were never started and have no scores are deleted after 14 days without activity. Rounds with no activity for 7 days are marked abandoned; their scores are kept.
- Everything else is kept until it is deleted.
Deleting your account
Open your profile, choose “Delete account…” and type DELETE to confirm. This deletes your sign-in account (with Clerk), your profile, your saved groups, favorite courses, notification subscriptions, your bag and imported shot sessions, and the course corrections and green positions you sent, and every round, trip and league that only you (and guests you added) played. In rounds, trips and leagues you shared with other people, your player stays as a guest under the name already on the scorecard, linked to no account, so the others’ results stay complete; as with any guest, someone in that round can later link it to their own account. A round, trip or league you ran is handed to another player in it. Anonymous error reports never held your user id, so they are not touched and expire after 14 days. It cannot be undone. The iOS app has the same button on its Profile tab. The Android app does not have it yet: delete your account from the web app’s profile page with the same sign-in. You do not need the app for this: any browser will do.
How to delete your accountChanges to this page
When what the app collects or sends changes, this page changes with it and the date at the top moves.