Juventus tvingades till en förändring redan efter uppvärmningen när Stuttgart kom på besök. För den tilltänkte startspelaen Douglas Luiz tvingades kasta in handduken efter en känning och ersattes av Khephren Thuram.
Det blev en händelsefattig första halvlek och det stod 0-0 när domaren blåste av spelet efter 45 minuter.
Det såg dock ut att bli ändring omgående i den andra halvleken. För Stuttgarts Deniz Undav satte ett mål i den 48:e minuten som dömdes bort för offside.
Det såg efter det ut att bli ett mållöst möte men så i den 84:e minuten drog Juventus Danilo på sig en straff och sitt andra gula kort. Stuttgart med drömläge.
Men Mattia Perin klev fram och räddade straffen och såg ut att bli poänghjälte för hemmalaget.
I den 90:e minuten bytte Juventus in svenske ytterbacken Jonas Rouhi som bara skulle in och spela av matchen.
Men Stuttgart skulle få in bollen i mål tillslut.
För El Bilal Toure som byttes in i den andra halvleken fick bollen av Enzo Millot och skickade in ledningsmålet för bortalaget på stopptid.
Och trots en forcering från det italienska hemmalaget var skrällen ett faktum när domaren blåste av matchen. Bortaseger för Stuttgart, alltså.
"Dagens match var helt oacceptabel... Alla spelare och tränaren borde skämmas", skrev X-kontot Forza Juventus efter den oväntade förlusten.
Startelvor:
Juventus: Perin - Savona, Kalulu, Danilo, Cabal - McKennie, Fagioli, Thuram - Conceição, Vlahović, Yildiz
Stuttgart: Nubel - Vagnoman, Rouault, Chabot, Mittelstadt - Karazor, Stiller - Millot, Undav, Leweling - Demirovic