Welcome to Tesla Motors Club
Discuss Tesla's Model S, Model 3, Model X, Model Y, Cybertruck, Roadster and More.
Register

Is Stats For Tesla Rated Range Accurate?

This site may earn commission on affiliate links.
I have seen multiple threads lately about reduced rated range. My question has to do with Stats For Tesla and whether or not it accuately shows rated range, taking battery degredation into account. For example, if you look at the main charging/battery display page below, it shows my rated range as 309. I have a P3D so my "original" rated range was a max of 310. If my P3D is one year old and has 13,500 miles, does this mean that my battery is in good health with little to no degredation?

Thank you,
joebruin77
IMG_1872-StatsForTesla.PNG
 
I have seen multiple threads lately about reduced rated range. My question has to do with Stats For Tesla and whether or not it accuately shows rated range, taking battery degredation into account. For example, if you look at the main charging/battery display page below, it shows my rated range as 309. I have a P3D so my "original" rated range was a max of 310. If my P3D is one year old and has 13,500 miles, does this mean that my battery is in good health with little to no degredation?

Thank you,
joebruin77View attachment 494870

Yes. The 309 number is pretty accurate. Some caveats:

1)But you should only look at it when at a high (70-90%) state of charge. Rounding Errors in the SoC value are a larger % error when the value of SoC is low. (At 30% SoC mine says 304 at 100%, but that is false. It is due to rounding error - my actual 100% is 300.)

2) If the underlying constant changes you have to rescale the result to determine battery available energy content. This is rare but just occurred on 2020 vehicles.

3) If the BMS loses track this can be inaccurate. This is fairly rare. You can attempt deep discharges and charged to 100% but they are often pointless/futile.

4) Note that cold temperatures affects this number because it reduces available energy temporarily.


It appears you have a pretty solid battery.

If in doubt, the car provides the golden info - charge to 70-90%, then swap to miles. Divide miles by the SoC %. It will be accurate to within about 1% (+/-3 miles). Stats has an advantage here because it has access to the decimal point on the rated miles remaining which gives slightly better precision. But the SoC % is still just two digits so that uncertainty creates error unless you deliberately are careful to watch for the point where the % changes (the 0.5% point).
 
Last edited:
The answer is Yes.

Having said that I have noticed a slight mismatch between Stats and other 3rd-party apps, and what the car reports for SOC%age. Probably something to do with the API not updating as often as the car itself. I'll notice the SOC%age is often 1% higher than what the car or Tesla app reports. Because of that, the Rated Range number could be a few miles low. When the SOC number matches, the Rated Range math lines up, and when the SOC number is off by 1%, your Rated Range could be 3 or 4 miles low.
 
The answer is Yes.
Having said that I have noticed a slight mismatch between Stats and other 3rd-party apps, and what the car reports for SOC%age.
The API reports two numbers, that do not always match (response truncated for clarity):
{
"response": {
"battery_level": 58,
"usable_battery_level": 57,
}
}

I believe the car reports the usable_battery_level in the UI. If you query regularly while charging, both numbers eventually match. The Telsa app also displays "usable_battery_level".

Here's another sample where they both match:

{
"response": {
"battery_level": 59,
"battery_range": 181.63,
"time_to_full_charge": 1.92,
"usable_battery_level": 59,
}
}

Further on:
{
"response": {
"battery_heater_on": false,
"battery_level": 60,
"battery_range": 182.48,
"usable_battery_level": 59,
"user_charge_enable_request": null
}
}

Phil
 
Last edited:
The answer is Yes.

Having said that I have noticed a slight mismatch between Stats and other 3rd-party apps, and what the car reports for SOC%age. Probably something to do with the API not updating as often as the car itself. I'll notice the SOC%age is often 1% higher than what the car or Tesla app reports. Because of that, the Rated Range number could be a few miles low. When the SOC number matches, the Rated Range math lines up, and when the SOC number is off by 1%, your Rated Range could be 3 or 4 miles low.

I have noticed something on my API app that is similar to what you have seen. I use Remote Tesla app and I noticed that the SOC usually matched the car, but not in all cases, and if it was off, it was always 1% higher. And I was able to determine that it always happened when the actual percent value was almost halfway between two values.

For example, if the real car SOC (from TM-Spy) was at 50.4 SOC, the Remote Tesla app would show 51%, instead of the properly rounded value of 50% that the car would show. At first I thought it was an update timing problem, but I noticed that when I was depleting my battery, and SOC was dropping, it would always lag the car value, but when I was charging, the app value would always lead the car value; in other words, it would turn from 50% to 51% before the car would show the same change. This would seem to indicate it was a rounding problem with the app, as opposed to a timing issue.

However, I know the app reads only a whole number value from the API (I confirmed this with the app author), so that theory doesn't make sense either.

It remains an unsolved mystery to me at this point. But at least I know it only happens at those in between cases, and therefore know that the real SOC value is actually very close to the midpoint of the two numbers.

I'm not sure if that is what is happening with the Stats app, since I don't use it.
 
  • Like
  • Helpful
Reactions: KenC and Sherlo
I have seen multiple threads lately about reduced rated range. My question has to do with Stats For Tesla and whether or not it accuately shows rated range, taking battery degredation into account. For example, if you look at the main charging/battery display page below, it shows my rated range as 309. I have a P3D so my "original" rated range was a max of 310. If my P3D is one year old and has 13,500 miles, does this mean that my battery is in good health with little to no degredation?

There's a big misconception as to what that number means.

It's not the range of your car!!!!

It's the range of the vehicle driven at the EPA specified speeds and conditions that is based on testing and decisions from the manufacturer.
And more specifically as shown in the car, it's the result of an algorithm that has changed over time, as well as a voltage measurement that can differ based on the history of the batteries.
In other words, even the displayed number has changed over time.

The range of your car is actually based upon a number of factors, which include temperature, speed driven, weather, HVAC status, daylight status, etc. And these factors can easily decrease the actual range by over 50%.

So, in short, NOTHING is accurate!!!!!!
 
It's not the range of your car!!!!

He was not asking about the range of his car though, he was asking about the health of his battery. This gauge is as reasonable a proxy for that as you can get. Of course the BMS can get confused (though not often) but there is still a pretty good, direct correlation between this value and battery health...assuming the underlying history of the constants is known.

A measure of battery health/capacity is actually the most useful way to think of this value, rather than think of it in relation to EPA range or how far you can drive - though for convenience Tesla chooses to make the constant such that the number matches the EPA value - except for 2020 vehicles...so far.
 
Last edited:
  • Like
Reactions: Sherlo
The API reports two numbers, that do not always match (response truncated for clarity):
{
"response": {
"battery_level": 58,
"usable_battery_level": 57,
}
}

I believe the car reports the usable_battery_level in the UI. If you query regularly while charging, both numbers eventually match. The Telsa app also displays "usable_battery_level".

Here's another sample where they both match:

{
"response": {
"battery_level": 59,
"battery_range": 181.63,
"time_to_full_charge": 1.92,
"usable_battery_level": 59,
}
}

Further on:
{
"response": {
"battery_heater_on": false,
"battery_level": 60,
"battery_range": 182.48,
"usable_battery_level": 59,
"user_charge_enable_request": null
}
}

Phil
Thanks for that. Since the car always shows the lower number, than the 3rd-party app, then that must mean the car is showing "usable battery level", while the number I've seen Stats and EV Watch use must be "battery level".

Here's where you can see it, when you show the Tesla app with the 3rd party apps, like Stats or EV Watch. The Tesla app is showing 59%, and Stats is showing 60%.
IMG_4149 (1).jpeg
 
1% (+/-3 miles).

Correction: About +/-1.5 miles at a sufficiently high SoC. Can be much larger error below 50% SoC. In addition there is the issue of the SoC discrepancy mentioned above which could result in additional error depending on how Stats calculates the max projected range.

Overall these are small errors relative to the shift you will see from a degrading battery, and they will tend to average out to zero error (the reporting issue may result in a consistent offset).
 
The API reports two numbers, that do not always match (response truncated for clarity):
{
"response": {
"battery_level": 58,
"usable_battery_level": 57,
}
}

I believe the car reports the usable_battery_level in the UI. If you query regularly while charging, both numbers eventually match. The Telsa app also displays "usable_battery_level".

Here's another sample where they both match:

{
"response": {
"battery_level": 59,
"battery_range": 181.63,
"time_to_full_charge": 1.92,
"usable_battery_level": 59,
}
}

Further on:
{
"response": {
"battery_heater_on": false,
"battery_level": 60,
"battery_range": 182.48,
"usable_battery_level": 59,
"user_charge_enable_request": null
}
}

Phil
Looking at JSON, I feel I'm back in the office!
 
  • Funny
Reactions: Dre78