Many shops and even some auto parts stores will read codes for free if your “check engine light” is on. Sound great, but it’s important to understand that code retrivial is just the first step in finding the real problem. Not having all the information or jumping to conclusions based on codes could be costly. Here are two examples:
Today I had a 2007 Toyota Tacoma come in. The customer had a friend scan for codes and it had a P2714, shift solenoid stuck on. When he came to a sudden stop, it would slip on take off. When he went around a turn it would slip. He cleared the code and it came back. At this point the customer was thinking he needed to replace the soleniods, have valve body work done, or maybe even a rebuilt transmission. None of the above. He was two quarts low on fluid. A simple transmission service took care of the problem.
Another customer recently read the codes that indicated bad shift solenoids on his Chevy S10. After spending the money and his own time installing shift solenoids and new fluid, he still had the same problem. Like him, we scanned for codes first, but then we looked at how the transmission was operating, By doing some detective work, we found the computer wires were coming apart. His old solenoids were fine. He wasted money and time by trying to do his own diagnosis based on the codes he read.
When a shop charges for diagnosis time, they are looking to find out how serious your problem is. Using their equipement, doing research and using the knowledge they have accumulated over many years allows them to give you the best recommendations. Paying for an hour or two of diagnosis time can end up saving you hundreds if not thousands of dollars.