Former service advisor for Ford, Landrover and Mercedes checking in.
The fact that keys NEED to be reprogrammed to the vehicle is not the fault of the dealer. Vehicles today have an increasing amount of software and electronics, and the ignition system is just another part of that. Keys no longer just turn in an ignition barrel, they also send and recieve vehicle specific data from the relevent control units in the vehicle itself. For the same reason you would not want the same cut of key to start any Range Rover, so you cannot have the same programming codes on every key produced. Ergo, they need to be programmed to the vehicle.
The process of programming keys is often quoted as a “ten minute” job, but this is not always the case. Generally the technician hooks the vehice up to the required computer terminals, and runs the required programs to align the key to the vehicle. It is extremely common that this program will need to be repeated multiple times. Why? It will take a better electrician than me to answer that question, but anything involving those control units can be very twitchy. So in my experience, I have seen keys programmed in 10 minutes, and keys that took over an hour (Mercedes Vito vans were particularly annoying IME).
In any workshop I worked, we set a fixed fee for reprogramming keys, generally set at about one hours usual labour rate. Bear in mind that most dealerships will charge you for the first hour regardless of why the car is there (for justifiable reasons). Also bear in mind that the reprogramming still requires an trained dealer techician. You are paying for his expertise, whether it is for programming a key, or for repairing problems in the gearbox or instrument cluster.
As to the price of the physical key itself, I believe that is fixed by the manufacturer. I dont believe any dealership makes much profit on them, and I do know that the cost price of the key has rocketed in the past few years.
A common situation I faced was a customer who would buy a key from our parts department, then indicate total outrage that we in service would be charging more money if he wanted it programmed. Sorry sir, but if you bought brake pads, would you expect us to fit them for free? If you bought a steering rack, should the fitting be free? Programming keys is an equivalent situation, however much you might protest otherwise.
To anybody complaining about the cost of programming keys, do you have any idea how much the software costs just to be able to do that programmng? I wont make up any numbers, but it aint two bits for damn sure.