Mokoka competed internationally in a range of distances in 2012. After winning the 10,000 m national title with a personal best of 27:40.73 minutes, he came eighth in the event at the 2012 African Championships in Athletics. He was selected for the South African Olympic team and ran in the Olympic marathon, although he came 49th overall. A half marathon best of 60:57 minutes came two weeks after in Cape Town and he went on to place eighth at the 2012 IAAF World Half Marathon Championships. He closed off his year on the roads, winning the Great South Run 10-miler with a run of 46:40 minutes and a fourth-place finish at the Shanghai Marathon in 2:09:43 in December.