Apple DTS Engineer answer : The battery level API is returning the values it is expected to return. The API does not specify the degree to which the battery level value is rounded. As you found, on some iOS versions, it is rounded to 1%, and on other iOS versions, it is rounded to 5%. There is no other code you can use to change this degree of rounding. 😤