The host nation's Sofie Dokter took silver, and bronze went to Kate O'Connor of Ireland.
Vanninen began Sunday's competition with a new personal best of 8.19 seconds in the 60m hurdles, the second fastest time behind only Beatrice Juskeviciute of Lithuania.
She backed that up by finishing fourth in the high jump, recording 1.91m.
The 21-year-old put herself in command of the competition by throwing 15.56m in the shot put, over half a metre better than anyone else in the field and going more than 300 points clear of her nearest challengers.
In the evening sesson, 6.52m in the long jump was another personal best, but Dokter's victory in the event had narrowed the gap significantly going into the final event.
In the 800m, the Tampere native shadowed Dokter early on, before O'Connor raised the pace.
On the final lap, Dokter faded despite the raucous support from the home crowd, allowing Vanninen to cruise home in second behind the Irishwoman in a time of 2:12.20.
That was enough for a total of 4922 points, a new national record and a European under-23 record, 96 points clear of Dokter.
Finland finish the European indoor championships with one gold and one bronze medal, after Senni Salminen's third place in the women's triple jump earlier this week.