CategorySports data / SEO
StatusNew · Reference site
Coverage1,900+ games, 2012–2025
Sectionsseasons, teams, players, records, head-to-head
Data sourceUFA Stats API (used with permission)
Built byUnbenchable
the story
UFA Almanac exists because the historical information about the league was almost impossible to find in one place. Season standings, playoff results, career totals, franchise lineage — the pieces were scattered across old pages, broken links, and live-only feeds. As someone who had played the game at the highest level and then built a fantasy product around it, the frustration of not being able to just look things up was enough to start a separate site.
The Almanac is a reference site, not a product. No accounts, no game state, no transactions. It catalogs every UFA player, every game, and every stat from 2012 onward, tracks franchise identity across rebrands, and documents the methodology openly on an about page. The visual direction is deliberately monospace and austere — this is supposed to read like a reference, not a pitch.
It is also a sister project to Unbenchable. The two share a data foundation and the same operator, but they are different products on purpose: one is the playable game, the other is the public record. Keeping them separate means the Almanac can stay fast, free, and linkable forever, which is the whole point of a reference site.
Apr 2026 · Feature
Built a full Combat Candy Flexecutioner of the Game
Every game can now crown a single-game MVP using the Unbenchable fantasy model. Goals, assists, blocks, completions, hucks, turnovers, and callahans all feed the score, with a win bonus tuned so the featured player almost always comes from the winning side without making the result feel fake.
Highlights:
- single-game MVP picker built on the fantasy scoring model
- callahans get a real spike in value instead of being treated like normal goals
- win bonus tuned against a large real-game sample
Apr 2026 · Storytelling
Achievement badges now explain why the game picked that player
The featured performance cards do not just name a winner now. They also auto-tag the stat line with badges like CALLAHAN, 7-GOAL GAME, HAT TRICK, PLAYMAKER, or LOCKDOWN so the page tells a story at a glance.
Apr 2026 · Social cards
Generated proper 1200×630 social cards for every game
Every game can now render a share-ready image using the site stack itself. Same terminal-ish red/black visual system, same branding, same typography direction — no manual design pass required to make a game link look intentional.
Apr 2026 · Distribution
Game links now unfurl with the right card automatically
Open Graph and Twitter metadata are wired so that when a game URL gets dropped into Discord, iMessage, X, Bluesky, or Slack, it carries the Flexecutioner card with it. That is the kind of boring plumbing that makes a static stats site feel much more alive.
Apr 2026 · Sharing
Every game page now has eight real share actions
X, Facebook, Threads, Bluesky, Instagram, native share sheet, copy link, and download all live on the page now. The Instagram path is the fun part: on mobile it uses the native share flow so the PNG can move straight into the composer instead of making people play screenshot games.
Apr 2026 · Data correctness
Callahans are finally being detected the right way
The event feed turned out to encode callahans differently than normal goals, which is exactly the kind of tiny data-detail lie that can poison a stats product if you miss it. Fixing that means the special plays now show up as special plays instead of getting flattened into normal scoring noise.
Apr 2026 · Game context
Breaks now show up in the scoring plays section
The Almanac now recognizes defensive breaks by reading same-team consecutive scores within a quarter as a possession story instead of just a scoreboard list. Small change, but it makes the play log feel smarter and more like the sport it is describing.
Apr 2026 · Homepage
The homepage now wears a pulsing green DATABASE LIVE indicator
Under the tagline there is now a little live-status block showing season count, game count, and the latest sync date pulled from the real records cache. It is a tiny thing, but it makes the site feel less like a static brochure and more like a living archive.
Apr 2026 · Discovery
Featured Game rotates hourly from historically interesting matchups
The homepage now rotates through close playoff games, then close late-season games, then any close game, changing deterministically by hour. That means the front page feels alive without turning into random chaos or requiring editorial babysitting.
Apr 2026 · Ingest pipeline
Refactored the ingest path for the 2026 season
The historical backfill path got split cleanly so the current season can be re-pulled on a schedule instead of living as a one-off manual concern. The sync cadence is intentionally narrow because UFA games cluster on weekends, which is a nice example of the cron matching the sport instead of cargo-culting “run every day because servers can.”
Biggest highlights:
- current-season ingest is now its own reusable path
- nightly refresh can target the live year without replaying everything
- schedule follows the real game calendar instead of pretending daily churn matters
Apr 2026 · Launch
UFA Almanac is live
Every UFA player, every game, every stat from 2012 to the present, in one reference site. Built because there was no good way to see the league's history all in one place, and that should not be a thing people have to put up with.