Match ends, Feyenoord 3, Heracles Almelo 1.
Feyenoord won their first Dutch title since 1999 thanks to captain Dirk Kuyt's hat-trick in their win over Heracles Almelo on the final day.
Giovanni van Bronckhorst's side needed to win, with Ajax one point behind them, and nerves were settled when 36-year-old Kuyt pounced on a defensive mistake to score the opener after 38 seconds.
He headed in his second in the 12th minute and scored a penalty late on before Peter van Ooijen's consolation.
Ajax won 3-1 at Willem II.
Their manager Peter Bosz fielded the youngest starting XI in Eredivisie history for the game, with an average age of 20 years and 139 days.
Captain Davy Klaassen, at the age of 24, was the only player over 21 starting. But goals from Kasper Dolberg, Davinson Sanchez and Klaassen proved to be in vain for their title hopes.
The Amsterdam club's next game is the Europa League final against Manchester United on Wednesday, 24 May.
Feyenoord could have sealed the title last weekend, but fell to a shock 3-0 defeat at mid-table Rotterdam rivals Excelsior, who used to be their feeder club.
They topped the league for the entire season, the first team to achieve that since Ajax in 1997-98.
- 26NieuwkoopSubstituted forKarsdorpat 81'minutes
- 6van der HeijdenBooked at 38mins
- 4KongoloSubstituted forNelomat 53'minutes
- 7KuytBooked at 84mins
- 8El Ahmadi
- 9N Jørgensen
- 11EliaSubstituted forBasacikogluat 76'minutes
- 40El Hankouri
- 3te WierikBooked at 83mins
- 10BrunsBooked at 29minsSubstituted forPröpperat 82'minutes
- 29NiemeijerSubstituted forvan Ooijenat 74'minutes
- 18PetersonSubstituted forDarriat 80'minutes
- 20van Ooijen
- Dennis Higler
- Shots on Target
Second Half ends, Feyenoord 3, Heracles Almelo 1.
Attempt saved. Dirk Kuyt (Feyenoord) right footed shot from more than 35 yards is saved in the top centre of the goal.
Corner, Feyenoord. Conceded by Mark-Jan Fledderus.
Goal! Feyenoord 3, Heracles Almelo 1. Peter van Ooijen (Heracles Almelo) right footed shot from outside the box to the bottom right corner. Assisted by Brahim Darri.
Foul by Justin Hoogma (Heracles Almelo).
Karim El Ahmadi (Feyenoord) wins a free kick in the attacking half.
Samuel Armenteros (Heracles Almelo) wins a free kick on the left wing.
Foul by Eric Botteghin (Feyenoord).
Dirk Kuyt (Feyenoord) is shown the yellow card for excessive celebration.
Goal! Feyenoord 3, Heracles Almelo 0. Dirk Kuyt (Feyenoord) converts the penalty with a right footed shot to the bottom right corner.
Mike te Wierik (Heracles Almelo) is shown the yellow card for a bad foul.
Penalty conceded by Mike te Wierik (Heracles Almelo) after a foul in the penalty area.
Penalty Feyenoord. Nicolai Jørgensen draws a foul in the penalty area.
Attempt blocked. Bilal Basacikoglu (Feyenoord) right footed shot from the centre of the box is blocked. Assisted by Rick Karsdorp with a cross.
Substitution, Heracles Almelo. Robin Pröpper replaces Thomas Bruns.
Delay over. They are ready to continue.
Substitution, Feyenoord. Rick Karsdorp replaces Bart Nieuwkoop because of an injury.
Delay in match Bart Nieuwkoop (Feyenoord) because of an injury.
Substitution, Heracles Almelo. Brahim Darri replaces Kristoffer Peterson.