A bunch of companies are mistaking by thinking they should focus on believing that good customers should not be rewarded into CRM programs. The belief is that since they are good customers and that they are happy anyway about the service, there is little more to expect from those customers. But actually they are the ambassador of your brand, and you could leverage them to improve your products and customer service.
Also, one of the main challenge is to get an agressive sales strategy. As competition is getting tough, it is difficult to get a new customer, and hence, companies are willing to pay lot of money to get them.
That is what is going on with cell phones companies, where you'd better change your service if you want to change your phone, as companies are giving better discounts to prospects than actual customer. But this is a dangerous game to play too.
Focus On One Problematic
You can't at the same time reward loyal customers while getting new ones. Of course, owning a great loyalty reward program will turn some new customers in, but that shouldn't be the main goal.
Get A Large Portfolio Of Reward
I believe that the reason should be in providing different kind of customer advantage upon you are targeting loyal customers or prospects. Probably loyal customers would imply more after sales support or intangible assets (invitations to special events, or others), while a prospect is just seeking for the best deal right away.
Anyways, it is always difficult to size the reward, but it is important first to keep your best customers rewarded, because they give you more than sales, but also potential new leads, and secondly, to keep some rewards for prospects that are hard to measure compare to your other customers.