| Res. | Record | Opponent | Method | Event | Date | Round | Time | Location | Notes |
| Loss | 32–10 | Aiemann Zahabi | Decision (unanimous) | UFC 315 | 10 May 2025 | 3 | 5:00 | Montreal, Quebec, Canada | Featherweight bout. |
| Loss | 32–9 | Mario Bautista | Decision (split) | UFC 307 | 5 October 2024 | 3 | 5:00 | Salt Lake City, Utah, United States | |
| Win | 32–8 | Jonathan Martinez | Decision (unanimous) | UFC 301 | 4 May 2024 | 3 | 5:00 | Rio de Janeiro, Brazil | |
| Loss | 31–8 | Merab Dvalishvili | Decision (unanimous) | UFC 278 | 20 August 2022 | 3 | 5:00 | Salt Lake City, Utah, United States | |
| Win | 31–7 | Rob Font | Decision (unanimous) | UFC on ESPN: Font vs. Aldo | 4 December 2021 | 5 | 5:00 | Las Vegas, Nevada, United States | |
| Win | 30–7 | Pedro Munhoz | Decision (unanimous) | UFC 265 | 7 August 2021 | 3 | 5:00 | Houston, Texas, United States | |
| Win | 29–7 | Marlon Vera | Decision (unanimous) | UFC Fight Night: Thompson vs. Neal | 19 December 2020 | 3 | 5:00 | Las Vegas, Nevada, United States | |
| Loss | 28–7 | Petr Yan | TKO (punches) | UFC 251 | 12 July 2020 | 5 | 3:24 | Abu Dhabi, United Arab Emirates | For the vacant UFC Bantamweight Championship. |
| Loss | 28–6 | Marlon Moraes | Decision (split) | UFC 245 | 14 December 2019 | 3 | 5:00 | Las Vegas, Nevada, United States | Bantamweight debut. |
| Loss | 28–5 | Alexander Volkanovski | Decision (unanimous) | UFC 237 | 11 May 2019 | 3 | 5:00 | Rio de Janeiro, Brazil | |
| Win | 28–4 | Renato Moicano | TKO (punches) | UFC Fight Night: Assunção vs. Moraes 2 | 2 February 2019 | 2 | 0:44 | Fortaleza, Brazil | Performance of the Night. |
| Win | 27–4 | Jeremy Stephens | TKO (punches) | UFC on Fox: Alvarez vs. Poirier 2 | 28 July 2018 | 1 | 4:19 | Calgary, Alberta, Canada | Performance of the Night. |
| Loss | 26–4 | Max Holloway | TKO (punches) | UFC 218 | 2 December 2017 | 3 | 4:51 | Detroit, Michigan, United States | For the UFC Featherweight Championship. |
| Loss | 26–3 | Max Holloway | TKO (punches) | UFC 212 | 3 June 2017 | 3 | 4:13 | Rio de Janeiro, Brazil | Lost the UFC Featherweight Championship. Fight of the Night. |
| Win | 26–2 | Frankie Edgar | Decision (unanimous) | UFC 200 | 9 July 2016 | 5 | 5:00 | Las Vegas, Nevada, United States | Won the interim UFC Featherweight Championship. Later promoted to undisputed champion. |
| Loss | 25–2 | Conor McGregor | KO (punch) | UFC 194 | 12 December 2015 | 1 | 0:13 | Las Vegas, Nevada, United States | Lost the UFC Featherweight Championship. |
| Win | 25–1 | Chad Mendes | Decision (unanimous) | UFC 179 | 25 October 2014 | 5 | 5:00 | Rio de Janeiro, Brazil | Defended the UFC Featherweight Championship. Fight of the Night. |
| Win | 24–1 | Ricardo Lamas | Decision (unanimous) | UFC 169 | 1 February 2014 | 5 | 5:00 | Newark, New Jersey, United States | Defended the UFC Featherweight Championship. |
| Win | 23–1 | Jung Chan-sung | TKO (punches) | UFC 163 | 3 August 2013 | 4 | 2:00 | Rio de Janeiro, Brazil | Defended the UFC Featherweight Championship. |
| Win | 22–1 | Frankie Edgar | Decision (unanimous) | UFC 156 | 2 February 2013 | 5 | 5:00 | Las Vegas, Nevada, United States | Defended the UFC Featherweight Championship. Fight of the Night. |
| Win | 21–1 | Chad Mendes | KO (knee) | UFC 142 | 14 January 2012 | 1 | 4:59 | Rio de Janeiro, Brazil | Defended the UFC Featherweight Championship. |
| Win | 20–1 | Kenny Florian | Decision (unanimous) | UFC 136 | 8 October 2011 | 5 | 5:00 | Houston, Texas, United States | Defended the UFC Featherweight Championship. |
| Win | 19–1 | Mark Hominick | Decision (unanimous) | UFC 129 | 30 April 2011 | 5 | 5:00 | Toronto, Ontario, Canada | Defended the UFC Featherweight Championship. Fight of the Night. |
| Win | 18–1 | Manny Gamburyan | KO (punches) | WEC 51 | 30 September 2010 | 2 | 1:32 | Broomfield, Colorado, United States | Defended the WEC Featherweight Championship. Later promoted to UFC Featherweight Champion. |
| Win | 17–1 | Urijah Faber | Decision (unanimous) | WEC 48 | 24 April 2010 | 5 | 5:00 | Sacramento, California, United States | Defended the WEC Featherweight Championship. |
| Win | 16–1 | Mike Brown | TKO (punches) | WEC 44 | 18 November 2009 | 2 | 1:20 | Las Vegas, Nevada, United States | Won the WEC Featherweight Championship. Knockout of the Night. |
| Win | 15–1 | Cub Swanson | TKO (flying knee and punches) | WEC 41 | 7 June 2009 | 1 | 0:08 | Sacramento, California, United States | WEC Featherweight title eliminator. Knockout of the Night. |
| Win | 14–1 | Chris Mickle | TKO (punches) | WEC 39 | 1 March 2009 | 1 | 1:39 | Corpus Christi, Texas, United States | |
| Win | 13–1 | Rolando Perez | KO (knee and punches) | WEC 38 | 25 January 2009 | 1 | 4:15 | San Diego, California, United States | Knockout of the Night. |
| Win | 12–1 | Jonathan Brookins | TKO (punches) | WEC 36 | 5 November 2008 | 3 | 0:45 | Hollywood, Florida, United States | |
| Win | 11–1 | Alexandre Franca Nogueira | TKO (punches) | WEC 34 | 1 June 2008 | 2 | 3:22 | Sacramento, California, United States | |
| Win | 10–1 | Shoji Maruyama | Decision (unanimous) | Pancrase: 2007 Neo-Blood Tournament Finals | 27 July 2007 | 3 | 5:00 | Tokyo, Japan | |
| Win | 9–1 | Fábio Mello | Decision (unanimous) | Top Fighting Championships 3 | 2 May 2007 | 3 | 5:00 | Rio de Janeiro, Brazil | |
| Win | 8–1 | Thiago Meller | Decision (majority) | Gold Fighters Championship 1 | 20 May 2006 | 3 | 5:00 | Rio de Janeiro, Brazil | |
| Loss | 7–1 | Luciano Azevedo | Submission (rear-naked choke) | Jungle Fight 5 | 26 November 2005 | 2 | 3:37 | Manaus, Brazil | Lightweight bout. |
| Win | 7–0 | Micky Young | TKO (punches) | FX3: Battle of Britain | 15 October 2005 | 1 | 1:05 | Reading, England | |
| Win | 6–0 | Phil Harris | TKO (doctor stoppage) | UK-1: Fight Night | 17 September 2005 | 1 | N/A | Portsmouth, England | |
| Win | 5–0 | Anderson Silverio | TKO (submission to soccer kicks) | Meca World Vale Tudo 12 | 9 July 2005 | 1 | 8:33 | Rio de Janeiro, Brazil | |
| Win | 4–0 | Aritano Silva Barbosa | KO (soccer kicks) | Rio MMA Challenge 1 | 12 May 2005 | 1 | 0:20 | Rio de Janeiro, Brazil | |
| Win | 3–0 | Luiz de Paula | Submission (arm-triangle choke) | Shooto Brazil 7 | 19 March 2005 | 1 | 1:54 | Rio de Janeiro, Brazil | |
| Win | 2–0 | Hudson Rocha | TKO (doctor stoppage) | Shooto Brazil 4 | 23 October 2004 | 1 | 5:00 | São Paulo, Brazil | |
| Win | 1–0 | Mario Bigola | KO (head kick) | Eco Fight Championship 1 | 10 August 2004 | 1 | 0:18 | Macapá, Brazil | |