Abiola Dauda’s fifth goal of the season was enough to ensure Hearts became only the second visiting team to take maximum points home from Pittodrie this campaign.
The player on loan from Vitesse Arnhem snapped up the rebound when Adam Collin made a hash of collecting Alim Ozturk’s long-range free-kick in 64 minutes.
It means Aberdeen can’t now finish the season with a record points haul for a second successive season and Hearts have seriously dented their ambitions since the turn of the year.
They beat them in the Scottish Cup in January and the league twice in the last couple of months as the Dons fell off the pace at the top with what is now five defeats late in the campaign.
If Aberdeen’s challenge to Celtic fizzled out in the dying weeks of a long season then the same could certainly be said for Hearts’ bid to usurp last night’s opponents for the runners-up slot.
A third-place finish, and with it a Europa League qualifying slot, seems impressive enough at the end of a first season back in the top flight but, typically, Robbie Neilson wanted more.
Unfortunately his players couldn’t deliver, choosing the last few weeks to lose focus with a run of one win and five points from the last 24 available, the worst sequence since the Hearts manager took charge.
There was no sign of that changing in a first half that was devoid of entertaining football for long stretches as it was all about perspiration rather than inspiration.
Aberdeen manager Derek McInnes gave teenage defender Scott McKenna a first start after a spell on loan at Alloa, expecting him to learn a lot against a side that have often caused them problems.
The youngster could hardly have asked for a better 45 minutes to get acclimatised to the top flight as Hearts took until the 34th minute before managing a cohesive attacking move.
That ended when Prince Buaben’s 25-yard shot was pushed round the post by Collin in his only real moment of serious involvement in an uncharacteristically dull opening half.
At the other end Jonny Hayes and Niall McGinn did stretch their opponents in the wide areas at times but with Adam Rooney and Simon Church injured midfielder Kenny McLean was the focal point of the attack.
That lack of options is one reason why McInnes moved quickly to sign Bournemouth’s young striker Jayden Stockley under freedom of contract earlier this week.
At least the teams stepped up the tempo at the start of the second half with Hayes once again influential with a teasing cross that forced Jack Hamilton into a save. Then McGinn popped up on the left wing and found space for a shot that whistled across the face of the goal as it fizzed beyond the far post ,while Hearts themselves started to look dangerous on the break.
Ozturk produced a fine bit of skill, as did Dauda, but those were occasional flashes of brilliance as they continued to lack composure in the final third. That was not something you could accuse Hamilton of as the goalkeeper dribbled the ball around McGinn when a loss of control would have brought the loss of a goal.
Then right out of the blue Dauda broke the deadlock thanks to a mistake from Collin in goal at the other end after Ryan Jack was penalised for a foul on Callum Paterson at the edge of the box.
Jack was booked for his trouble but the real penalty came when Ozturk’s piledriver from the dead ball was only parried and Dauda reacted quickest to knock in the rebound.
Referee: A Dallas
ABERDEEN: Collin, Logan, Taylor, McKenna (Smith 70), Considine, Jack, Flood, McGinn, Hayes, Shinnie, McLean. Subs not used: Lennox, Reynolds, Robson, Storie, Wright, Nuttal.
HEARTS: Hamilton, Paterson, Ozturk, Souttar, Oshaniwa, Buaben, Kitchen, Djoum, Zanatta (Nicholson 68), Juanma (McGhee 89), Dauda. Subs not used: Alexander, Pallardo, Reilly, McGhee, Smith, Moore.