Erick Aybar and Johnny Giavotella delivered RBI singles off Danny Farquhar to tie it in the eighth for the Angels, who had blown a one-run lead earlier in the eighth.
Perez, a 24-year-old catcher from Venezuela, singled in his first major league at-bat. He then swung at the first pitch leading off the ninth from Dominic Leone (0-3), dropping it into the bullpens beyond the left-field fence.
Perez is the first major leaguer to hit a walkoff homer in his debut since Miguel Cabrera did it for the Marlins in June 20, 2003.
Los Angeles acquired Perez from Houston in the offseason and recalled him Monday while he was batting .361 for Triple-A Salt Lake, eager to boost their stagnant offense.
Albert Pujols also hit his 525th career homer for the Angels, who got seven innings of five-hit ball from Garrett Richards before the late-inning fireworks.
Huston Street (1-0) pitched a perfect ninth.
Mike Zunino drove in two runs for the Mariners, who have lost five of six. Kyle Seager drove in the tying run and Zunino had a tiebreaking RBI double in their three-run eighth against reliever Joe Smith.
But Giavotella drove a single between two diving infielders to bring in the tying run later in the eighth.
Richards had five strikeouts and hit 97 mph regularly, but the right-hander also threw three wild pitches and struggled with efficiency in the fourth start of his season, which began late after his long recovery from surgery late last year. He got into a bases-loaded jam in the sixth with a 3-0 count to Dustin Ackley, but threw three straight called strikes to escape.
James Paxton kept pace easily during seven innings of four-hit ball, shutting down the Angels after the first inning.
Kole Calhoun singled on Paxton’s first pitch, and Pujols drilled a 3-0 fastball well over the 390-foot sign in left-center for his fifth homer. The three-time NL MVP is surging after a slow start to the season, getting a hit in eight straight games.
Mariners: Although the starting job as shortstop has been given to Chris Taylor, Brad Miller is staying in the majors while OF Austin Jackson is sidelined for the next two weeks.
Angels: LHP Hunter Green, a second-round pick in 2013, has a stress fracture in his throwing elbow. The 19-year-old prospect missed all of last season with back problems.
Mariners: Roenis Elias (0-1, 3.86) makes his third start of the season after filling Hisashi Iwakuma’s rotation spot.
Angels: Los Angeles wraps up the series with C.J. Wilson (1-2, 2.73), who has given up more than two earned runs in just one start this season.