Kelava played for
Dinamo Zagreb's youth teams from 1997, being promoted to the club's senior squad in the summer of 2006.
Dinamo Zagreb Kelava started his first–team career as the club's fourth–choice goalkeeper and did not appear in any competitive matches during the
2006–07 season. Kelava debuted for Dinamo Zagreb in the
Croatian Cup in September 2007, before eventually making his
Croatian First League debut in a 2–1 away victory against
NK Zadar on 27 October 2007. By the end of the season he managed to establish himself as the club's second–choice goalkeeper, making a total of seven league appearances. On 2 October 2008, he made his European debut, replacing the injured
Tomislav Butina in the opening minutes of the second leg of their
UEFA Cup first round fixture against
Sparta Prague. In August 2009, Kelava was loaned to
Lokomotiva Zagreb, where he established himself as their first–choice goalkeeper and made a total of 33 league appearances. On 16 September 2010, Kelava kept a clean sheet in a 2–0 home win against
Villarreal in the club's opening
UEFA Europa League group match of the season. He was the first choice goalkeeper in the
2011–12 season as well, becoming a hero among Dinamo fans after making a number of crucial saves in the return leg of the
Champions League play-off against
Malmö FF which saw Dinamo through.
Udinese and Granada On 4 July 2013, Kelava joined
Udinese for €1 million. He made his
Serie A debut on 25 August 2013, starting in a 2–1 away loss against
Lazio. After being a backup to
Željko Brkić, he subsequently had loan stints at
Carpi and
Spartak Trnava. On 25 August 2015, Kelava moved to Udinese's feeder club
Granada, mainly as a replacement to
Real Sociedad-bound
Oier Olazábal. On 29 December 2016, he terminated his contract, after being rarely used.
Later years On 1 February 2017, Kelava signed for Hungarian club
Debrecen on a two-and-a-half-year contract. On 15 June of the same year, he joined Romanian club
Politehnica Iași. After having spent five years abroad, Kelava returned to his native country on 19 June 2018, and signed for
Inter Zaprešić. ==International career==