Young forward Stevan Jovetic scored twice in the first half as Rafa Benitez’s side were made to pay for a below-par performance.
Jovetic slotted past Pepe Reina after being played onside by Emiliano Insua, and later flicked in a low shot/cross to double the lead for the home side.
Missing Javier Mascherano, Benitez deployed Fabio Aurelio alongside Lucas Leiva but the two of them failed to offer much protection for the back four, who themselves struggled again.
The second half saw a much improved performance but the hosts were happy to defend deep and defend well to keep hold of their lead. They did so despite constant pressure and possession from Liverpool.
Rafa Benitez looked clearly unhappy at full-time and will be keen to take a look at the defensive problems ahead of Sunday’s trip to Stamford Bridge.
Fiorentina: Frey, Dainelli, Gamberini, Comotto, Vargas (Jorgensen 74), Jovetic, Zanetti, Montolivo, Gobbi, Mutu (Donadel 82), Marchionni (De Silvestri 89)
Subs not used: Avramov, Kroldrup, Pasqual, Castillo
Goals: Jovetic (28, 37)
Liverpool: Reina, Johnson, Carragher, Skrtel, Insua (Babel 72), Aurelio, Lucas, Kuyt (Voronin 80), Gerrard, Benayoun, Torres
Subs not used: Cavalieri, Spearing, Plessis, Kyrgiakos, Riera