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 | 14–4–0 after bout | Shoko SatoView status and profile → | Rizin FF - Rizin 52 | Submission (Triangle Choke)Round 1 Time 4:49 Referee Minoru Toyonaga |
| W | 14–3–0 after bout | Rafael do NascimentoView status and profile → | LFA 188 - Sweeney vs. Do Nascimento | Decision (Unanimous)Round 5 Time 5:00 Referee Ryan Brueggeman |
| W | 13–3–0 after bout | Allan BegossoView status and profile → | LFA 160 - Sweeney vs. Begosso | Decision (Unanimous)Round 5 Time 5:00 Referee Chris Kinman |
| W | 12–3–0 after bout | Ary FariasView status and profile → | LFA 150 - Farias vs. Sweeney | Decision (Unanimous)Round 3 Time 5:00 Referee Rob Madrigal |
| W | 11–3–0 after bout | Ricardo DiasView status and profile → | LFA 137 - Gibson vs. Amil | Decision (Split)Round 3 Time 5:00 Referee Jonathan Romero |
| W | 10–3–0 after bout | Cole SmithView status and profile → | XMMA 4 - Black Magic | Decision (Split)Round 3 Time 5:00 Referee Nick Sherlock |
| W | 9–3–0 after bout | Leonardo MoralesView status and profile → | Combate Global - Morales vs. Sweeney | Decision (Unanimous)Round 3 Time 5:00 Referee Alan Abeles |
| W | 8–3–0 after bout | Dre MileyView status and profile → | XMMA 2 - Saunders vs. Nijem | KO (Punches)Round 1 Time 0:33 Referee Not listed |
| W | 7–3–0 after bout | Calvin HarbaughView status and profile → | SMMA 19 - Showcase MMA 19 | TKO (Submission to Punches)Round 1 Time N/A Referee Not listed |
| L | 6–3–0 after bout | Cody DurdenView status and profile → | NFC 125 - National Fighting Championship 125 | TKO (Punches)Round 1 Time 1:20 Referee Not listed |
| L | 6–2–0 after bout | Phil CaracappaView status and profile → | ROC 67 - Ring of Combat 67 | TKO (Punches)Round 3 Time 0:32 Referee Keith Peterson |
| W | 6–1–0 after bout | Jose MedranoView status and profile → | NFC 114 - National Fighting Championship 114 | TKO (Punches)Round 1 Time 2:38 Referee Not listed |
| W | 5–1–0 after bout | Keith LeeView status and profile → | 864 Fighting Championship - Fight 3 | Decision (Split)Round 3 Time 5:00 Referee Not listed |
| W | 4–1–0 after bout | Dave MorganView status and profile → | 864 Fighting Championship - Fight 1 | TKO (Punches)Round 2 Time 3:39 Referee Not listed |
| L | 3–1–0 after bout | Jacob HebeisenView status and profile → | NFC 100 - National Fighting Championship 100: Elmore vs. Longano | Decision (Unanimous)Round 3 Time 5:00 Referee Not listed |
| W | 3–0–0 after bout | Devante SewellView status and profile → | NFC 98 - National Fighting Championship 98: Williams vs. Blyden | TKO (Punches)Round 2 Time 4:41 Referee Not listed |
| W | 2–0–0 after bout | Shelton SalesView status and profile → | LFA 17 - Moises vs. Watley | Technical Submission (Guillotine Choke)Round 1 Time 1:57 Referee Donnie Jessup |
| W | 1–0–0 after bout | Jon SparksView status and profile → | LFA 8 - Hamilton vs. Bazzi | Submission (Rear-Naked Choke)Round 1 Time 2:45 Referee Justin Brown |
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 John Sweeney.
Verify source record ↗Every verified opponent opens another full career
18 professional bout rows are displayed from the source record. 17 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.