About Off the Upright
What is a doink?
A doink is when a kicked ball strikes the goal post (upright, crossbar, stanchion, camera, or even the base). It might bounce through for a score or bounce away for a miss. Either way, everyone in the stadium heard it.
Why track doinks?
Despite being one of the most recognizable plays in the NFL, doinked kicks aren't tracked by any major stats provider. I started this project with a hunch: that doinked kicks have a psychological impact on the opposing team. After watching Matt Prater doink an extra point through for the Bills and knowing the Bengals were done, I had to find out if the data backed it up.
The data didn't exist - so I started building it.
For the long version of how this project got built, including the part where I learned my own theory wasn't quite right, read the first DoinkTale.
How is the data collected?
Every doink in this database is manually verified against original game footage. I don't rely on automated detection and each entry is confirmed by a human reviewing the play.
I cross-reference broadcast replays, play-by-play logs, and historical scorebug graphics to confirm what game I'm looking at. For older games where broadcast quality varies, the network-specific scorebug reference guides tell me what era I'm in. Community submissions get the same treatment before they go in.
When a doink is later found to be incorrect and removed from the database, I record it on the errata page with the reason for the correction. Silent deletion is how data quality rots; transparent correction is how it gets better.
If you know of a doink we're missing, submit it - I review every one. I don't claim to have every doink in NFL history. Not yet, anyway.
What counts as a doink?
The ball must visibly strike the upright, crossbar, or other element of the goal post. Kicks that hit and go through count (Good). Kicks that hit and miss count (No Good). Kicks that pass cleanly through or miss wide without contact don't count. Nullified plays (timeouts, penalties, dead balls) are excluded from the dataset, though I sometimes preserve the story in the game notes.
A brief history of the doink
Doinks are as old as the goalpost itself. The trouble is that the goalpost (and the kicker, and the rules) keep changing.
Before 1974, the goalposts sat on the goal line - right in the middle of the action. Shorter kicks hit the posts at full velocity, and the uprights were basically an extra defender. Doinks were almost certainly more common, but good luck finding the footage.
The rise of soccer-style kickers - pioneered by Hall of Famer Jan Stenerud in the late '60s - changed things too. More spin, more curve, different bounce behavior off the uprights compared to the old straight-on toe kicks.
The last game ever played with goalposts on the goal line was the 1974 Pro Bowl, where Nick Mike-Mayer's 45-yard miss off the upright and crossbar became the last doink of the goal-line era. When the posts moved to the end line that fall, the whole geometry of kicking changed: longer flight path, different angle of approach, fewer direct collisions with iron.
But when did they get so tall?
The "slingshot" design the NFL adopted in 1967 (named for its profile from the side) already had telescoping uprights that could reach 30 feet. By the time the rule made it official, the maintenance crews had already done the work, making this a non-story.
The move to taller posts wasn't about the kickers. It was about the refs. Anything happening above the upright is a judgment call, and the league prefers not to make those. Taller posts buy back (some) certainty.
In 2015, the NFL moved the extra point back from the 2-yard line to the 15-yard line, turning a near-automatic 20-yard kick into a 33-yard attempt. The change surfaced a whole new category of doinked XPs that had been basically extinct for decades.
The title chart on the first DoinkTale visualizes the rule change's impact directly: 177 doinks form the peak at the 33-yard line in the 2015–2026 era, while the 1974–2014 era has more of a molehill.
Coverage: Off the Upright currently tracks 896 verified doinks spanning the 1974–2025 seasons. The earliest verified doink with footage is from the 1975 Super Bowl, with regular season coverage from 1988 onward, with the most complete coverage starting in 1999. I'm always expanding backwards when video evidence surfaces, so if you have knowledge (or even better, footage) of doinks not recorded here, please submit it here.
The 1974 Pro Bowl is the last game outside the explicit tracking scope. Mike-Mayer's doink is documented via the official NFL game book and contemporary newspaper accounts and lives on a standalone page since Pro Bowl games don't fit the franchise-based tracking model.
Can I use this data?
Yes. Download the full dataset as CSV for research, analysis, or settling an argument. If you reference the data publicly, a link back to offtheupright.com is appreciated.
RSS Feeds
Subscribe to stay current on the doink database:
- Latest Doinks - the 50 most recent doinks by game date
- Recently Added & Updated - new entries and corrections as they happen
Attributions & Credits
This project wouldn't be possible without the work of NFL historians, digital archivists, and other passionate NFL content creators, especially doinkback.com, Baseballer24, Savage224 Gaming, and Savage Brick Sports on YouTube.
For game data, roster verification, and large-scale doink discovery, I rely on two open sports data projects that are foundational to Off the Upright and countless other passion projects:
- Pro Football Reference for game scores, schedules, and historical context, and
- nflverse for the play-by-play data that helped identify hundreds of previously uncatalogued doinks.
I'm grateful to both communities for keeping NFL history open and accessible.
Notes for fellow nerds
A few callouts that don't quite fit anywhere else but that I'm proud of:
No trackers. No tracking libraries (Google, Meta, etc.), no cookies (except for one I use to stay logged in as an admin), and no ads. I wanted a site I'd want to visit myself.
Visitor counts are hashed. For my own curiosity, I do track page visits by hashed IP using SHA-256 with a daily-rotating salt, checking if that hash has been seen today, and incrementing a counter. Raw IP is never stored. The next day, the salt changes and yesterday's hashes become meaningless. It's the simplest way I could think of to count people without knowing who they are.
Submissions are hashed too. If you submit a doink, your IP gets hashed before storage so I can rate-limit spam without keeping the raw address. The submission hash uses a static salt (not the rotating one) because rate limiting needs to match the same person across time.
The whole site is PHP talking to a MySQL database. No framework, no CMS, no build step. The data itself is a set of tables I'll happily export for anyone who asks, but the CSV is always up to date with the latest doinks.
If you're reading this, you're exactly the kind of person this site is for. Thanks for caring about something weird.
- Mathew
Contact
Have a question, tip, or just want to talk doinks? contact@offtheupright.com