I also noticed the 1% difference between what the tesla apps shows and what
teslamate (another tracking tool) shows. This may be due to API changes from the tesla's end?
Agreed, the Stats developer says the SOC %age comes straight from the API. That's why all the 3rd party apps seem to show the same small error, as they all pull the same figure from the API.
I was trying to figure out how to get a proxy for the difference, and surmised it was the phantom/vampire drain, since when I pull up the Stats phantom drain data, my biggest errors occur when my phantom drain figures are the highest.
In Summer, my drain, as reported by Stats is 0.1miles/hr, better than average. Very low. My Rated Range figures as reported by Stats are all pretty spot on hovering between 306 and 312 miles.
However, when it's cold, Winter, and thru the shoulder months, my drain starts to get quite bad, 0.4miles/hr, worse than average. Some days, 0.8miles/hr. My Rated Range figure on those days can be quite poor, as low as 290 miles. You can literally match the worst drain days with your weirdest Rated Range dots in Stats.
Here's a chart I made in a spreadsheet:
Odometer is on the X-axis, Rated Range on the Y-axis. Red line is 310 miles. Blue line is a Moving Average.
The low estimate dots I have an exact match for from Stats' drain data, I've put in red boxes. As you can see, my chart shows some correlation with the seasons. My lowest Rated Range is during January and February, and starts to improve mid-March. By mid-May I get a range estimate of 314 miles. By mid-November, my Rated Range estimate starts to fluctuate lower, 303 miles on Nov 14. It was brutally cold. Notice those days I have drain matches for, were all high drain days, at 0.8 miles/hr or higher. I've gone to the car, and had the SOC %age show 5% lower than what I set it to charge to at night. During the Summer months, that doesn't happen, only the colder months.
The Stats app shows the same scatterplot, but I made my own spreadsheet, because there was a hiccup early in the year, where I lost all my early data. Luckily I exported some, and had it in a CSV file, so my spreadsheet shows a little more early data than Stats does.