The 22-year-old completed the formalities of his transfer at Melwood on Saturday, including a medical, and he becomes Brendan Rodgers' eighth summer recruit.
Moreno won the Europa League with Sevilla last season and helped them to a fifth-place finish in La Liga,
He missed out on a place in the Spain squad for the World Cup but is a senior international, having won three caps.
Moreno said: "In my view, Liverpool are the best club in England and I couldn't waste an opportunity to come and play for them.
"I spoke with Xabi Alonso, Pepe Reina and Alvaro Arbeloa and they told me this is a spectacular club whose fans follow it in a very special way.
"They all told me I can grow a lot here as a footballer as this is a massive club. I'm very happy to be joining a club as big as Liverpool. I hope to give my best and do all I can to help."
Liverpool did not complete the signing in time for Moreno to make his debut in their Premier League opener against Southampton at Anfield on Sunday.
Watch Liverpool against Southampton on Sky Sports 1 HD from 12:30pm on Sunday. Kick-off at Anfield is at 1:30pm.