Loyalty programs DO NOT provide any current competitive advantage to airlines or hotels because they ALL have them. Not having a program would obviously place the airline/hotel at a competitive disadvantage, but since, everyone has a program, it all washes out.
I believe that FF programs actually cause a significant decrease in the efficiency of the airline industry. If I want to fly, for example, between BOS and SLC, the carrier that can get me there at the least cost to itself is Delta, with its nonstop flights. But if I were a UA FF, I would fly to ORD or DEN and connect. I would have to be handled twice and far more fuel and other resources would be needed to move my same butt from BOS to SLC on UA than on DL. The converse is true if I were flying from BOS to SFO... UA could get me there more efficiently than DL with an inherent connection.
What would happen if everyone took the flights that were the most efficient? How much money could be saved by the industry, the passengers (extra time, misconnects)and the government (less ATC resources would be needed!)?