I’m having a similar issue, but I don’t think it’s the battery. At least not the battery cells. I recently replaced my battery using an IFIXIT battery. I starting seeing the problem you’re describing, rapid drop in displayed battery charge, with my old battery. The Apple diagnostics indicated my old battery was ready for replacement, so I assumed the battery charge was actually dropping that quickly due to a failing battery. However, I’ve seen that happen with my new battery as well.
Here’s an example of how my new battery is performing. I was running off battery only and the displayed charge went from 100% to 72% in what appeared to be a normal rate of discharge. I had been using my MacBook Pro in a typical way; emails, web searches, image viewing, etc. To go from a displayed charge of 100% to 72%, it took ~ 1 hr 50 mins. At that time, the display jumped to 7%. My plan was to continue using the laptop until the battery fully discharged. I continued working for another ~ 40 mins and the displayed charge stayed at 7%.
I had to move on to something else, but left the laptop on. The display sleep was set to 7 mins and the computer sleep to 15 mins. I would wake it up every 15 to 30 mins, navigate a bit and then let it sit. The displayed charged stayed at 7%. I actively used the laptop for ~ 2 hrs 30 mins and then the sleep/wake up cycling for another ~ 1 hr to 1 hr 30 mins. The battery completely discharged sometime between the 1 hr and 1 hr 30 mins mark. I didn’t witness it.
So, I think that’s fairly normal battery performance, ~ 3 hrs 30 mins to 4 hrs running off battery only power. Therefore, I think the battery cells are performing fine. That leaves the battery charge sensing circuitry. I’m not sure if that function is performed on the logic board or the small circuit board on the battery assembly. I’m planning on getting a new logic board for another problem, so I’ll see if it also fixes the battery charge state display. I think the graphics card that’s built onto the logic board is having issues, as I’ve been having a problem with the screen randomly blacking out, while the computer stays running.
I tried to get a logic board from IFIXIT and a couple of other sources, but they were all out of stock. When I get a new one, I’ll post the results. If the battery charge sensing function resides on the battery assembly circuit board, then a logic board swap won’t solve the problem.
If anyone out there knows where the charge sensing function is performed, that information would be helpful.