Jest sześciokrotnym mistrzem Polski juniorów w różnych kategoriach wiekowych. Po raz pierwszy na międzynarodowej arenie pojawił się w roku 2000, występując w mistrzostwach świata juniorów do lat 12 w Oropesa del Mar, w których zajął VIII miejsce. W roku 2003 zajął V miejsce w mistrzostwach Europy juniorów do lat 16, rozegranych w Budvie. W tym samym roku wygrał Turniej Rubicon Cup w Budapeszcie w grupie chłopców do lat 15.
Wyjątkowo udany był dla niego rok 2005 - w lutym zajął VII miejsce w jednym z największych otwartych turniejów na świecie w Cappelle-la-Grande, zdobywając pierwszą normę na tytuł arcymistrza. Następnie wygrał Memoriał Akiby Rubinsteina w Polanicy-Zdroju, a w Hercegu Novim został mistrzem Europy juniorów do lat 18. W roku 2006 wystąpił na mistrzostwach Europy seniorów w Kuşadası (zajmując XVIII miejsce) oraz zajął VII miejsce w bardzo silnie obsadzonym turnieju open w Pardubicach, zdobywając czwartą normę arcymistrzowską. Na przełomie 2009 i 2010 r. podzielił I m. (wspólnie Aleksandrem Zubowem i Tomaszem Warakomskim) w turnieju Cracovia w Krakowie. W 2009 r. zdobył w Poznaniu tytuł Indywidualnego Akademickiego Mistrza Polski w Poznaniu. W 2011 r. reprezentował Uniwersytet Śląski na Letniej Uniwersjadzie w Shenzhen. W 2012 r. na Akademickich Mistrzostwach Świata w Guimarães zdobył, wraz z drużyną, srebrny medal.
Najwyższy ranking w dotychczasowej karierze osiągnął 1 lipca 2007 r., z wynikiem 2575 punktów zajmował wówczas 8. miejsce wśród polskich szachistów[2].