They give them away, free of charge, when you make a purchase. Get the card stamped X number of times and you can get a free whatever...or spend X amount of dollars and you can get a voucher for...wait for it...$5! to be spent in their store, of course. They never seem to want to give you the $5 in cash! These cards are a supposed reward for you, the loyal customer.
In actual fact they are a nuisance. How many do you have in your purse, wallet or handbag right now? They are annoying, you can never find the one you need when you get to the checkout. You need to spend time searching for it, only to miss out on getting the points because you only spent $9.98, and you need to spend at least $10 to collect any points.
These horrible little cards are promoted as a special bonus for you, the card carrying shopper because when you have a card you are entitled to great member only deals. If they really wanted to repay your loyalty, you wouldn't need a card and the great deals would be available to everyone. If you shop at many different stores you no doubt will have lots of these annoying little cards, one for each store you visit.
Don't be fooled: there is nothing special about these cards. Anyone can get one, you just need to say yes when it's offered to you.
You don't need to be loyal to the store just because the checkout operator gave you a silly little card to stuff into your purse. Pick cards you accept, preferably for stores you frequent regularly and then you'll be sure to use them and really reap the rewards, without carrying dozens of plastic cards all tempting you to spend more money.