"To have joined the club that I supported as a boy is a dream come true for me and all of my family and it's an incredible feeling to now officially be able to call myself a Red!" Elliott wrote on Instagram.
The teenager made his debut in the 3-1 League Cup win over Millwall in September at the age of 15 before going on to become the youngest debutant in Premier League history when he played against Wolves in May at the age of 16 years and 30 days. He also featured against Newcastle for Fulham.
The England youth international is in the squad for Liverpool's friendly with Napoli in Edinburgh on Sunday.
Elliott also reportedly attracted attention from Real Madrid, Paris Saint-Germain, Arsenal and Manchester City.
Liverpool earlier this month completed the signing of 17-year-old Dutch defender Sepp van den Berg from PEC Zwolle.