THE COMPLETE RECORD
This profile is part of the recursive Fight Atlas graph. Open any opponent below to load that athlete’s complete professional career, then continue through every linked opponent without returning to a third-party record page.
EVERY RECORDED BOUT
Complete professional fight history, including competition before and outside UFC. Use the controls to isolate an opponent, promotion, method or result.
| Result | Date / record | Opponent | Event | Finish details |
|---|---|---|---|---|
| L | 23–8–0 after bout | Miljan ZdravkovicView status and profile → | FNC 26 - Janicic vs. Oliveira | Decision (Unanimous)Round 5 Time 5:00 Referee Not listed |
| W | 23–7–0 after bout | Edson LourencoView status and profile → | BTC 34 - Iron Forged | TKO (Doctor Stoppage)Round 3 Time 4:10 Referee Brian Beauchamp |
| L | 22–7–0 after bout | Jonas MagardView status and profile → | Oktagon MMA - Oktagon 59: Paradeiser vs. Torres | Decision (Unanimous)Round 3 Time 5:00 Referee Vaclav Pribyl |
| L | 22–6–0 after bout | Kasum KasumovView status and profile → | Bellator 298 - Storley vs. Ward | Decision (Split)Round 3 Time 5:00 Referee Jason Herzog |
| W | 22–5–0 after bout | Cass BellView status and profile → | Bellator 292 - Nurmagomedov vs. Henderson | Decision (Split)Round 3 Time 5:00 Referee Edward Collantes |
| L | 21–5–0 after bout | Marcos BrenoView status and profile → | Bellator 284 - Gracie vs. Yamauchi | Decision (Unanimous)Round 3 Time 5:00 Referee Bobby Wombacher |
| W | 21–4–0 after bout | Jared ScogginsView status and profile → | Bellator 272 - Pettis vs. Horiguchi | KO (Punch)Round 2 Time 0:56 Referee Kerry Hatley |
| L | 20–4–0 after bout | Raufeon StotsView status and profile → | Bellator 258 - Archuleta vs. Pettis | Decision (Unanimous)Round 3 Time 5:00 Referee Kevin MacDonald |
| W | 20–3–0 after bout | Erik PerezView status and profile → | Bellator 244 - Bader vs. Nemkov | Decision (Unanimous)Round 3 Time 5:00 Referee Kerry Hatley |
| W | 19–3–0 after bout | Vinicius ZaniView status and profile → | Bellator 239 - Ruth vs. Amosov | Decision (Unanimous)Round 3 Time 5:00 Referee Kerry Hatley |
| W | 18–3–0 after bout | Gilberto AguilarView status and profile → | Z Promotions - Fight Night 11: Lethbridge | Submission (Rear-Naked Choke)Round 1 Time 2:38 Referee Mark Aparicio |
| W | 17–3–0 after bout | Jesse ArnettView status and profile → | TKO 48 - Sousa vs. Gane | KO (Punches)Round 2 Time 2:11 Referee Luc Lefebvre |
| L | 16–3–0 after bout | Taylor LapilusView status and profile → | TKO 45 - Jourdain vs. Morgan | Decision (Split)Round 3 Time 5:00 Referee Luc Lefebvre |
| W | 16–2–0 after bout | Grachik EngibaryanView status and profile → | FNG - Fight Nights Global 72 | Submission (Rear-Naked Choke)Round 1 Time 4:12 Referee Not listed |
| W | 15–2–0 after bout | Xavier AlaouiView status and profile → | TKO 36 - Resurrection | Decision (Split)Round 3 Time 5:00 Referee Not listed |
| L | 14–2–0 after bout | Marlon MoraesView status and profile → | WSOF 32 - Moraes vs. Hill 2 | KO (Head Kick and Punches)Round 2 Time 0:38 Referee Steve Newport |
| W | 14–1–0 after bout | Bendy CasimirView status and profile → | Z Promotions - Fight Night 2: Medicine Hat | Decision (Unanimous)Round 3 Time 5:00 Referee Mark Aparicio |
| W | 13–1–0 after bout | Bekbulat MagomedovView status and profile → | WSOF 26 - Palmer vs. Almeida | Decision (Split)Round 3 Time 5:00 Referee John McCarthy |
| W | 12–1–0 after bout | Ioan VranceanuView status and profile → | RXF 19 - Romanian Xtreme Fighting 19 | Decision (Unanimous)Round 3 Time 5:00 Referee Gheorghe Stelian |
| W | 11–1–0 after bout | Josh RettinghouseView status and profile → | Global Warriors FC 2 - Coming Home | Submission (Rear-Naked Choke)Round 3 Time 2:01 Referee Ivan Svec |
| L | 10–1–0 after bout | Marlon MoraesView status and profile → | WSOF 18 - Moraes vs. Hill | Decision (Unanimous)Round 5 Time 5:00 Referee Vern Gorman |
| W | 10–0–0 after bout | Mike AdamsView status and profile → | WSOF Canada 2 - Loiseau vs. Lewis | KO (Punch)Round 1 Time 4:20 Referee Vern Gorman |
| W | 9–0–0 after bout | John FraserView status and profile → | SFS 5 - Fraser vs. Hill | Decision (Unanimous)Round 3 Time 5:00 Referee Yves Lavigne |
| W | 8–0–0 after bout | Eric WilsonView status and profile → | SFS 4 - Score Fighting Series 4 | Decision (Unanimous)Round 3 Time 5:00 Referee Jerin Valel |
| W | 7–0–0 after bout | Federico LopezView status and profile → | Global Warriors FC 1 - Uprising | Decision (Unanimous)Round 3 Time 5:00 Referee Josh Rosenthal |
| W | 6–0–0 after bout | Darin CooleyView status and profile → | SFS 1 - Mein vs. Zaromskis | Decision (Unanimous)Round 3 Time 5:00 Referee Yves Lavigne |
| W | 5–0–0 after bout | Diego WilsonView status and profile → | AMMA 6 - Punishment | Decision (Unanimous)Round 5 Time 5:00 Referee John Braak |
| W | 4–0–0 after bout | Brent FranczuzView status and profile → | W-1 MMA 5 - Judgment Day | Submission (Rear-Naked Choke)Round 2 Time 3:44 Referee Not listed |
| W | 3–0–0 after bout | Dennis GagneView status and profile → | W-1 MMA 4 - Bad Blood | TKO (Punches)Round 1 Time 0:43 Referee Not listed |
| W | 2–0–0 after bout | Randy TurnerView status and profile → | Wreck MMA - Fight for the Troops | Decision (Unanimous)Round 3 Time 5:00 Referee Yves Lavigne |
| W | 1–0–0 after bout | Vito AttanasiView status and profile → | W-1 MMA 3 - High Voltage | TKO (Punches)Round 2 Time 1:42 Referee Not listed |
Fight Atlas republishes factual bout results, not source articles or photography. Belt markers appear only when championship status is confirmed by an official promotion source; unverified bouts are never inferred. The matched source name for this profile is Josh Hill.
Verify source record ↗Every verified opponent opens another full career
31 professional bout rows are displayed from the source record. 30 unique opponent identities have a stable source ID and an internal Fight Atlas route. Every opponent row has a verified identity link.
Source and correction standard
The complete professional history is retrieved from the established public fight-record source and cached for up to 24 hours. Current-roster status remains separate from historical career data and does not imply retirement.