Keenan was educated at Xavier College where he took up rowing. His senior club rowing is from the Mercantile Rowing Club in Melbourne. He debuted at state representative level for Victoria in the 2011 youth eight which contested and won the Noel Wilkinson Trophy at the Interstate Regatta within the 2011 Australian Rowing Championships. He first rowed in the Victorian men's senior eight contesting the 2017 King's Cup at the Interstate Regatta. He again rowed in the Victorian King's Cup eights of 2018 and 2019 placing second to New South Wales on all three occasions.
International representative rowing
Keenan made his Australian representative debut in 2013 in an U23 coxed four at the U23 World Rowing Championships in Linz and rowed to a fourth placing. In 2014 he rowed in the four seat of an Australian eight at the U23 World Rowing Championships in Varese who finished second behind New Zealand and took a silver medal. Keenan made his first national senior squad appearance in the Australian eight in 2017. He raced in that boat at two World Rowing Cups in Europe before contesting the 2017 World Rowing Championships in Sarasota where the eight missed the A final and placed eighth overall. He held his seat in the eight in 2018 rowing at the World Rowing Cup II in Linz and at the WRC III in Lucerne where the Australians took a silver medal in a thrilling finish 0.14 seconds behind Germany. The stage was set for the close competition that played out at the 2018 World Championships in Plovdiv. In their heat the Australian eight finished 5/100ths of a second behind the USA and then in the final, Germany dominated and took gold but 2/10ths of a second separated 2nd through to 4th and the Australians took silver, a bowball ahead of Great Britain with the US out of the medals. Keenan rowed in the four seat and came home with a silver world championship medal. In 2019 Keenan was again selected in the Australian men's eight for the 2019 international representative season. The eight placed 5th at the World Rowing Cup II in Poznan and 6th at WRC III in Rotterdam. He was then selected in the Australian men's eight for the 2019 World Rowing Championships in Linz, Austria. The eight were looking for a top five finish at the 2019 World Championships to qualify for the Tokyo Olympics. The eight placed second in their heat and fourth in the final and qualified for Tokyo 2020.