A Real Madrid youth graduate, Madrid-born Adán was the first-choice goalkeeper for its C-side in the 2005–06 season, playing 36 games and conceding 29 goals. He also started three games for the Juvenil team which won the Champions Cup of the category, keeping a clean sheet in the tournament. The following campaign, Adán was selected for the first team's United States tour in August 2006. He served as backup to captainJordi Codina in Real Madrid Castilla, until the latter's promotion to the main squad. Adán made his debut in 2006–07's second division on 27 August 2006, in a 1–1 draw away to CD Castellón. He contributed with six leagues matches as Real Madrid's reserves were eventually relegated. After the sale of Codina to neighbours Getafe CF, Adán was promoted to the senior side for pre-season training in the 2009–10 campaign. While still appearing mostly for the B's, he was third-choice in the first team behind Iker Casillas and Jerzy Dudek. On 8 December 2010, Adán played his first official game for Real Madrid, coming on as a substitute for injured Dudek in the 44th minute of the 4–0 home win against AJ Auxerre, for the season's UEFA Champions League: the Merengues had already won their group, and manager José Mourinho rested several starters; the following month, he played the full 90 minutes in a 0–2 loss at Levante UD for the campaign's Copa del Rey. Adán made his La Liga debut on 13 February 2011, replacing sent off Casillas in the second minute of a 1–0 away victory over RCD Espanyol. Starting in the following matchday, at home against Levante, he kept a clean sheet in a 2–0 success. On 22 December2012, Adán relegated longtime incumbent Casillas to the bench in a 2–3 away loss to Málaga CF. Mourinho defended his controversial decision in his post-match comments by saying: "It's a technical decision. The coach analyses the situation, looks at the players at his disposal and chooses his team. At the moment, for me and my coaching staff, Adán is better than Iker"; he retained his position for the next game, being sent off in the early minutes of an eventual 4–3 home success against Real Sociedad after giving away a penalty.
Cagliari
On 2 September 2013, Adán left Real Madrid after his contract was terminated. On 19 November he signed with Italy's Cagliari Calcio, making his Serie A debut on 5 January of the following year in a 0–0 away draw against A.C. ChievoVerona.
Betis
On 27 January 2014, Adán terminated his link to the Sardinians and returned to his country and its top division, signing with struggling Real Betis. He contributed with 40 appearances in his first full season, helping his team win the second level championship and subsequently promote. Adán was named team captain in August 2014, alongside Jorge Molina, Damien Perquis and Xavi Torres. The following two top flight campaigns combined, he only missed three matches.
Atlético Madrid
Adán returned to the Spanish capital on 10 July 2018, with the 31-year-old joining Atlético Madrid on a two-year contract. Used only in domestic cup games, he did not debut in the league until the last game of the season when he stood in for the injured Jan Oblak for a 2–2 draw at Levante UD on 18 May 2019.