Goal difference meant Hacken were not going to overtake Hammarby, but a win would see them join Bajen on 27 points and ensure they would be in the European places come the end of this round. Kalmar began the day in 11th, but like their hosts, had taken four points from their previous two.
And just 12 minutes in, it was the visitors who looked set to continue their recent good form, taking the lead when Charles Sagoe Jr laid the ball back for Carl Gustafsson to cross - the ball took a big deflection off a defender, but that didn't stop Aboubacar Keita reading it well and heading in at the back post.
The goal was no more than Kalmar deserved after a promising start, but one lapse at the back was their undoing. Midway through the half, Mikkel Rygaard delivered a corner and the away side gave Harry Hilvenius far too much space to head it home.
Adrian Svanback went close for Hacken late in the first half, as his shot from a tight angle was turned onto the post, but after the break, the home side didn't generate an effort on target, while Kalmar didn't do enough to test Andreas Linde to take all three points.
Both sides have now taken five points from their last three, but it'll be Kalmar who are the happier, moving up a place and going eight points clear of the bottom three, while a win for Djurgarden against Vasteras on 3rd August will see Hacken slip to fourth.
Follow all the latest from Allsvenskan on Flashscore.
