Atletico are now four points clear at the top of the La Liga table
Diego Simeone’s side made an aggressive start and after spurning a few early chances they deservedly went ahead with a low finish from Yannick Carrasco in the 16th minute, doubling their lead in the 28th through Argentine forward Angel Correa.
Sociedad had their moments but were denied by six saves from Atletico’s talismanic keeper Jan Oblak while forward Portu hit the post late on.
They finally got a goal when defender Igor Zubeldia bundled the ball into the net in the 83rd minute, ensuring a nerve-shredding finish for the leaders.
Atletico were hemmed into their own half for most of the remaining minutes but clung on for the victory and know they will lift a first La Liga crown since 2014 if they beat Osasuna and Real Valladolid in their final two fixtures.
“If we didn’t suffer it wouldn’t be us,” said Atletico captain Koke.
“We’re tired, we worked spectacularly. We got two goals then took a step back, we had some great moments in the game and some less good ones but we got there in the end.”
Atletico lead the standings on 80 points, four clear of second-placed Barcelona and five ahead of third-placed Real Madrid, who visit Granada on Thursday.
“There’s two games left still, a lot of things can happen. We had a final today, we won it and we have another final on Sunday and will try to win that too,” added Koke.
Atletico had earned a crucial draw away to Barcelona on Saturday but the point felt like little after a spirited, ambitious performance at the Camp Nou and the result handed the advantage in the title race to Real.
Yet the champions’ 2-2 draw against Sevilla on Sunday meant Atletico’s fate was back in their own hands and from the start they went all out for the win, ceding possession to the Basques but eating up the territory with an aggressive pressing game.
Marcos Llorente missed the first clear chance of the game with a bursting run through the middle but was thwarted by Sociedad keeper Alex Remiro after opting to shoot rather than pass to an unmarked Luis Suarez.
Llorente had a hand in the opening goal, playing a one-two into Carrasco, who slotted between the legs of Remiro.
Atletico are often happy to sit on a one-goal lead but did no such thing after going ahead and struck again when Suarez barged his way towards the area and released Correa, who slotted into the bottom far corner.
They conceded their fair share of chances but were able to count on the ever-reliable Oblak and looked to be in control until Zubeldia’s late goal caused a nervous finale.
Yet they defended resolutely in the final minutes and Simeone punched the air as he raced down the tunnel at fulltime.