Osuna was invited to spring training in 2015 as a non-roster invitee. While initially not expecting to have any chance at making the major league team out of camp, Osuna impressed Blue Jays management through the first half of the spring. On March 22, he started a game against the Tampa Bay Rays and pitched 3⁄3 scoreless innings. After Steve Delabar was optioned to minor league camp on March 26, it was reported that Osuna would likely make the Opening Day roster as a reliever. His position on the roster was confirmed on March 31.
Osuna made his Major League debut in a game against the New York Yankees on April 8, 2015, striking out Alex Rodriguez and getting Stephen Drew to flyout. In making his debut, Osuna became the youngest pitcher to appear in a Major League game for Toronto, at 20 years and 60 days old. Through the first month of the season, Osuna became the most reliable arm in the bullpen for the Blue Jays, posting a 1.38 ERA through his first 10 appearances. He earned his first win on May 18, pitching 1⁄3 scoreless innings in a 10–6 victory over the Los Angeles Angels of Anaheim. In doing so, Osuna became the youngest pitcher to earn a win for the Blue Jays, at 20 years and 100 days old. He earned his first career save on June 22, closing out an 8–5 win over the Tampa Bay Rays. On August 7, Osuna became the youngest player in MLB history to record an extra-innings save, when he closed out a 2–1 win over the New York Yankees in the tenth inning. Osuna finished the 2015 regular season with a 1–6 record, 20 saves, 2.58 ERA, and 75 strikeouts in 69⁄3 innings pitched, and was the youngest player in the AL.
In the 2015 American League Division Series, Osuna recorded a five-out save in the fifth and final game, and in doing so became the youngest pitcher in American League history to record a save in the postseason, as well as the second-youngest to do so in MLB history, behind Don Gullett in 1970. Osuna pitched in 4 of the 5 ALDS games, and did not allow a baserunner in 5⁄3 innings pitched. He finished fourth in American League Rookie of the Year, receiving two second-place votes and two third-place votes.