Following a dismal 0-0 draw against Croatia on Thursday, Belgium was eliminated from the World Cup.
To go past the group stage, Roberto Martinez's team needed to defeat the World Cup champions, but they were unable to score.
Streaming on ESPN+: Bundesliga, LaLiga, and more (U.S.)
Romelu Lukaku entered the game when the captain Eden Hazard was benched, and he missed four significant opportunities as Belgium's disastrous World Cup run came to an end.
Croatia advances to the round of 16, but only after finishing in second place in the group behind Morocco, which defeated Canada 2-1 to take the first position.
Martinez told BBC after the victory, "Winning games in the World Cup is not simple." We weren't ourselves in the first game, and we suffered a well-deserved loss in the second.
"Today there are no regrets since we were prepared and possibilities were made." We're done, but we can walk away with pride.
Ivan Perisic's attempt went over the crossbar in the first 20 seconds as Croatia took control from the opening whistle.
After 14 minutes, Belgium immediately counterattacked, but Dries Mertens was unable to reach the goal following a superb through pass from Kevin de Bruyne.
- Croatia received a penalty less than a minute later after Yannick Carrasco was found to have brought down Andrej Kramaric.
With Luka Modric preparing to take the spot-kick, referee Anthony Taylor was sent to the monitor by the VAR, and the decision was overturned for an offside in the buildup.
The rest of the half turned out to be a tense affair, but the game came to life after the break.
Belgium goalkeeper Thibaut Courtois was called into action early on and prevented Croatia on three separate occasions.
Lukaku was brought on in the second half, and the Inter Milan striker missed two big chances in quick succession.
Just after the hour mark, Lukaku reacted first to a rebound and managed to strike the post from close range with the goalkeeper out of position.
The striker then headed another easy effort over the bar with the goal at his mercy.
It was not Lukaku's night -- the striker went on to miss another two open goals as Croatia survived Belgium's late attacks.