Also keep in mind that in the US a lot of the carrier's have reverted back to contracts without the contract. Meaning, they will give you a credit per month to the phone for 24 months. It's great if you plan to stay with that carrier for that time and plan on hanging onto the phone for 24 months.
For example on two of my lines on my account I traded in two phones which qualified for a free iPhone 7 32GB. So Verizon is giving me a $27.08 (x2) credit per month for 24 months. I upgraded one to a 256GB and one to 128GB so it's about $12 per month for two devices with the credit. However, if I choose to leave I'll pay the difference of the full cost.
So depending on the deal you could be locking yourself in for two years. Of course as mentioned in the thread, sometimes other stores have promotions that may not lock you in.