This all started because someone like Autozone thought it would be a good idea to have "free check engine light" So the people go there and Autozone whips out there $100 code puller. The customer then comes to the shop saying "Can you install my O2 sensor" Then to compete, little shops and other part stores offer the same thing.
The customer is now conditioned the wrong way. They all think diagnostic should be free because all you have to do is plug in that $100 code puller and you will instantly know what's wrong with the car. They have no idea that the code puller really only gives a general idea of where you should be looking at the problem. They believe it tells you exactly what is wrong with the car. Yeah sometimes an O2 sensor code really means its an 02 sensor so to speak, but not always. The customer doesn't know that though. They don't want to know that. They just want to save money. It would be almost impossible to recondition them at this point.
I do recondition customers though. The perfect time is when they come in saying "Autozone said I needed an 02 sensor." You really cant tell them otherwise. They insist on putting it in... because that unqualified parts guy said so. Put the 02 sensor in. After they waste their 250 bucks and it doesn't fix the problem... that's when you explain what diagnostics really is. Its the only way they will listen... when money they spent doesn't work.