| Result | W–L | Date | Tournament | Tier | Surface | Partner | Opponents | Score |
|---|
| Win | 1–0 | Oct 2015 | Philippines F2, Manila | Futures | Clay (i) | Johnny Arcilla | Katsuki Nagao Hiromasa Oku | 6–2, 6–2 |
| Loss | 1–1 | Jan 2016 | Manila, Philippines | Challenger | Hard | Christopher Rungkat | Johan Brunström Frederik Nielsen | 2–6, 2–6 |
| Loss | 1–2 | Oct 2016 | Vietnam F7, Thủ Dầu Một | Futures | Hard | David Agung Susanto | Chang Yu Wang Aoran | 7–5, 3–6, [5-10] |
| Loss | 1–3 | Oct 2016 | Vietnam F8, Thủ Dầu Một | Futures | Hard | David Agung Susanto | Kim Young Seok Noh Sang-woo | 6–0, 4–6, [8-10] |
| Win | 2–3 | Mar 2017 | Eygypt F8, Sharm El Sheikh | Futures | Hard | Benjamin Lock | Chen TI Sun Fajing | 6–3, 6–7(7–9), [10-7] |
| Loss | 2–4 | Mar 2017 | Bahrain F1, Manama | Futures | Hard | Benjamin Lock | Markus Eriksson Milos Sekulic | 3–6, 1–6 |
| Win | 3–4 | May 2017 | Singapore F1, Singapore | Futures | Hard | Sem Verbeek | Hiroyasu Ehara Sho Katayama | 6–3, 6–2 |
| Win | 4–4 | May 2017 | Singapore F2, Singapore | Futures | Hard | Sem Verbeek | Soichiro Moritani Masato Shiga | 6–3, 6–4 |
| Win | 5–4 | Jun 2017 | Singapore F3, Singapore | Futures | Hard | Sem Verbeek | Yuichi Ito Lý Hoàng Nam | 7–6(7–3), 6–2 |
| Win | 6–4 | Jun 2017 | Hong Kong F1, Hong Kong | Futures | Hard | Karunuday Singh | Yuki Mochizuki Tomohiro Masabayashi | 6–3, 4–6, [11-9] |
| Loss | 6–5 | Jul 2017 | China F12, Shenzhen | Futures | Hard | Karunuday Singh | Lý Hoàng Nam Sun Fajing | 4–6, 4–6 |
| Loss | 6–6 | Oct 2017 | Australia F7, Cairns | Futures | Hard | Sem Verbeek | Nathan Pasha Darren Polkinghorne | 2–6, 6–2, [2-10] |
| Win | 7–6 | May 2018 | Singapore F2, Singapore | Futures | Hard | Collin Altamirano | Shintaro Imai Takuto Niki | 6–1, 6–4 |
| Loss | 7–7 | May 2018 | China F7, Luzhou | Futures | Hard | Sun Fajing | Rhett Purcell Sami Reinwein | 5–7, 3–6 |
| Win | 8–7 | Jun 2018 | China F8, Yinchuan | Futures | Hard | Sun Fajing | Kento Takeuchi Wishaya Trongcharoenchaikul | 6–4, 2–6, [10-5] |
| Loss | 8–8 | Jun 2018 | Hong Kong F1, Hong Kong | Futures | Hard | Yi Chu-Huan | Wong Chun-hun Yeung Pak-long | 4–6, 2–6 |
| Loss | 8–9 | Jul 2018 | Malaysia F3, Kuala Lumpur | Futures | Hard | John Paul Fruttero | Kim Cheong-eui Noh Sang-woo | 1–6, 6–3, [5-10] |
| Loss | 8–10 | Aug 2018 | Indonesia F3, Jakarta | Futures | Hard | Kaito Uesugi | Justin Barki Christopher Rungkat | 3–6, 2–6 |
| Win | 9–10 | Sep 2018 | Thailand F4, Hua Hin | Futures | Hard | Karunuday Singh | Palaphoom Kovapitukted Nuttanon Kadchapanan | 6–3, 7–5 |
| Win | 10–10 | Oct 2018 | Thailand F5, Hua Hin | Futures | Hard | Shintaro Imai | Adrian Andrzejczuk Yu Cheng-yu | 7–5, 6–7(5–7), [10-7] |
| Win | 11–10 | Oct 2018 | Thailand F6, Hua Hin | Futures | Hard | Sonchat Ratiwatana | Ajeet Rai Karunuday Singh | 6–1, 1–6, [10-6] |
| Loss | 11–11 | Oct 2018 | Vietnam F4, Tây Ninh | Futures | Hard | Markus Eriksson | Lê Quốc Khánh Lý Hoàng Nam | 4–6, 7–6(8–6), [10-12] |
| Win | 12–11 | Oct 2018 | Vietnam F5, Tây Ninh | Futures | Hard | Markus Eriksson | Lý Hoàng Nam Roman Safiullin | 5–7, 6–4, [10-7] |
| Loss | 12–12 | Nov 2018 | Thailand F8, Nonthaburi | Futures | Hard | Bernardo Saraiva | Hsu Yu-hsiou Yu Cheng-yu | 1–6, 0–6 |
| Loss | 12–13 | Jul 2019 | M25 Qujing, China | World Tennis Tour | Hard | Rhett Purcell | Hua Runhao Sun Fajing | 1–6, 1–6 |
| Loss | 12–14 | Sep 2019 | M25 Brisbane, Australia | World Tennis Tour | Hard | Harry Bourchier | Jake Delaney Luke Saville | 1–6, 6–3, [6-10] |
| Loss | 12–15 | Oct 2019 | M15 Doha, Qatar | World Tennis Tour | Hard | Bogdan Bobrov | Guy Den Heijer Sidane Pontjodikromo | 6–7(6–8), 6–4, [6-10] |
| Win | 13–15 | Oct 2021 | M25 Calabasas, USA | World Tennis Tour | Hard | Raymond Sarmiento | Johannes Seeman Wally Thayne | 6–4, 6–2 |
| Win | 14–15 | Nov 2021 | M25 Harlingen, USA | World Tennis Tour | Hard | Mark Whitehouse | Gabi Adrian Boitan Constantin Frantzen | 7–6(7–3), 5–7, [10-7] |
| Loss | 14–16 | Feb 2022 | M15 Sharm el-Sheikh, Egypt | World Tennis Tour | Hard | Kelsey Stevenson | Samuel Vincent Ruggeri Francesco Vilardo | 6–2, 5–7, [3-10] |
| Loss | 14–17 | Mar 2022 | M15 Sharm el-Sheikh, Egypt | World Tennis Tour | Hard | Kelsey Stevenson | Petr Bar Biryukov Marat Sharipov
| 7–6(8–6), 3–6, [8-10] |
| Loss | 14–18 | Apr 2022 | M15 Cairo, Egypt | World Tennis Tour | Clay | Colin Sinclair | Lorenzo Joaquin Rodriguez Ilya Rudiukov
| 5–7, 4–6 |
| Win | 15–18 | May 2022 | M25 Cairo, Egypt | World Tennis Tour | Clay | Colin Sinclair | Denis Klok Ilya Rudiukov
| 6–3, 6–3 |
| Win | 16–18 | Jun 2022 | M15 Tây Ninh, Thailand | World Tennis Tour | Hard | Nam Hoang Ly | Park Ui-sung Son Ji-hoon | 6–3, 6–1 |
| Loss | 16–19 | Aug 2022 | Nonthaburi, Thailand | Challenger | Hard | Christopher Rungkat | Benjamin Lock Yuta Shimizu | 1–6, 3–6 |
| Loss | 16–20 | Sep 2022 | Nonthaburi, Thailand | Challenger | Hard | Christopher Rungkat | Chung Yun-seong Ajeet Rai | 1–6, 6–7(6–8) |
| Win | 17–20 | Oct 2022 | M25 Tay Ninh, Vietnam | World Tennis Tour | Hard | Pruchya Isaro | Yu Hsiou Hsu Wishaya Trongcharoenchaikul | 2–6, 6–3, [10–3] |
| Win | 18–20 | Mar 2023 | M25 New Delhi, India | World Tennis Tour | Hard | Pruchya Isaro | Parikshit Somani Manish Sureshkumar | 6–2, 6–4 |
| Loss | 18–21 | Apr 2023 | M15 Singapore, Singapore | World Tennis Tour | Hard | Sun Fajing | Justin Barki Igor Sijsling | 1–6, 1–6 |
| Loss | 18–22 | Apr 2023 | M25 Jakarta, Indonesia | World Tennis Tour | Hard | Pruchya Isaro | Ray Ho Sun Fajing | 4–6, 5–7 |
| Win | 19–22 | Jun 2023 | M25 Jakarta, Indonesia | World Tennis Tour | Hard | Hiroki Moriya | Nathan Anthony Barki Christopher Rungkat | 6–2, 6–1 |
| Win | 20–22 | Jun 2023 | M25 Nakhon Si Thammarat, Thailand | World Tennis Tour | Hard | Hiroki Moriya | Maximus Jones Finn Reynolds | 6–2, 6–4 |
| Loss | 20–23 | Jul 2023 | Segovia, Spain | Challenger | Hard | Sun Fajing | Dan Added Pierre-Hugues Herbert | 6–4, 3–6, [10–12] |
| Loss | 20–24 | Aug 2023 | Zhangjiagang, China | Challenger | Hard | Sun Fajing | Ray Ho Matthew Romios | 3–6, 4–6 |
| Win | 21–24 | Nov 2023 | M15 Ipoh, Malaysia | World Tennis Tour | Hard | Christopher Rungkat | Thijmen Loof Wishaya Trongcharoenchaikul | 6–2, 6–0 |
| Win | 22–24 | Nov 2023 | M15 Kuala Lumpur, Malaysia | World Tennis Tour | Hard | Christopher Rungkat | Pruchya Isaro Thijmen Loof | 6–4, 6–2 |
| Loss | 22–25 | Jan 2024 | Nonthaburi, Thailand | Challenger | Hard | Sun Fajing | Manuel Guinard Grégoire Jacq | 4–6, 6–7(6–8) |
| Win | 23–25 | Jan 2024 | M25 Chennai, India | World Tennis Tour | Hard | Christopher Rungkat | Bogdan Bobrov Adil Kalyanpur | 6–4, 6–2 |
| Loss | 23–26 | Jul 2024 | M15 Nakhon Si Thammarat, Thailand | World Tennis Tour | Hard | Maximus Jones | Adil Kalyanpur Vishnu Vardhan | 3–6, 2–6 |
| Win | 24–26 | Jul 2024 | M15 Nakhon Si Thammarat, Thailand | World Tennis Tour | Hard | Maximus Jones | Rishi Reddy Dhakshineswar Suresh | 7–6(9–7), 6–4 |
| Win | 25–26 | Jul 2024 | M15 Nakhon Si Thammarat, Thailand | World Tennis Tour | Hard | Maximus Jones | Adil Kalyanpur Vishnu Vardhan | 2–6, 7–5, [10–8] |