Borussia Dortmund fell to their first league defeat of the season as Erling Haaland suffered a frustrating afternoon in front of goal, with Freiburg deservedly taking maximum points.
Vincenzo Grifo scored an early goal of the season contender, rifling a beautiful free-kick into the top corner from 30 yards to give Freiburg an early lead.
Jude Bellingham looked most likely to equalise for Dortmund, slaloming through the middle but shooting straight at Mark Flekken, before hitting the post with a header.
Euro round-up: Muniain claims win for Athletic against Villarreal, Leipzig trail Bayern and Dortmund
That would have been harsh on Freiburg, however, as they were the better side throughout, and the hosts should have doubled their lead through Jeong Woo-yeong, who missed a gilt-edged chance from just a few yards out.
Freiburg got their just rewards after the restart when Roland Sallai doubled the advantage following another rapid counter-attack, firing past Gregor Kobel from point-blank range.
Yannik Keitel scored an unfortunate own-goal to give Dortmund a lifeline, turning Felix Passlack's cross into his own net with half an hour still to play.
The best chance to draw level fell to Haaland but the Norwegian scuffed a poor shot at goal which just about summed up his day.
Despite dominating possession, the visitors registered just two shots on target all afternoon and their profligacy meant they were unable to claw back even a point.
TALKING POINT - Bruising defeat for Dortmund
A week is a long time in politics, they may say, but it's a very long time in football, it seems. Seven days ago Dortmund were strolling to a 5-2 victory over Eintracht Frankfurt, with Haaland scoring twice and the supporters laughing off the suggestion their side will miss Jadon Sancho.
Three days later, Marco Rose's side were taught a lesson in a chastening defeat to rivals Bayern Munich in the German Super Cup. And if there was any sense of a feel-good factor left in their system from match day one, it was banished by a well-organised and brave Freiburg side, who probably should have been out of sight long before the full-time whistle.
The two goals conceded last Saturday mattered little at the time considering the size of Dortmund's victory, but now it's time for a closer look at a crumbling defence that has conceded seven goals in just three games. Their pain was compounded by a toothless attacking performance, with Haaland snatching at any half chance that came his way.
Now that the honeymoon is over for Rose, he has plenty of issues to address.
MAN OF THE MATCH - Vincenzo Grifo (Freiburg)
A toss-up between Grifo and the excellent Sallai, but how can the former be overlooked after his unforgettable free-kick?
Freiburg: Flekken 7, Schmid 7, Lienhart 7, N. Schlotterbeck 6, Gunter 6, Keitel 6, Hofler 7, Grifo 8, Sallai 8, Holer 7, Jeong 6.. subs: Eggestein N/A, Demirovic 5, Kubler N/A, Haberer 5, Schade 5.
Dortmund: Kobel 5, Passlack 5, Witsel 5, Akanji 7, Schulz 5, Bellingham 7, Dahoud 6, Reyna 7, Reus 6, Haaland 5, Malen 5.. subs: Guerreiro 6, Hummels N/A, Moukoko N/A, Brandt 5, Can N/A.
6' - GOAL! Freiburg 1-0 Dortmund (Vincenzo Grifo): A poor first touch from Passlack sees him concede a free-kick in a desperate bid to retrieve the ball. And oh my word, what a strike by Grifo, who smashes the free-kick into the top corner from all of 30 yards. That's an absolute rocket!
32' - Off the post! Bellingham is left completely unmarked from Reyna's corner delivery and his header crashes off the bottom of the post with Frekken beaten.
33' - Jeong should make it two! Freiburg are on the counter attack, the ball is switched to Grifo who curls the ball into the middle, seemingly putting it on a plate for Jeong, but he doesn't connect properly with the shot and misses from just a few yards out!
53' - GOAL! Freiburg 2-0 Dortmund (Roland Sallai): That has been coming! Freiburg get their reward as they double their lead on the counter-attack. Bellingham is hesitant on the ball and loses out to Hofler as Freiburg pile forward. Sallai rolls it down the left for Jeong, he crosses into the middle, it's headed down by Hofler and Sallai rifles it home.
59' - GOAL! Freiburg 2-1 Dortmund (Yannik Keitel own goal): Dortmund are back in the contest! It's a lifeline for the visitors as Keitel's left leg makes the final contact to Passlack's cross and Flekken, despite his best efforts, can't keep it out.
68' - Chance for Haaland! The Norwegian races through on goal but he takes a touch too many, the ball sits up too high as he fires at goal and it's sent into row-Z.
Bellingham on target as Dortmund cruise past Bielefeld
Haaland ruled out for 'a few weeks' after suffering hip injury