Pheno is a Chrome extension that reads coat-colour genetics from your Horse Reality horse profiles and shows them as a panel inside the page. The genetics analysis itself runs entirely in your browser. Three optional things send data off your device: a free account (so you can save horses to a collection), the cosmetic sync backend, and opt-in usage analytics. Each is explained below.

What Pheno reads from Horse Reality

Pheno does not log into HR for you, store your HR credentials, or read any other site.

Your account (Clerk)

Saving horses requires a free account. Sign-in is handled by Clerk, our authentication provider, which stores your email address (and, if you use a social login, the basic profile it returns) to manage your login. The first time you save a horse, we also record your Horse Reality player id against your account so the server can confirm you only add horses you actually own. Clerk acts as a data processor; their privacy policy is at clerk.com/legal/privacy.

Your collection (saved horses)

When you click Add to collectionin the panel, Pheno sends that horse's public profile details to our backend, stored against your account in a Neon Postgres database. That record contains: the horse's life number, name, recognised colour, base colour, sex, breed, the registered owner's player id, inbreeding coefficient, the genotype and hidden-modifier read-out, what it can pass on, and the URLs of its passport image layers. If you organise horses into breeding groups or save dam × sire pairings, the group names and any goal notes you type are stored too.

This data is private to your account — it is returned only to you when you're signed in, and is never made public or shared. You can remove any horse, group, or pairing from the portal, or delete everything at once (see Deleting your data below).

What Pheno stores in your browser

The cosmetic sync backend (Vercel + Neon Postgres)

When you, as the registered owner of a horse, toggle a cosmetic add-on or pick a shade, Pheno sends those settings to a small backend so that every other Pheno user viewing the same horse profile sees what you set. The request body contains: the horse's life number (the same number visible in the HR URL), your HR player id (so the server can record who claimed the write), and the cosmetic settings themselves. No breeder name, no email, no IP-based identity beyond what every Vercel request log captures and discards after a short retention.

Reads of this cosmetic data are public — any Pheno user looking at the same horse can fetch the same record.

Usage analytics (PostHog) — anonymous by default, identified when you opt in

Pheno sends usage events to a PostHog project so we can see how it's actually used and what's breaking for people. By default these are anonymous: each event is recorded as a "personless" event against a random id with no profile, no email, and nothing tying it to who you are. The first time the panel renders, a banner asks whether you'd like to share stats tied to your account. If you decline (or never choose), collection stays anonymous. If you opt in, events are attributed to your account — PostHog records them against your Clerk user id, with your email attached as a person property once you sign in. You can change your mind any time via the "Usage analytics" row in the panel footer.

The same applies to the collection & breeding web app: product events (saving or removing a horse, creating a pairing or breeding group, viewing a foal report) are recorded the same way — anonymous until you opt in, then tied to your account. No horse names, breeder names, genotypes, or images are ever sent on any event.

Pheno sends exactly these event types, and nothing else:

When you're opted in, each event is sent with your Clerk user id (or, before you sign in, a random id later merged into your account) and a timestamp, and your email rides along as a person property via PostHog's identifyAPI. When you're not opted in, the very same events are sent against a random anonymous id with $process_person_profile: false, so no profile and no email are ever recorded. Either way, Pheno never sends horse names, breeder names, genotypes, or images. PostHog is the data processor; their privacy policy is at posthog.com/privacy.

How to opt out

Deleting your data

You are in control of everything tied to your account:

Children

Pheno is not directed at users under 13.

Contact

Pheno is built by player SMR (Renwick Performance Horses). For questions or a data request, find me in-game or by replying to whichever channel pointed you here.