Career
After playing for Alajuelense, Herrera joined Norwegian club Aalesund in August 2009. After the 2011-season, Aalesund and Herrera decided to terminate the contract, as Herrera never managed to recover from an injury. In September 2012, he was snapped up by Uruguay de Coronado and in summer 2013 he joined Cartaginéson
In December 2014, Cartaginés declared they could lose the player over a legal battle with former club Alajuelense.
Herrera played at the 2007 Fédération internationale de football association U-20 World Cup in Canada. He made his senior debut for Costa Rica in a friendly against Peru on 22 August 2007.
He scored his first goal in a 2010 qualifying match against the United States on 3 June 2009.