I recently saw a rare (for me) sight... someone in a store paying with a check. Is there any rational reason to do this? Anyone with a checking account can get a debit card for it, and there is no cost.
Rational reason. They like this method of paying.
There is a delay between writing the check and having the money removed from the account.
Their checkbook makes a carbon copy of the check, so they can update their balance easier. They can leave the store and update their checkbook register, or the spreadsheet or their Quicken or budget application data. They don't have to try and remember the amount, store name or date.
It's because they're used to it and it works for them. Everything other reason is meh.
Used to, you could float a check to payday... have no money in the account, yet write a check a couple days before payday because you know that's how long it takes for the check to get to your bank and when it does, you'll have the money.
But most (if not all) business that still accept checks (a dying subset, for sure) electronically present the check now. They take it from your hand, run it through a machine at the register, and it immediately clears the bank, just like a debit card would.
We're nearing the end of the check era, atleast on personal accounts. Kids growing up now won't even know what a check is, aside from it's namesake on a type of bank account.
Here's another rational reason: Discount.
This typically works only in smaller stores, where you're talking directly to the owners, but it is sometimes possible to negotiate a few percent off the price when paying by check, since otherwise they'd have to give a few percent to the credit card company. (Occasionally the sales reps at larger stores have the authority to cut this deal, but it's far less common.) Not worth worrying about on small items, but if you're making a large purchase (a bedroom suite, for example) it can pay for lunch. And sometimes the store's willing to give you more discount than that, simply because with checks they don't have to worry about chargebacks or some of the other weirdnesses that can occur in credit card processing.
Another reason: Nobody's very likely to steal you check number and try to write themselves a second check or otherwise use it without authorization. It's just too easy to steal credit card info these days to make printing checks worth the effort.
But, in the end, the real answer is that there's no rational reason not to use checks. So it takes you a few seconds more to complete the transaction. What were you going to do with those seconds that makes them valuable? Especially if they're seconds that the store is spending bagging your purchase, so there's no lost time... and the effort really isn't all that different from signing the credit card authorization.
Quoting Dean Inge: "There are two kinds of fool. One says 'this is old, and therefore good.' The other says 'this is new, and therefore better.'"