Costa was a major doubt after tearing a hamstring during last weekend’s 1-1 draw with Barcelona – a result which won Atletico the Spanish title.
The Spain international, who has scored 36 goals this season, was treated in Belgrade using horse placenta.
Turkish playmaker Arda Turan also returned to training on Thursday.
And Atletico confirmed both Turan, who injured a hip against Barca, and Costa will fly to Lisbon with the rest of the squad on Friday.
Real duo Cristiano Ronaldo and Gareth Bale will both be fit for Saturday’s game, but defender Pepe and striker Karim Benzema remain doubts.
Ronaldo missed Real’s past two games with a thigh problem, while Bale sat out training on Tuesday.
After winning La Liga for the first time since 1996, Atletico are attempting to win their first European Cup.
They reached the final in 1974 but were beaten 4-0 by Bayern Munich in a replay, after the first match finished 1-1.
Real, meanwhile, could win the trophy for a record 10th time but it will be their first success since 2002, when Zinedine Zidane scored a spectacular goal to secure a 2-1 win over Bayer Leverkusen.
A victory for Real would mean a third Champions League title as a coach for Ancelotti, who also won the competition twice as a player.
“There’s no pressure on me, just the joy of living this moment of happiness,” said Ancelotti.
“A lot of teams have to watch this game in front of the TV and we’re lucky to be able to play it. I’ve watched this game on TV a lot of times and I didn’t enjoy it.”
Saturday’s match between Real and Atletico is the first European Cup final with two teams from the same city. It will also be the fifth meeting between the two sides this season.
Real emerged as 5-0 victors over two legs in the Spanish Cup, with Atletico claiming a win and a draw in the league meetings.
Road to the Final:
Here is a game-by-game guide of how Diego Simeone’s side made it all the way to the showpiece at Estadio da Luz in Lisbon.
September 18 – Atletico Madrid 3 Zenit 1
Atletico opened their campaign in comfortable fashion, easily dispatching of Zenit on home turf. Goals from Arda Turan and Leo Baptistao sealed victory in the second half after Hulk had cancelled out Miranda’s opener.
October 1 – Porto 1 Atletico Madrid 2
Simeone’s men appeared to be heading for defeat in their second and arguably toughest group game at Porto when Jackson Martinez put the hosts ahead after 16 minutes, but Atletico demonstrated great resolve and claimed the points thanks to second-half strikes from Diego Godin and Turan.
October 22 – Austria Vienna 0 Atletico Madrid 3
Atletico barely had to exert any energy to overcome Group G minnows Austria Vienna, a double from top scorer Diego Costa making sure of a third straight victory following Raul Garcia’s early effort.
November 6 – Atletico Madrid 4 Austria Vienna 0
The return fixture with Vienna two weeks later produced an even more comprehensive victory for Atletico as they clinched Group G’s top spot in emphatic fashion. Miranda, Garcia, Filipe Luis and Costa all found the net to ensure progression.
November 26 – Zenit 1 Atletico Madrid 1
Atletico could have been forgiven for taking their foot off the gas after winning the group, but still managed a creditable result in Russia. Adrian Lopez gave the visitors the lead early in the second half, but a Toby Alderweireld own-goal earned a share of the spoils for Zenit.
December 11 – Atletico Madrid 2 Porto 0
The draw with Zenit proved to be the dropped points of Atletico’s group phase, and Simeone’s team firmly displayed their intentions for the competition by eliminating Porto as goalscorers Garcia and Costa proved their considerable talents once again.
February 19 – Milan 0 Atletico Madrid 1
Milan had laboured into the knock-out rounds, however, Atletico still found it difficult to break them down in the first leg of the last-16 tie at San Siro. But it was that man Costa who was the hero once again as his 83rd-minute header sealed a precious away win.
March 11 – Atletico Madrid 4 Milan 1 (5-1 agg)
Any hopes Milan may have had of turning the tie around were brutally ended in the return leg, with Costa again displaying his prowess in front of goal as his double helped condemn the seven-time winners to a humiliating exit.
April 1 – Barcelona 1 Atletico Madrid 1
Atletico went into their quarter-final with domestic rivals Barcelona as underdogs, but produced a defiant performance to claim a draw in a game that saw Costa come off injured in the first half. Diego’s stunning long-range effort put Atletico in front, only for Neymar to bring Barca level in the 71st minute.
April 9 – Atletico Madrid 1 Barcelona 0 (2-1 agg)
Costa was not able to return for the second leg, and that only served to make Atletico’s triumph all the more surprising. Koke’s fifth-minute volley made sure of a deserved semi-final berth in a contest that saw Atletico hit the crossbar three times in the opening 20 minutes.
April 22 – Atletico Madrid 0 Chelsea 0
Atletico failed to score for the first time in the competition as Chelsea stood firm in a dour first leg despite losing goalkeeper Petr Cech through injury, leaving it all to play for in the return outing at Stamford Bridge.
April 30 – Chelsea 1 Atletico Madrid 3 (1-3 agg)
Chelsea’s approach understandably changed in the second leg, and Atletico appeared to be on their way out when Fernando Torres struck the opener for the hosts against his former club. However, Adrian quickly levelled matters before a Costa penalty and Turan’s header completed the turnaround to set up the first Champions League final between two teams from the same city.