NCAA Wrestling Data: analysis of the championship archive
Findings to start with
- Historical formats change the answer. A query for source round 1st yields 894 finals and omits every champion in 1936 and 1948. Adding explicitly sourced award records raises the total to 909 without adding invented matches.
- The leading program depends on the era. Oklahoma State leads the full snapshot with 147 individual titles. In 2010–2025, Pennsylvania State took 44 of 160 available titles (27.5%). Raw cumulative totals and share within an era answer different questions.
- Carter Starocci has five title awards in the archive. The identity-linked champion table supports repeated-title and cross-weight questions without interpreting an athlete's entire career.
- Seeded upsets are common but denominator-sensitive. The conditional rate is 30.0%, restricted to two distinct positive recorded seeds. It says nothing about the many historical zero-seed rows.
- Recent scoring changed sharply. Average total points in scored DEC/MD/SD/TF outcomes moved from 9.24 in 2023 to 11.46 in 2024. The rule change altered the scoring scale and other conditions, so this is not a causal estimate.
- Data quality can change a historical title. The reversed 1928 135-pound final shifts a title from Oklahoma State to Iowa State. Raw preservation plus cited overlays makes that change inspectable.
What the data supports
The source contains 40,035 result rows, 40,012 single recorded outcomes with named competitors, and 95 tournament years. The analysis identifies 909 individual championship awards: 894 from source finals and 15 supplemented from archived 1936/1948 placement lists. It represents 323 normalized program labels, 24,886 observed tournament entries, and 13,303 conservatively separated wrestler entities. The 13,300 distinct nonblank source wrestler IDs are not a fully resolved people registry.
The calendar gaps are 1943, 1944, 1945, 2020. These years have no source rows and must appear as gaps, not zero-title tournaments. The archive ends with the 2026 tournament. Having a record for each year and weight does not independently prove that every historical bout is complete.
Bracket topology is separately reviewed rather than inferred from result order. Verified production graphs cover all 8 1950 weights, all 8 1951 weights, 8 of 10 1952 weights (not 130 and 137 pounds), 7 of 10 1953 weights (not 123, 137 and 157 pounds), all 10 1954 weights, all 10 1955 weights, all 10 1956 weights, 9 of 10 1957 weights (not 167 pounds), 9 of 10 1958 weights (not 177 pounds), all 10 1959 weights, all 10 1960 weights, all 10 1961 weights, all 10 1962 weights, all 10 1963 weights, all 10 1964 weights, all 10 1965 weights, all 11 1966 weights, all 11 1967 weights, all 11 1968 weights, 10 of 11 1969 weights (not 177 pounds), all 10 1970 weights, all 10 1971 weights, 8 of 10 1972 weights (not 150 and 450 pounds), all 10 1973 weights, all 10 1974 weights, 8 of 10 1975 weights (not 142 and 167 pounds), 8 of 10 1976 weights (not 142 and 158 pounds), all 10 1977 weights, all 10 1978 weights, all 10 1979 weights, all 10 1980 weights, 8 of 10 1981 weights (not 134 and 190 pounds), 9 of 10 1982 weights (not 190 pounds), all 10 1983 weights, all 10 1984 weights, all 10 1985 weights, all 10 1986 weights, all 10 1987 weights, all 10 1988 weights, all 10 1989 weights, all 10 1990 weights, all 10 1991 weights, all 10 1992 weights, all 10 1993 weights, all 10 1994 weights, all 10 1995 weights, all 10 1996 weights, all 10 1997 weights, 9 of 10 1998 weights (not 126 pounds), all 10 1999 weights, all 10 2000 weights, 8 of 10 2001 weights (not 141 and 165 pounds), 9 of 10 2002 weights (not 285 pounds), all 10 2003 weights, all 10 2004 weights, all 10 2005 weights, all 10 2006 weights, all 10 2007 weights, all 10 2008 weights, 9 of 10 2009 weights (not 133 pounds), all 10 2010 weights, all 10 2011 weights, all 10 2012 weights, all 10 2013 weights, all 10 2014 weights, 9 of 10 2015 weights (not 197 pounds), all 10 2016 weights, all 10 2017 weights, all 10 2018 weights, all 10 2019 weights, all 10 2021 weights, all 10 2022 weights, all 10 2023 weights, all 10 2024 weights, all 10 2025 weights and all 10 2026 weights: 58931 nodes, 117862 slots, and 73310 advancement routes, including 21959 byes without creating match rows. Every other competition retains results-by-round until its source page is audited.
Program history and concentration
The table counts individual weight-class titles, not team championships. Titles are less affected by changing field sizes than raw win totals, but each era offered a different number of weight classes.
| school | individual_titles | recorded_wins | recorded_losses | falls | observed_entries |
|---|---|---|---|---|---|
| Oklahoma State | 147 | 2425 | 1135 | 353 | 839 |
| Iowa | 85 | 1976 | 901 | 269 | 635 |
| Iowa State | 72 | 1705 | 962 | 249 | 646 |
| Oklahoma | 68 | 1591 | 986 | 234 | 664 |
| Pennsylvania State | 65 | 1547 | 839 | 186 | 584 |
| Lehigh (PA) | 28 | 1051 | 846 | 145 | 529 |
| Minnesota | 25 | 1187 | 784 | 161 | 473 |
| Illinois | 25 | 859 | 678 | 94 | 427 |
| Ohio State | 25 | 837 | 601 | 103 | 364 |
| Michigan State | 25 | 814 | 653 | 123 | 418 |
| Cornell (NY) | 25 | 673 | 498 | 79 | 291 |
| Michigan | 24 | 1190 | 802 | 154 | 499 |
| Northern Iowa | 23 | 866 | 807 | 121 | 481 |
| Wisconsin | 18 | 769 | 645 | 85 | 377 |
| Pittsburgh (PA) | 17 | 628 | 603 | 69 | 365 |
Leading programs in each chosen historical window:
| era | school | titles | available_titles | title_share |
|---|---|---|---|---|
| 1928–1942 | Oklahoma State | 45 | 117 | 38.5% |
| 1946–1969 | Oklahoma State | 39 | 232 | 16.8% |
| 1970–1989 | Iowa | 30 | 200 | 15.0% |
| 1990–2009 | Iowa | 33 | 200 | 16.5% |
| 2010–2026 | Pennsylvania State | 44 | 160 | 27.5% |
These windows are descriptive choices, not modeled regime changes. School labels are normalized only for case/whitespace, and predecessor institutions are not automatically combined. Participation and eligibility changed over the period; the table is not a causal ranking of coaching or program quality.
Repeated individual champions
| champion | individual_titles | title_years | schools |
|---|---|---|---|
| Carter Starocci | 5 | 2021,2022,2023,2024,2025 | Pennsylvania State |
| Pat Smith | 4 | 1990,1991,1992,1994 | Oklahoma State |
| Cael Sanderson | 4 | 1999,2000,2001,2002 | Iowa State |
| Kyle Dake | 4 | 2010,2011,2012,2013 | Cornell (NY) |
| Logan Stieber | 4 | 2012,2013,2014,2015 | Ohio State |
| John 'Yianni' Diakomihalis | 4 | 2018,2019,2022,2023 | Cornell (NY) |
| Aaron Brooks | 4 | 2021,2022,2023,2024 | Pennsylvania State |
| Earl McCready | 3 | 1928,1929,1930 | Oklahoma State |
| Conrad Caldwell | 3 | 1929,1930,1931 | Oklahoma State |
| Jack VanBebber | 3 | 1929,1930,1931 | Oklahoma State |
| Rex Peery | 3 | 1933,1934,1935 | Oklahoma State |
| Ross Flood | 3 | 1933,1934,1935 | Oklahoma State |
| Wayne Martin | 3 | 1934,1935,1936 | Oklahoma |
| Joe McDaniel | 3 | 1937,1938,1939 | Oklahoma State |
| Stanley Henson | 3 | 1937,1938,1939 | Oklahoma State |
| David Arndt | 3 | 1941,1942,1946 | Oklahoma State |
Identity totals inherit unresolved source-ID splits and cannot be treated as authoritative career totals without checking the wrestler's individual records. Titles in other divisions are outside this snapshot even when a wrestler competed in multiple NCAA divisions.
Championship tournament wins and pins
These are wins in the supplied championship archive, not regular-season or complete college-career records. A wrestler's opportunity to accumulate wins depends on years of eligibility, bracket format, consolations, and byes.
| wrestler_name | recorded_wins | recorded_losses | observed_tournaments | falls |
|---|---|---|---|---|
| Carter Starocci | 25 | 0 | 5 | 3 |
| Keegan O'Toole | 25 | 3 | 5 | 6 |
| Parker Keckeisen | 24 | 4 | 5 | 0 |
| Myles Amine | 24 | 6 | 5 | 1 |
| Mark Churella | 22 | 1 | 4 | 10 |
| MIke McMullan | 22 | 4 | 4 | 2 |
| John Fisher | 22 | 7 | 4 | 1 |
| Cohlton Schultz | 22 | 9 | 5 | 4 |
| Lucas Byrd | 22 | 9 | 5 | 2 |
| Pat Smith | 21 | 0 | 4 | 2 |
| Ed Ruth | 21 | 1 | 4 | 7 |
| David Carr | 21 | 2 | 4 | 0 |
| Eric Juergens | 21 | 2 | 4 | 3 |
| Jake Herbert | 21 | 2 | 4 | 6 |
| Jim Zalesky | 21 | 2 | 4 | 5 |
All-fall title paths with at least four recorded championship-side wins:
| year | champion | school | weight | falls |
|---|---|---|---|---|
| 1936 | Wayne Martin | Oklahoma | 134 | 4 |
| 1948 | Bill Koll | Northern Iowa | 147 | 5 |
| 1948 | Glen Brand | Iowa State | 174 | 4 |
| 1948 | Verne Gagne | Minnesota | 191 | 5 |
| 1956 | Dan Hodge | Oklahoma | 177 | 4 |
| 1969 | Dan Gable | Iowa State | 137 | 5 |
| 1973 | Chris Taylor | Iowa State | Unlimited | 5 |
| 1979 | Bruce Kinseth | Iowa | 150 | 5 |
| 1980 | Howard Harris | Oregon State | Unlimited | 5 |
This definition explicitly excludes unrecorded byes and does not infer a pin for a forfeit, default, or unknown method.
Seeding and upsets
Among 12,483 recorded outcomes where both seeds are positive and distinct, 3,746 are wins by the numerically larger seed: 30.01%. This is a rate conditional on recorded seeds. It is not the chance that an arbitrary tournament match is an upset.
| round_code | eligible_bouts | upsets | upset_rate |
|---|---|---|---|
| Champ 8 | 1892 | 461 | 24.4% |
| Champ 16 | 1776 | 430 | 24.2% |
| Champ 4 | 1304 | 364 | 27.9% |
| Champ 32 | 1143 | 212 | 18.5% |
| Consi 8 #2 | 950 | 364 | 38.3% |
| Consi 4 #2 | 922 | 314 | 34.1% |
| 1st | 718 | 217 | 30.2% |
| Consi 16 #2 | 704 | 244 | 34.7% |
| Consi 4 #1 | 675 | 232 | 34.4% |
| Consi 16 #1 | 584 | 198 | 33.9% |
| 3rd | 553 | 224 | 40.5% |
| Consi 8 #1 | 446 | 163 | 36.5% |
| 5th | 399 | 175 | 43.9% |
| 7th | 280 | 93 | 33.2% |
| Consi 32 #2 | 68 | 18 | 26.5% |
| Champ 64 | 68 | 37 | 54.4% |
| 2nd | 1 | 0 | 0.0% |
Zero appears extensively in historical seed fields. It cannot reliably distinguish unseeded entrants from years without available seeding. The number seeded expanded over time, so changes in the conditional upset rate can reflect coverage and field composition. Entry-level title conversion uses only a consistent positive seed within an entry.
Largest recorded seed gaps in championship-final upsets:
| year | weight_label | winner_name | winner_seed | loser_name | loser_seed |
|---|---|---|---|---|---|
| 2016 | 174 | Myles Martin | 11 | Bo Nickal | 1 |
| 2015 | 133 | Cody Brewer | 13 | Cory Clark | 3 |
| 2009 | 165 | Jarrod King | 12 | Andrew Howe | 2 |
| 2026 | 149 | Aden Valencia | 10 | Shayne Van Ness | 1 |
| 2011 | 184 | Quentin Wright | 9 | Robert Hamlin | 2 |
| 2019 | 165 | Mekhi Lewis | 8 | Vincenzo Joseph | 2 |
| 2008 | 157 | Jordan Leen | 8 | Michael Poeta | 2 |
| 2003 | 184 | Jake Rosholt | 10 | Scott Barker | 4 |
| 2000 | 141 | Carl Perry | 8 | Michael Lightner | 2 |
| 1980 | 190 | Noel Loban | 8 | Dan Severn | 2 |
| 1976 | 190 | Evan Johnson | 7 | Frank Santana | 1 |
| 1973 | 134 | Don Rohn | 8 | Bobby Stites | 2 |
Result methods, scoring, and era effects
| result_code | source_rows | recorded_outcomes | first_year | last_year |
|---|---|---|---|---|
| DEC | 27948 | 27948 | 1928 | 2026 |
| FALL | 5279 | 5279 | 1928 | 2026 |
| MD | 4451 | 4451 | 1976 | 2026 |
| TF | 849 | 849 | 1985 | 2026 |
| SD | 613 | 613 | 1972 | 1987 |
| DFT | 404 | 404 | 1929 | 2026 |
| MFFT | 264 | 264 | 1928 | 2026 |
| UNKNOWN | 140 | 124 | 1929 | 1982 |
| FFT | 52 | 48 | 1931 | 2022 |
| DQ | 29 | 29 | 1978 | 2026 |
| DEF | 2 | 2 | 1928 | 1928 |
| DBL DFT | 2 | 0 | 1941 | 1941 |
| MDFT | 1 | 1 | 1949 | 1949 |
| DFFT | 1 | 0 | 1981 | 1981 |
Pin rates among recognized DEC/MD/SD/TF/FALL outcomes:
| decade | eligible_bouts | falls | fall_rate |
|---|---|---|---|
| 1920 | 94 | 26 | 27.7% |
| 1930 | 929 | 308 | 33.2% |
| 1940 | 847 | 243 | 28.7% |
| 1950 | 2021 | 314 | 15.5% |
| 1960 | 3251 | 470 | 14.5% |
| 1970 | 4644 | 783 | 16.9% |
| 1980 | 5190 | 694 | 13.4% |
| 1990 | 5777 | 613 | 10.6% |
| 2000 | 6300 | 809 | 12.8% |
| 2010 | 6314 | 680 | 10.8% |
| 2020 | 3773 | 339 | 9.0% |
These denominators exclude forfeits, defaults, disqualifications, unknown methods, and missing competitors. The 1920s, 1940s, and 2020s contain fewer tournament years. Historical SD is preserved as its own source code; no modern bonus-point interpretation is imposed.
Recent scoring among scored DEC/MD/SD/TF single outcomes:
| year | eligible_bouts | avg_total_points | avg_margin | margin_at_most_two |
|---|---|---|---|---|
| 2019 | 576 | 11.04 | 5.10 | 183 |
| 2021 | 564 | 10.69 | 5.08 | 196 |
| 2022 | 570 | 10.09 | 4.39 | 225 |
| 2023 | 566 | 9.24 | 4.21 | 229 |
| 2024 | 581 | 11.46 | 5.71 | 156 |
| 2025 | 571 | 10.86 | 5.46 | 167 |
| 2026 | 579 | 11.45 | 5.69 | 146 |
The NCAA changed takedowns to three points for the 2023–24 season and also changed other rules (NCAA announcement). The 2024 championship is the first affected year in this archive. Before/after score differences do not identify a causal effect: scoring definitions, athletes, match composition, and other rules changed together. The workbook contains no takedown-level event data.
Interactive Championship Atlas
The public page turns individual championships into a program-by-year heatmap. A program or year selection reveals the title winners; each champion opens their recorded championship-side path. Year ranges, a program filter, and shareable URL state let readers explore a particular era or program. Counts derive from the same underlying championship records used above, so the website and database reconcile.
Data quality findings
| issue_code | issue_count | resolution |
|---|---|---|
| documented_correction | 359 | applied_overlay |
| name_multiple_source_ids | 210 | no_automatic_merge |
| missing_result_method | 140 | retained_for_review |
| team_score_bye_inference_disagreement | 110 | workbook_bye_marks_decide |
| team_score_reference_mismatch | 102 | retained_for_review |
| source_note | 39 | retained_for_review |
| missing_competitor | 35 | retained_for_review |
| not_single_known_outcome | 23 | excluded_from_win_loss_rates |
| team_score_reference_result_code_differs | 17 | archive_value_retained |
| historical_award_supplement | 15 | sourced_award_no_invented_final |
| team_score_decision_scored_by_margin | 14 | margin_meets_sheet_threshold |
| source_id_name_conflict | 11 | split_by_source_id_and_name |
| team_score_scored_without_recorded_opponent | 11 | single_known_winner_scored |
| team_score_reference_row_not_in_archive | 7 | workbook_only_row_candidate_correction |
| team_score_reference_round_differs | 4 | archive_value_retained |
| school_case_variants | 3 | case_only_normalization |
| same_source_id_both_sides | 2 | split_by_name |
| seed_conflict | 2 | retained_for_review |
| team_score_reference_school_unresolved | 2 | retained_for_review |
| missing_source_id | 1 | isolated_within_tournament_weight |
| multiple_schools_same_event | 1 | retained_for_review |
| source_formula_error | 1 | preserved_in_source_check_value |
| team_score_bonus_margin_below_threshold | 1 | retained_for_review |
Missingness on the match table:
| missing_winner | missing_loser | incomplete_scores | unknown_method | excluded_from_recorded_wins |
|---|---|---|---|---|
| 12 | 23 | 7102 | 140 | 23 |
Externally supported overlays retain the untouched source row. The two historical ones:
- Match 15, 1928 135-pound final: Arthur Holding defeated J. Brice Moore, reversing the source winner/loser. The archived bracket agrees in both its champion list and final.
- Match 30, 1928 158-pound final: the archived fall time is 9:05; the workbook has 9:15.
The other 287 come from checking modern weights against their archived final brackets (2019, 2022, 2024): 23 entrant seeds that the workbook crossed between similarly named wrestlers at 2022 141, 2024 184, 2024 197 and 2024 285, and the 2019 184-pound pigtail, which the workbook files as a first-wrestleback bout. Each is listed with its page in data/corrections.json.
Evidence: 1928 brackets, pages 1, 4 and 6, compiled by wrestlingstats.com and hosted by the National Wrestling Hall of Fame. These selected corrections demonstrate that source completeness should not be confused with accuracy. This analysis did not audit all 39,395 rows against original brackets.
The five non-case-only source-ID conflicts are split by ID and normalized name. Four matches use the same nonblank source ID on both sides. Missing IDs with known names are isolated within the tournament and weight. Similar names and identical names across different IDs are not fuzzy-merged. This favors avoiding false joins over obtaining a deceptively precise count of people.
School case variants are merged with a source-alias table. Cornell College (IA) and Cornell (NY) remain distinct. Historical weight code 450 is displayed as Unlimited following the archived 1928 bracket, with no numeric upper limit.
Early tournaments include separate second-place bouts. The final loser is assigned second only when that weight has no separate second-place bout. Automatic historical placements are not reconstructed. R1–R7 are ordered numerically for individual path display, without inventing exact within-round chronology.
A final-bout-only analysis misses all champions in 1936 and 1948. Their 15 weights use R1–R7 rather than 1st. The championship_award table links the seven champions in the 1936 archived placement list and eight in the 1948 list to existing source entries. Their final_match_id remains NULL. This adds award evidence, not 15 fabricated bouts. Historical champions can have a recorded loss, so taking the last winner or requiring an unbeaten record is not a valid substitute.
Questions this data cannot answer alone
It does not supply complete regular-season records, recruiting resources, coaching tenure, financial spending, team scoring rules by era, official team totals, or a full event sequence. It cannot establish why a program dominated, measure a causal rules effect, or fully reconstruct historical automatic placements without additional sources.
How this analysis was made
Snapshot: 1928–2026. Analysis produced September 13, 2026. Match-result findings derive from the source datasets listed in data/raw/datasets.json plus the 289 corrections in data/corrections.json. Championship counts also use the 15 sourced historical awards in data/historical_awards.json, and bracket-topology metrics use the separately reviewed NWHOF evidence recorded in data/curation/bracket_formats.json. Every section has reusable CSV output under data/processed/analysis and runnable SQL in sql/analysis.sql. The database also contains analysis_metric and the analytical views.
era_titles.csv and title_concentration.csv hold the era-by-era program shares behind the leading-program table. fastest_pins.csv holds the elapsed fall times behind the pin-rate table; TA values are time advantage, not fall duration. entry_seed_outcomes.csv holds entry-level title conversion by consistent positive seed.
- Start with data/processed/analysis/agent_context.json for the compact semantic brief.
- Open data/processed/ncaa_wrestling.sqlite directly in SQLite, DBeaver, Python, or another compatible client.
- Use v_match for one row per source result, v_appearance for wrestler perspectives, v_champion for individual titles, and v_school_year for program summaries.
- Use bracket_topology, bracket_node, bracket_slot, and bracket_edge only for competitions listed as modeled; run `python3 scripts/bracket_topology.py --check` before consuming the projection.
- Read docs/DATA_DICTIONARY.md before joining. Summing v_appearance row counts doubles match counts.
- Use the named SQL queries in sql/analysis.sql for rerunnable results. Individual CSV tables and table metadata support import to another database.
- Review data_issue and source_record before repairing identity or outcome anomalies. Add an evidence-backed correction rather than editing raw input.