Leverkusen made life unnecessarily hard in San Sebastian, but their superiority was ultimately reflected in the scoreline when Toprak struck early in the second half. Although the Bundesliga side failed to add to Toprak's goal, Manchester United FC's win over Shakhtar Donetsk in the group's other game meant the 1-0 win was enough to take Sami Hyypiä's team through.
Sociedad may already have been eliminated from Europe, yet pride was certainly their motivation as they immediately forced Leverkusen onto the back foot, creating two good early chances to let Leverkusen know they were in for a contest. It was a challenge Sami Hyypiä's men were willing to take, and Gonzalo Castro went close to giving them the lead with a curling free-kick which struck the inside of the post.
Emre Can, who has provided some eye-catching performances in the Bundesliga of late, showed his strength at both ends of the field, first to put off Griezmann and then to earn a free-kick which he pinged onto the head of Simon Rolfes, who missed the target from point-blank range. Stefan Kießling sensed his chance to put a stamp on the game, but failed to test the Sociedad custodian sufficiently, before Son then tested Zubikarai from distance.
Lethargic at times, Leverkusen allowed Sociedad to attack them and pass the ball around unchallenged, boosting their confidence and giving the home fans a lift. After Lars Bender brought an overly acrobatic save out of Zubikarai, a perilous low cross from the left flew menacingly past Bernd Leno's nose. It was a warning which Leverkusen heeded with Zubirakai this time forced into an acrobatic action to push Kießling's header behind for a corner.
From the resulting set-piece, Leverkusen took the lead with Toprak pouncing on the ball from close range. A huge weight appeared to be lifted from die Werkself's shoulders and they enjoyed a dominant ten-minute spell in which Kießling hit the post and was again denied at close range by Zubikarai. The news filtered through that Manchester United had taken the lead in the other group fixture, and Son almost doubled Leverkusen's advantage.
Second goal elusive
Sociedad raised their game once again, unwilling to leave the European stage off the back of yet another defeat. Griezmann was at the centre of all the action as Leverkusen started to stand off and allow them room. Their tactic was to hit on the break, and they had the perfect opportunity to seal victory late on when Son was put through on goal.
The South Korean's usually blistering pace was matched by the Sociedad defence, though, and he ended up running into a dead end. Sociedad almost snatched an equaliser at the death, but the ball only gave the illusion of entering the net as it hit the stanchion. Leverkusen breathed a sigh of relief, not that a goal would have been costly: with United winning, Leverkusen's place in the last 16 was secure.
Real Sociedad: Zubikarai, Martinez, Ansotegi, Mikel (66 Gaztanaga), Jose Angel - Bergara, Elustondo (62' Xabi Prieto), Pardo, Carlos, Agirretxe (80' Seferovic) - Griezmann
Bayer Leverkusen: Leno - Donati, Toprak, Spahic, Can - Rolfes, Bender, Castro, Hegeler (46' Kruse), Kießling (86' Derdiyok), Son (90+1' Kohr)
Goal: 0-1 (49' Toprak)