The captives – who include activists and journalists – were exchanged on Wednesday near the town of Horlivka, northeast of Donetsk.
Under the terms of the agreement, 74 Ukrainian soldiers were expected to be swapped for 306 pro-Russian separatists.
However, Ukraine handed over some 235 people – the others either chose to stay in Ukraine or had been released earlier, according to Ukrainian officials.
“All 74 Ukrainian hostages are already at home, on the territory controlled by our army,” Ukrainian President Petro Poroshenko wrote on Twitter.
This is the first prisoner swap in eastern Ukraine since September 2016.
In Horlivka, dozens of family members eagerly awaited the return of their loved ones.
“The first thing I’ll say to my husband is that your time in prison has not been in vain and, of course, I love you,” Natalya Gerasimenko, wife of Mykola Gerasimenko, a driver in the Ukrainian army who was held by pro-Russian forces for almost three years, told Al Jazeera.
‘Step in right direction’
The exchange came after months of negotiations and was jeopardised on several occasions.
Al Jazeera’s Rory Challands, reporting from Moscow, said a breakthrough came earlier this week during a meeting in Russia’s capital, Moscow, attended by the patriarch of the Russian Orthodox Church and representatives of the Ukrainian and separatist sides.
“The real political will it seems has come from both Kiev and also from Moscow, with [Russian President] Vladimir Putin saying that he was going to use his influence with the separatist regions to make it happen,” Challands said.
The swap is in line with the so-called Minsk agreements brokered by Germany and France and signed by Russia and Ukraine in 2015.
They call, among other things, for a ceasefire; the withdrawal of heavy weapons 15km on either side of the front line; and constitutional reform to give eastern Ukraine more autonomy.
Yet, deadly fighting has continued, with both sides blaming each other for truce breaches and stalled progress towards any political solution.
The conflict in Ukraine began in 2014, when pro-Russian separatists took over parts of eastern Ukraine’s Donbass region, which is composed of the Donetsk and Luhansk provinces.
Russia also annexed the Crimean peninsula from Ukraine a few months earlier.
About 10,000 people, including at least 2,000 civilians, have been killed since the fighting began, while another 1.7 million people have been forced to flee their homes.
Wednesday’s swap has created some hope that a long-term solution is possible and both sides are talking about conducting further prisoner exchanges, Al Jazeera’s Challands said.
However, there is no concrete end to the conflict in sight.
“While people are still dying, while Moscow is still supplying the rebel regions with weapons and hardware,” our correspondent said, adding that the prisoner swap “is just a step in the right direction”.
Additional reporting by Madeline Roache