You need to read the fine print of these offers. I have gotten burned twice already with T-mobile, and their response is read the contract you sign.
(1) Back in May I switch from Verizon to T-mobile. I had a payment plan with Verizon, and owed about $600. I traded in an iPhone 6 64GB and received $320 value for the phone. I asked the T-mobile sales person will T-mobile pay the remaining balance I owe to Verizon, and they said yes. After getting a bill from Verizon for over $600, I submitted for refund. I waited about for weeks and it was denied. I called and they stated it would get approved. Four weeks later I get $297 debit card. I called T-mobile and they stated the amount I was given for trade in was part of the $650 promotion. I argued and they said, it was on my contract.
(2) Last month I traded in an iPhone 6 Plus 64GB and was given a $380 credit for the phone. $216 was put on the Jump on Demand, and the remainder I used to pay for another phone that I was paying monthly payments on. I was told that I was going to pay $15 a month plus insurance of $8 for a total of $23 a month. I specifically asked will I be able to pay the same for the next new phone for my first switch. The sales person said, since it is the same model type and price it would be the same. Obviously, the sales person was making it up, because he had no idea. Last Sunday I receive an email stating that my monthly price will not be $20 plus $8 month for insurance. I called T-mobile and they said, since it is a new phone I need to pay more. I said, yes it is a new phone, but it is still $649. The pricing is the same. Their response, it is on my contract.