Handing over Savchenko, whose release was demanded by Western governments and who has become a national hero in Ukraine, will ease tensions between Moscow and the West just weeks before the European Union decides whether to extend sanctions against Russia.
There was no official confirmation of the exchange, but the two sources close to the arrangements said it was already underway.
A plane was en route from Russia to Ukraine carrying Savchenko home, according to anonymous sources. "They are coming back," said one.
Meanwhile the two Russians, Alexander Alexandrov and Yevgeny Yerofeyev, were in the process of being returned to Russian soil, a second source close to the swap said.
Ukrainian President Petro Poroshenko is due to make a statement later today, his office said.
Earlier, Russia's Interfax news agency reported that Mr Poroshenko himself had flown to Russia to collect Savchenko, but there was no confirmation of that in Kiev or Moscow.
Savchenko, a military pilot, volunteered to fight with a ground unit against pro-Moscow separatists who rose up against Kiev's rule in eastern Ukraine.
She was captured and put on trial in southern Russia, charged with complicity in the deaths of Russian journalists who were killed by artillery while covering the conflict.
A Russian court in March sentenced her to 22 years in jail. While incarcerated, she was elected a member of the Ukrainian parliament and is widely seen in Ukraine as a symbol of resistance against Russia.
Yerofeyev and Alexandrov both told Reuters in interviews last year they were Russian special forces soldiers who were captured while carrying out a secret operation in eastern Ukraine.
But Moscow, which denies it had troops in eastern Ukraine, has never publicly acknowledged that the two men were acting on its orders.
Russia's relations with its neighbour Ukraine have been toxic since an uprising in 2014 forced out the Moscow-backed Ukrainian leader Viktor Yanukovich and installed a pro-Western administration.
Russia then annexed Ukraine's Crimea Peninsula. Moscow said it was protecting the local Russian-speaking population from persecution by the new authorities in Kiev, but Western governments called it an illegal land-grab and imposed sanctions on Moscow.
Soon after, pro-Moscow separatists began an armed separatist rebellion in the Donbass region of eastern Ukraine, an area with a large-Russian speaking community. Fighting between the rebels and Ukraine's forces killed thousands of people.
A fragile ceasefire has been in place since last year, but there is no permanent settlement to the conflict.
Register for free to continue reading
Registration is a free and easy way to support our truly independent journalism
By registering, you will also enjoy limited access to Premium articles, exclusive newsletters, commenting, and virtual events with our leading journalists
Already have an account? sign in
Join our new commenting forum
Join thought-provoking conversations, follow other Independent readers and see their replies