MatchID
Face recognition for the faces you can see. Jersey OCR for the helmets you can't. Both run when you upload. Names go in the file on download.
The workflow
Three steps. The tagline is the workflow.
Files go to R2 directly. Roster lives in your team library, ready to match.
Trained for sports photography. Confidence scores surface for review, or set auto-approve.
FTP, share link, ZIP. The file leaves the platform with names attached.
The math
Per-image pricing starts cheap. The bill compounds through the season. Ours doesn't move.
Math assumes 3¢ per image, the high end of typical per-credit pricing. Photo counts vary by sport, coverage, and shooter. The point: credits put a tax on volume. Unlimited removes it.
Face recognition struggles with sports photography. Motion blur. Awkward angles. Hands in the frame. Eyes closed mid-stride. Most general-purpose face APIs trained on portrait photography. They don't translate.
We trained MatchID for the kind of photos you take. Sideline distance. Helmets pushed back. Fast pans. Threshold settings let you tune for your tolerance — relax it for helmet sports where you need recall, tighten it for face-visible sports where you need precision.
Football. Lacrosse. Hockey. Catchers in the dirt. The face is hidden but the number is visible. Jersey OCR reads it.
A helmeted face alone scores lower than a clean one. Fewer features, more occlusion. Jersey OCR closes the gap — when face confidence dips, the number raises the match. Together they push helmet-sport accuracy well past what face recognition can do alone.
We trained OCR to read numbers off jerseys, helmet decals, chest plates, and shoulder patches. Numbers match to roster positions. Names attach.
Improves over time
Star a strong match and it becomes a reference photo. The library grows. Accuracy climbs.
A confidence score surfaces. Approve the good ones, reject the misses. Takes a second per athlete.
Star a clean match and it joins that athlete's reference library in your account. Same face next gallery, easier and faster.
More references per athlete. Borderline matches resolve faster. Helmet sports get the biggest boost.
Per-client, by design. Your reference library lives in your account and only benefits you. No global headshot database. No model trained across customers. The library grows from the references you add. We don't train ours on your data.
On download, names embed as XMP metadata. Standard XMP, not a proprietary format. Photo Mechanic reads them. Lightroom reads them. Capture One reads them. Photoshop reads them.
The names travel with the photo. Not stuck in our platform. Not behind a login. Not lost when you switch tools. If the photo gets emailed, archived, or republished, the metadata goes with it.
This is the only way we want to deliver identification.
Sports first
Sports is where we started. The product works wherever you need names attached to faces.
Plus dance studios, school productions, music groups, conferences, corporate events, and wedding parties.
Per-client by design
No global index. MatchID identifies players against your roster. There's no cross-client database of athletes. There's no shared face library. There's no model trained on your photos for someone else's benefit.
Each client account is its own MatchID context. Your data stays yours.
What we don't charge for
MatchID at $10/mo. Same features at $800/mo.
See Pricing →Common questions
Depends on the photos. Face-visible sports like volleyball and basketball: high accuracy out of the box. Helmet sports: depends on how often jersey numbers are visible. We let you tune the confidence thresholds for your tolerance.
You catch them in review. The interface shows pending matches with confidence scores and the source crop. Reject the bad ones. Approve the good ones. The auto-approve threshold lives in your settings.
A typical Saturday college football gallery (a few hundred photos) processes in under 30 minutes. Larger galleries scale proportionally. Photos process in parallel on the VPS.
Yes, from the references you add. Star a strong match and it joins that player's embedding library, so future galleries match better. The learning stays inside your client account.
Face recognition still works on partial occlusions. Sunglasses and masks reduce accuracy but don't break it. Jersey OCR is your backup when the face isn't legible.