Hamels did have a lead in his second start with the Rangers. He had a 3-1 cushion going into the bottom of the fifth against the Mariners but gave up a home run to Mark Trumbo leading off the inning and then back-to-back shots to open the sixth to Nelson Cruz and Robinson Cano.
That gave the Mariners a 4-3 lead and they hung on to end the Rangers four-game winning streak. Hamels is still looking for his first win with the Rangers.
"Things felt good starting off but as you go deeper into the game, you definitely have to hold the lead," Hamels said. "I wasn't able to get ahead of hitters."
The big hits off Hamels came leading off innings. The Rangers led 2-0 into the bottom of the third when Logan Morrison led off with a double. He went to third on a one-out infield single by Ketel Marte and scored when Hamels committed a balk on an awkward pickoff throw to first.
The Rangers got that run back in the fourth. But Trumbo opened the fifth by hitting the first pitch -- an 89-mph cut fastball -- over the center field fence.
In the sixth, Hamels began the inning with a cut fastball to Cruz that missed. Down 1-0, Hamels threw a changeup and Cruz hit it into the left-field seats for his 32nd home run of the season and his 11th in the last 17 games.
Hamels then missed with three straight pitches to Cano. He got one fastball over for a strike but then threw another that Cano hit out to center to give the Mariners the lead. This was the 12th time Hamels allowed at least three home runs in a game in his career.
"When you're leading off innings, you're trying to get ahead of hitters and I wasn't able to do that," Hamels said. "I was too fine. When you find yourself behind in counts, hitters start looking for pitches they can do some damage with. I definitely put myself in a hole. You do that, you're going to get yourself in trouble."
Friday marked the fourth time this season a Rangers starter has allowed three home runs in a game. It happened twice to Colby Lewis and once to Ross Detwiler on April 19 against the Mariners at Safeco. Hamels gave up two home runs in his first start on Friday against the Giants.