Go with the 12mm, sometimes the hub lip on your car can be greater than 10mm which cause the 10mm spacer to not sit flush with the hub
"Most BMWs have a hub lip depth of less than 10mm. But there are a few where the lip sticks out further. Production tolerances, and even choice of brake rotor and/or hub, can also play a factor in how the spacer fits. For instance, a rotor with an aluminum hat may be thinner than a cast iron part and the thinner hat will allow more lip to protrude. Many BMW owners have run into this problem, especially with 10mm spacers. The 10mm spacers are more susceptible to this because it physically will not fit over a lip larger than itself. Most spacer manufacturers consider 10mm to be a "tuner" fitment where the shop would make the necessary changes to ensure a correct fit. If any spacer bottoms out on the lip instead of against the rotor, there are two options: buy a larger spacer, or shave/grind down the lip until it clears. Using a larger spacer is better as moving up in size is usually a small jump (the difference between 10 and 12mm is the thickness of a nickel!"