You are supposed to code a replacement OBC with the car's "central coding key" (ZCS) to tailor it for the car. Many aren't aware of this, or have an allergy to BMW dealerships, and will suggest getting a used one out of a car that is similar enough to your own (e.g., an OBC out of a 328i sedan if you have a 328i coupe).
Perhaps the most common issue for an OBC that was coded for a significantly different car is the fuel consumption and range calculations being off.