MyChevy App Reveals Juicy Technical Details On The Chevy Bolt Battery

Chevy Bolt EV Charging


Reddit user digs into the MyChevrolet smart phone application and finds some interesting info

While searching through the apk of the MyChevrolet app for unrelated reasons, reddit user hairy_tick stumbled across an interesting JavaScript file. The contents of which contain a wealth of information on how the Chevy Bolt EV calculates range, battery capacity loss and charging speed.

Thankfully, the file is well commented and contains clean code. Software developers typically leave comments within their code to explain the purpose of a function/method. In many programming languages, a single line comment is preceded by ‘// ‘. These lines are purely for the benefit of the person deciphering the code and are never executed by the program.

Battery Degradation

Regarding battery degradation:

The kWh capacity degradation by odometer. Used as fallback for estimating remaining battery capacity from odometer, when no other capacity information is available. The first column (D0…Dn) is the odometer in km, and the second column (C0…Cn) are the corresponding capacity values in kWh. The table is based on empirical data assuming typical driving behavior of ~30,000 km/year and 1 DCFC/week.

As noted above, this data assumes “typical driving behavior.” It is an estimate for the drop in capacity over time. Depending on the habits of the driver, capacity loss could vary. Excessive fast charging and extreme temperatures are more likely to lead to increased degradation. Maintaining an optimal state of charge and not pushing the car should result in less capacity loss over time.

Here is the estimated degradation according to the document: [odometer in km, estimated available capacity]



[0.0000000, 60.00],

[24140.160, 60.00],

[48280.320, 58.96],

[72420.480, 57.93],

[96560.640, 56.89],

[120700.80, 55.85],

[144840.96, 54.82],

[168981.12, 53.78],

[193121.28, 52.75],

[217261.44, 51.71],

[241401.60, 50.67],

[265541.76, 49.64],

[289681.92, 48.60],

[313822.08, 47.56],

[337962.24, 46.53],

[362102.40, 45.49]


At 225,000 miles, a Chevy Bolt EV owner can hopefully expect at least 175 miles of usable range. Vehicles that rarely ever see DCFC charging should fare better than this. These numbers assume 1 DCFC fast charge / week.

Although the rate of capacity loss seems to be quite linear. In practice, rate of battery degradation is usually greater early on. Then the rate of capacity loss typically slows as the vehicle ages. So take these estimates with a grain of salt as they are most likely an average.

There is a great deal more info in the document. Some interesting tidbits are included below. But you can check out the full text at the source link at the end of the article. I have tried to clean up the code some for readability. Note if you are not familiar with reading code, you can pretty much stop here.

Chevy Bolt EV battery pack

State of Charge Levels

// empty battery level (SoC) – used for the battery-empty indicator and for defining the point at which a route/destination becomes unreachable (0% uSoC / 4% hvSoC)

// note: the car will continue driving until reaching -3.2% uSoC (equiv. to KeOOER_Pct_OOESOCFinalwarn = 1% hvSoC), which gives some additional buffer.

// At -3.2% uSoC the contactors will open and the car will go dead. In that state the car will not restart until it is recharged back to 0% uSoC (4% hvSoC).

“Empty_SoC”: 0,

Battery Capacity

// function for computing scaling factor for battery capacity depending on battery temperature

“kWhCapacity_Temp_Factor”: function(t)


t = Math.max(-20, Math.min(t, 0));

var k = (11 / 20) / 92;

return (1 + t * k);


// function for computing min/max hvSoC range depending on battery temperature

“hvSoC_Temp_Range”: function(t)


t = Math.max(-20, Math.min(t, 0));

return [4 – (t / 20) * 11, 96];


DC Charging Profile

Based on the current state of charge and the current battery temperature. The default ideal battery temperature is listed as 25 °C / 77 °F. The default charging current is 150 amps.

// DC charging profile, where the first row (T0…Tm) is the battery temperature, the first column (S0…Sn) is the SoC buckets, and

// the cells (Axy) are the corresponding current rates (A). The corner cell (TT) is the index of the default temperature column.


// TT T0 T1 T2 … Tm

// S0 A00 A01 A02 … A0m

// S1 A10 A11 A12 … A1m

// S2 A20 A21 A22 … A2m

// ………….. … …

// Sn An0 An1 An2 … Anm




[0x008, -30.0, -20.0, -10.0, 0.00, 10.0, 15.0, 22.50, 25.00, 40.00, 45.00, 50.00],

[67.00, 0.000, 3.000, 12.00, 30.0, 54.0, 93.0, 134.0, 150.0, 150.0, 75.00, 0.000],

[80.00, 0.000, 3.000, 12.00, 30.0, 54.0, 93.0, 100.0, 100.0, 100.0, 75.00, 0.000],

[90.00, 0.000, 3.000, 12.00, 30.0, 54.0, 60.0, 60.00, 60.00, 60.00, 60.00, 0.000],

[96.00, 0.000, 3.000, 12.00, 30.0, 40.0, 40.0, 40.00, 40.00, 40.00, 40.00, 0.000],

[100.0, 0.000, 3.000, 12.00, 25.0, 25.0, 25.0, 25.00, 25.00, 25.00, 25.00, 0.000]


Source: Reddit

Categories: Chevrolet

Tags: , , ,

Leave a Reply

42 Comments on "MyChevy App Reveals Juicy Technical Details On The Chevy Bolt Battery"

newest oldest most voted


180,000. miles of Bolting around, before reaching approximately 20% (48.60 kWh) of LG Chem battery degradation, would be most welcome.

Considering that those numbers are ballpark degradation numbers (289681.92 km), the Chevy Bolt will absolutely retain its desirability in the preowned/used car market.

Just for comparisons sake, my to be 6 year old (2013) 24kWh Leaf (w/ no ATMS) with 75 k mi. driven, will have the same 20% degradation next year (LeafSpy Pro), with 750 DC fastcharges over the 72 months of in service use. That is with a bit over twice the DC fastcharger use on the Leaf, in comparison to the Bolt.

Interestingly in terms of number of charge cycles the 75K miles you have on the Leaf correspond to 187.5K miles on the Bolt. So your actual Leaf is doing better than the theoretical Bolt.

Maybe the benefits of a TMS may turn out to be overblown in the end, if you want longer battery life, a bigger battery is more beneficial than a TMS (and more bang for the buck).

Remember these data is there for the app to function without connection to the car. These are probably worse case scenarios so the app can plot routes.

I’m doing only slightly better with my 2013 Leaf S at 80k miles and roughly 14% degredation (LeafSpy Light) I’m somehow happy with that…
*edited* We’ve babied this thing since day one!

The above average “14% degradation” that your Leaf is demonstrating at “80k miles”, could also be attributed to considerably less DC fast charging, as my CHAdeMO use at 6yr/80k mi., will be approximately Level 3 – 750 / Level 2 – 1700 charging cycles, in total.

I have subjected my Leaf battery to less than ideal multiple 300 mi. road trips, with repetitive (4+) back to back DC fast charging, and extended +120 F battery temperature driving/charging , at or above the flow of traffic.

Compared to a Tesla battery it’s rubbish

Well, the Bolt and the Leaf don’t explode and catch fire, nor kill their drivers. I prefer a weaker EV than killed in a Tesla!

What do we think about the charging speeds in the table at the end? Does the system interpolate between those points or are there step changes when a new one is reached?

Also interesting to see that they actually seem to be using State of Charge instead of State of Energy. I assumed up until now that SoE was probably used behind the scenes and that lay people just said SoC (at least since I learned the difference). I know of one German car maker that definite calculates based on SoE, which should result in a slightly more accurate GOM, I assume.

Well, we know from observed charging curves that several step-downs occurs with increasing SOC. Not sure if that’s actually a function of software or hardware.

If it’s the former, it would be really cool to have a software update eliminate that silly step function to increase effective charging rates. 🙂

Even if the software update was only done after the warranty expired, it would still be a positive. Think about getting an 8 year old used Bolt that can charge faster than a 4 year old Bolt. It isn’t a huge plus, but it is a plus. I still hope that next year GM will increase the max charge rate for new Bolts. It really looks like they are babying the pack more than is needed to protect it during the warranty period.

I find it funny how people keep talking about “babying”, based on pure speculation. Ever considered that the limits GM uses might be the actual safe limits of the cells used, beyond which degradation not just increases slightly, but rather skyrockets, and creates a major safety hazard?…

What is “state of energy”? I have read a bunch of research papers about batteries, and I’ve never seen that term used…

Has anyone else looked at the code? In this age of fake everything, I’d like to see confirmation from independent party if this code does exist.

Also curious if this is actually used or just faked there to fool people by GM, though unlike Tesla, it’s not as likely by humorless GM.

“DC_Charging_Profile” shows 67% at 25C having 150A charging, but Bolt steps down to 100A at bit over 50%. Table shows 100A step down to occur at 80%. Something is wrong. This can’t be due to usoc vs hvsoc since that’s only different by about 5% while DCFC is different by 30%.

Too bad GM didn’t make it open source (assuming this was GM code) with millions (haha!) eye balls checking it.

“Then the rate of capacity loss typically slows as the vehicle ages.”

I don’t know if this is true in the real world. There’s degradation just by sitting and degradation means more charge cycles per mile. Time based degradation may slow, but added charge cycles will be more degradation and it’s unknown how they play out. In absence of 10 or more years of real world data, safest assumption might be linear.

Some will point to Tesla S degradation based on different cars over short time, but that’s short time and different cars, not the same as aging for particular car in the real world where multiple summers / winters are encountered.

Remember this is the MyChevrolet App not the actual firmware in the vehicle. The app makes assumptions when it’s not connected to the car. I assume this data is here for the route planning functionality.

If they can unlock the door via app, I would think they have GOM access and not have to guess with canned data table.

The article explicitly says that these values are used when the app has no access to the actual data.

I’m pretty sure it’s *not* true in the real world. All Li-Ion cycling charts I have ever seen show faster degradation during the first couple dozen cycles (as the SEI layer forms on the anode), to some 95% or so of initial capacity; after which a phase of slow, pretty linear degradation is entered. Depending on cell type, that can then either go on all the way down to zero, or accelerate to a significantly faster rate once a certain threshold is crossed around 75% or so.

Going by the data published here, it looks like the Bolt uses a capacity reserve to mask the faster initial degradation, while showing the linear degradation after that…

Here a tip, don’t buy one, LEASE one and if at the end of the lease term you have the option to return it or buy it…

Not an option at some places, or not a very good one…. But generally, yes, I would always opt to lease given the chance and fair deal.

Not offer a good lease, could also be viewed as a sign of trust in a given product.

“Not offer a good lease, could also be viewed as a sign of trust in a given product.” lease offers are not based on the qualify of the vehicle…The e500 has historically always had heavily subsidized lease…

They don’t like doing 25k+ mile per year leases. While you can get one, they tend to be very expensive.

They don’t care, I believe the cap is 25K/year, there are very few who drive that much and even fewer who would want a Bolt EV and not a long range Tesla who do…

Driving 80 miles/day will get you to 25k miles/yr and certainly doesn’t require a long range EV to do so. Anyone who likes the low lease prices on a Bolt vs the high cost of buying a Model 3 certainly can prefer a Bolt.

All leases can be 25k+ mile leases, just add the per mile charge for excess mileage. I’m not sure what “very expensive” means, the per mile excess charge on my Bolt lease is less than the per mile charge for the base miles (lease price divided by base miles)

GM post lease buy option on SparkEV was not good. $13K while used car market was hovering $9K. I suspect the same will be true with Bolt.

Post lease option on my Bolt premium is 26k. Good car but, Model 3 is better.

And Model 3 significantly more expensive.

That was deliberate, lease pricing built the $7500 federal tax credit into either or a combo of capitalized cost discounts or higher residual. And a higher residual is always good for the person leasing the car. But yes you would have to be stupid to buy at the end of the lease when market prices were much lower. Almost every Spark EV was sold in California with $10k off the price, federal credit + state rebate, so who in their right mind would buy a used one for $13k when new ones were $15k after the credit/rebate. That dynamic is about to change with the phase out of the federal tax credit

Yeah if GM would discount the lease by the tax credit amount, that would be great, but they don’t.

But they do, you just don’t realize it. They bump the residual price and give a discount on the capitalized cost.

The simplified degradation table assumes 30km/year and 1 DCFC per week. That’s pretty aggressive usage. Wouldn’t be surprised if most Bolt owners have less degradation than the table outlines.

Degradation chart in miles.

That charge taper schedule directly conflicts with experience of myself and others. The current tapers from 150A to 100A at 55%, not 67%. Then again from 100A to 60A at 67%, not 80%. It looks like they are missing a row at 55%, and then all of the current values are shifted.

60A shift occurs around 70%, but table shows 90%. It may be shift of 2.

Also, I saw Maven Bolt who insisted on getting to 100% with DCFC (more than once! argghhh!), and he was about 10kW at 98%. Table above shows 100% being 25kW, far from reality.

25.0 in the table is amps, not volts. 25A × 400V = 10000W = 10 kW, exactly matching your claim.

Not the way I read it. The way I read it, 0-67% is 150A, 67-80% is 100A and 80-90% is 60A. Reading it that way, the table shows the shift to 60A at 80%, like I said. This reading makes more sense than yours – otherwise, what does the car charge at below 67%? It’s unspecified according to you.

//disregard all previous comments.

This underscores what we knew to be true—limit or hardly ever use DCFC , keep the temps moderate, limit slow charging to 80% unless starting the first leg of a cross country trip, limit discharge to no less than 30%, don’t hang out at 93mph, etc.

That last table seems needlessly complicated: apparently it’s always the minimum between temperature-limited rate and SoC-limited rate — so they could have just used two separate one-dimensional tables…

The capacity comments/formulas are interesting. So apparently the Bolt makes 92% of the nominal capacity usable (4% reserve at top and 4% at bottom) — though if you are willing to push it below “0%” displayed, it’s in fact 95.2% usable…

Also, apparently minimum SoC increases by 11% when going from 0° C to -20° C — which equals a 12% loss in usable capacity. (No further changes outside that range.)