If you feel that you have already have a good phone plan in place for a great price, i suggest buying for the phone outright. The reason being that once you change your phone plan to a higher price even though you are getting a new phone, your current old promotion plan will be gone forever and perhaps it may never come back anymore. So once your two years contract gets over, you will have to see what new phone plans Fido has at that time, within your budgets. If you are someone who loves to keep changing new phones every two years, then it is worth going for that 2 years contract with Fido. If you are someone who doesn't care so much about replacing old phones with new ones every 2 years, then definitely you should stick to your old phone plans. I know first hand, how some people changed their old plans to new ones and was surprised to find that they can never come back to their old plans, because they are just not being offered by the phone carriers anymore by the end of their 2 year contracts.
Keep in mind that by locking you into a 2 year contract, the phone carrier company will be earning money off from you, and preventing you from changing phone carrier during those periods. The phones which you get for cheaper prices by locking into 2 years contract will not be worth much at the end of 2 years. For example, if at the time of locking into a contract with your phone carrier, the new phone is worth $1000. You only pay extra $15 per month, which makes it $15 X 24 months which is equal $360. You are saving $640 on the price of the new phone over 2 years. However, by the end of 2 years, your phone could be worth only $360 if you decide to sell it. Based on this conclusion, you can say that you are paying for the correct price of the phone which is $360 in 2 years time. That $640 which you thought you saved won't exist after 2 years.