The 27-year-old became a permanent Stoke player in January following a loan stint from Aston Villa.
Manager Mark Hughes told the club's official website: "We're delighted that Stephen has committed himself to us. He's an outstanding player - I think we've seen that in the time that he's been with us.
"He's someone I've worked with before and that will help Stephen because he enjoys working in a stable environment where he knows people. I think that gets the best out of him and we'll reap the benefits of that and I think the next few years will be great for him.
"He's still a young man and we're arguably getting him at a time in his career when he should be at the peak of his powers. I think it's a great opportunity both for Stephen and the club."
Ireland, who has made 27 appearances for the Potters in all competitions, was due to come to the end of his previous contract in the summer.