Quarterback, App State (from Kent State, Kennesaw State), 2022–26
Tommy Ulatowski
- Number
- No. 17
- Height
- 6′1″
- Weight
- 195 lb
- Class (2026)
- Senior
- Hometown
- Chicago, IL
Tommy Ulatowski plays quarterback for App State, after Kent State (2022–24) and Kennesaw State (2025). Last time out, against Maine: 4 of 5, 20 yards.
2026 so far
20 passing yards
Last game: 4 of 5, 20 yards vs. Maine, W 55–3
Next game: vs. James Madison, Oct 22
At a glance
Career highs
394passing yards, career highvs. Ball State, 20244touchdown passes, career highvs. Ball State, 2024Team titles: Conference USA champions, 2025
Passing
* The season in progress, so far.
| Season | Team | Cmp | Att | Pct | Yds | Y/A | TD | Int |
|---|---|---|---|---|---|---|---|---|
| 2022 | Kent State | 6 | 11 | 54.5 | 102 | 9.3 | 1 | 0 |
| 2023 | Kent State | 60 | 121 | 49.6 | 737 | 6.1 | 7 | 2 |
| 2024 | Kent State | 81 | 175 | 46.3 | 1,342 | 7.7 | 15 | 8 |
| 2025 | Kennesaw State | 3 | 5 | 60.0 | 9 | 1.8 | 0 | 0 |
| 2026 | App State | 4 | 5 | 80.0 | 20 | 4.0 | 0 | 0 |
| Career | 154 | 317 | 48.6 | 2,210 | 7.0 | 23 | 10 | |
Rushing
| Season | Team | Car | Yds | Avg | TD | Long |
|---|---|---|---|---|---|---|
| 2022 | Kent State | 4 | 21 | 5.3 | 0 | 11 |
| 2023 | Kent State | 47 | 89 | 1.9 | 1 | 39 |
| 2024 | Kent State | 62 | −22 | −0.4 | 1 | 34 |
| 2025 | Kennesaw State | 1 | 1 | 1.0 | 0 | 1 |
| Career | 114 | 89 | 0.8 | 2 | 39 | |
Season lines from CollegeFootballData, regular season and bowls.
On the roster
| Season | Team | No. | Pos | Class | Ht | Wt |
|---|---|---|---|---|---|---|
| 2022 | Kent State | 17 | QB | Yr 1 | ||
| 2023 | Kent State | 17 | QB | Yr 2 | ||
| 2024 | Kent State | 17 | QB | Yr 3 | ||
| 2025 | Kennesaw State | 17 | QB | Yr 4 | ||
| 2026 | App State | 17 | QB | Sr. (Yr 5) | 6′1″ | 195 |
As each season’s roster listed the player (CollegeFootballData). Classes before the latest listing are counted back from it; “Yr 1” is the year on file where that count can’t place a season he played (a redshirt, transfer or 2020 year); height and weight as last listed.
Per play
| Season | Team | Plays | EPA/play | Pctile | Median | Total | Usage | Adj. pass | Adj. rush |
|---|---|---|---|---|---|---|---|---|---|
| 2023 | Kent State | 160 | 0.17 | 10th (n=255) | 0.32 | 27.4 | 28% | 0.31 | 0.04 |
| 2024 | Kent State | 189 | 0.27 | 37th (n=238) | 0.30 | 51.6 | 37% | 0.30 | 0.08 |
| 2025 | Kennesaw State | 6 | -0.24 | – | – | -1.5 | – | – | – |
| 2026 | App State | 5 | 0.14 | – | – | 0.7 | – | – | – |
Expected points added: how much the player’s plays moved the team’s expected score, per play and in total. Plays: total EPA divided by EPA per play, the plays the source credits to him (for a receiver roughly his catches and runs, not every target; for a passer, not every attempt), so it can differ from attempts plus carries. Percentile: against the position’s regulars that season across all divisions on file (quarterbacks with 150+ plays, backs 60+, receivers and tight ends 30+), with how many there were (n) and their median; a dash means too few plays to rank. A season in progress uses the full-season bar scaled by games played, never below 75 plays for quarterbacks, 30 for backs and 20 for receivers. The cohort grows or shrinks with the source’s coverage each season (2025 lists far more players), so compare percentiles rather than raw EPA across years. FCS seasons are marked. Usage: the share of the team’s plays the player was part of (shown from 20 plays). Adjusted pass and rush: EPA per play adjusted for the defenses faced (CollegeFootballData’s WEPA). From CollegeFootballData, 2013 on.
Game by game
2026 App State 1 game, 20 passing yards
| Date | Opponent | Result | Cmp | Att | Yds | TD | Int | Rush |
|---|---|---|---|---|---|---|---|---|
| Sep 5 | vs. | W 55–3 | 4 | 5 | 20 | 0 | 0 | – |
2025 Kennesaw State 2 games, 9 passing yards
| Date | Opponent | Result | Cmp | Att | Yds | TD | Int | Rush |
|---|---|---|---|---|---|---|---|---|
| Sep 6 | at | L 9–56 | 2 | 3 | 7 | 0 | 0 | – |
| Sep 27 | vs. | W 24–16 | 1 | 2 | 2 | 0 | 0 | 1 |
2024 Kent State 10 games, 1,342 passing yards, 15 TD
| Date | Opponent | Result | Cmp | Att | Yds | TD | Int | Rush |
|---|---|---|---|---|---|---|---|---|
| Aug 31 | at | L 24–55 | – | – | – | – | – | 2 |
| Sep 7 | vs.Saint Francis | L 17–23 | 1 | 1 | 9 | 1 | 0 | 5 |
| Sep 21 | at | L 0–56 | 0 | 6 | 0 | 0 | 0 | – |
| Sep 28 | vs. | L 33–52 | 15 | 28 | 345 | 3 | 1 | −8 |
| Oct 12 | vs. | L 35–37 | 17 | 36 | 394 | 4 | 1 | −10 |
| Oct 19 | at | L 6–27 | 7 | 27 | 78 | 0 | 2 | −20 |
| Oct 26 | at | L 21–52 | 12 | 24 | 114 | 3 | 2 | 29 |
| Nov 13 | at | L 7–34 | 10 | 21 | 82 | 1 | 1 | 6 |
| Nov 19 | vs. | L 17–38 | 12 | 20 | 229 | 2 | 1 | −33 |
| Nov 26 | at | L 7–43 | 7 | 12 | 91 | 1 | 0 | 7 |
2023 Kent State 9 games, 737 passing yards, 7 TD
| Date | Opponent | Result | Cmp | Att | Yds | TD | Int | Rush |
|---|---|---|---|---|---|---|---|---|
| Aug 31 | at | L 6–56 | 0 | 1 | 0 | 0 | 0 | −3 |
| Sep 16 | vs. | W 38–10 | – | – | – | – | – | −3 |
| Sep 23 | at | L 10–53 | – | – | – | – | – | −2 |
| Oct 7 | at | L 17–42 | 2 | 7 | 12 | 1 | 0 | 60 |
| Oct 14 | at | L 14–28 | 12 | 28 | 169 | 2 | 0 | 21 |
| Oct 21 | vs. | L 6–24 | 5 | 12 | 27 | 0 | 1 | 26 |
| Nov 1 | at | L 27–31 | 15 | 23 | 229 | 3 | 0 | 24 |
| Nov 8 | vs. | L 19–49 | 23 | 40 | 284 | 1 | 1 | −23 |
| Nov 18 | at | L 3–34 | 3 | 10 | 16 | 0 | 0 | −11 |
2022 Kent State 1 game, 102 passing yards, 1 TD
| Date | Opponent | Result | Cmp | Att | Yds | TD | Int | Rush |
|---|---|---|---|---|---|---|---|---|
| Nov 26 | at | W 30–27 | 6 | 11 | 102 | 1 | 0 | 21 |
Box scores from CollegeFootballData, 2004 on. ✦ postseason; ★ a career high on file.
Is this you, or do you know of something wrong or missing here? Suggest a correction. We check each one against a source before changing the page.
