From my time on Reddit years ago this question came up.
Some cashier's said they reciprocate the exchange back to the customer. If the customer puts cash on the counter for them to pick up, they'll put the change on the counter in return.
There also was probably some new training from covid where you didn't want to touch people directly, so those training materials probably still exist
I remember that explanation too. Additionally, in some cultures putting money directly into the hand of another person is frowned upon for various reasons.
This is the right answer. Source: worked as a cashier.
You are surprised you have to pay for stuff and need minutes to find your money? I’m surprised too that I have to hand you back some change and need just as much time.
You have been an asshole in general? Just let me grab a fresh roll of small coins, open it an take coin after coin and put everything on the counter.
My all time favorite: A guy came and was ready to pay the correct sum (it was like three coins). He immediately left after putting everything on the counter. I wondered why he was in such a hurry. Then I saw that he paid with a foreign coin that looked like a 2€ coin but was actually worth around 50 Cents back then. I don’t know why but I am really good in recognizing faces. So I used my superpower for my petty revenge: I waited around 3-6 months until this guy came again. He paid with a bill. When giving him his change, I grabbed that coin as the last one placed it on the counter and gave it back.
Cashiers are human beings. They are intellectually as able as everybody else. And they know all tricks from customers. So please, have some respect for people doing their jobs.