How to Measure the Internal Resistance of a Battery?

Introduction: How to Measure the Internal Resistance of a Battery?

* The schematic is taken from other source.

Wondering how well your battery can perform? Don't know how much current you can pull from your battery? Well you can get know to your battery more with a simple experiment. You only need few components to do it.


- your battery(Lipo, lead acid, NiCd, any kind of battery is ok)

- multimeter

- High power resistor (I used 4.7ohm 5W, resistance around 4~10ohm should be fine, but it depends on the battery you are using)

- calculator

Yep, that's all you need. Since I'm making the post, I need to take the photos and handle the battery as well, so I used battery holder to help me out. However, the results may not be accurate since extra resistance is incurred in the wire itself. And I used a bit longer time to carry out the test, the resistor gets warm and affect the voltage reading.

Lower load resistance can let you get a more accurate results, but by doing so may require less connection period because it drains more current from your battery. Hence your battery voltage will drop more quickly. The load and the battery may get warm (even get hot) and increase their own resistance due to higher temperature, causing more error in the reading.

So make sure you:

- complete the test as quick as possible

- make the period of connection of battery and the resistor as short as possible

- use a reasonable value of resistance, 10ohm should be sufficient for all kind of test.

Step 1: Double Confirm the Resistance of the Resistor

Even thought the value of the resistance is printed, you still need to confirm whether the actual resistance is the same as shown. Most resistor has 10% tolerance in their actual value, but it still depends on the type of resistor you used.

This step is only the easy resistance measurement, so I guess you can do it.

Step 2: Measure the No-load Voltage of the Battery

After that, you can measure the no load voltage of the battery by connecting the test lead to the battery terminals directly. It says "no-load" because the input resistance of the multimeter during the voltage measurement is very high, typically >1Mohm so the effect of current draw can be simply ignored.

Once again, I guess you know how to do it since it is a simple test. So let's go to next step.

Step 3: Measuring the Voltage Across the Load Resistor

Here is the tricky part, you have to complete this test as fast as possible, or else you might not get an accurate reading.

I suggest to connect the resistance across the test lead of the multimeter, then make contact to the battery terminal with the test lead. Make sure your measuring mod is in voltage mode!

As soon as the voltage reading settle down (stop changing very much), record the value and disconnect the battery immediately. The contact should be made no longer than few seconds to prevent the load resistance to draw too much current from the battery and affect the overall reading.

I also found out that the load resistance is getting warm as soon as I disconnect the battery, so I'm expected to get a bad reading.

Once you finished this step, you can proceed to the last step.

Step 4: Finally, Calculation...

Here is the value I get:

- voltage reading across the battery terminal, Va=3.99V

- voltage reading across the load resistor, Vb=3.796V

- load resistance, R=4.7ohm

Since Vb = Va * [ R / (R+r) ], r = internal resistance

Then, internal resistance of the battery can be determined to be around 240mOhm.

Hence, my battery can theoretically discharge the current as high as 4.2V/0.24=17.5A (short circuit maximum current at fully charged state) but it is not good to do so. If higher current output is desired, more batteries should be connected in parallel to reduce the overall internal resistance and hence higher current output capability.

You can repeat the step from measuring the terminal voltage of the battery to get multiple reading, since averaging the reading helps reducing the error. For demonstrative purpose I just get the reading once.

After all, thanks for your ineterest.



    • Creative Misuse Contest

      Creative Misuse Contest
    • Water Contest

      Water Contest
    • Metalworking Contest

      Metalworking Contest

    14 Discussions

    R= e/i

    (E = Volt)

    do you thing it is?


    0.4 mili ohm

    calculate engener.jpg


    i have

    12v battery

    and 28Ah ups load

    how can i know my battery internal-resistance ? without use anything

    what about a percentage method? if the voltage drops by 5% (4.2v - 4v) and your resistance is 4.2 ohms then 5% of that is .21 ohms.

    Does that work?

    3.99v - 3.796v is a 5.1% drop and 5.1% of 4.7ohms is 0.239

    5 replies

    If you have a need to know the internal resistance in percentage you can do it. It is just another way of evaluating the same measurement. It will not improve the accuracy of your measurements.

    Before doing this test one should charge battery to the full yes?

    @micheals1992, I assume if the equation is rearranged so that (Va/Vb-1)=r/R, then you are right too.
    @guruji1, not necessary to charge the battery to full, but not advised to test at low battery too. Lower than 3.0V may kill the Lipo battery.

    r/R = Ua/Ub - 1 is correct but that does not mean we can calculate r as the percetage of voltage drop - see my reply to micheals. (Ua/Ub - 1) is not the percentage of voltage drop.

    How are you calculating the drop percentage? From 4.2 to 4 is -0.2/4.2 = -4.8% From 3.99 to 3.796 is (3.796 - 3.99)/3.99 = -0.0486 -4.86% According to your algorithm 4.7 Ohm * 0.0486 = 0.229 Ohm = 229 mOhm which is wrong. The Internal resistance is simply calculated from: R*(Ua/Ub - 1). If the starting voltage (4.2) is x and the ending voltage (4.0) is y, then voltage drops by (y - x)/x percent. 4.2/4 - 1 would be: 'For how many percent we have to increase the voltage of 4 V to reach 4.2 V?'. So the voltage drop is not 4.2/4 - 1 = 0.05 = 5% but is (4 - 4.2)/4.2 = -0.0476 = -4.8%


    I did some test and find out that there is a different reading of IR when the battery is fully charged (4.2v) vs not charged (3.0v) , did I do something wrong or is it normal ?

    thanks :D

    1 reply

    At 3.5V nor lower voltages will not be accurate reading for LiPo/Li-Ion/LiFePo type batteries. Because, below of 3.5V means, battery is going to be empty state. It also means, very quick voltage drop on a load.

    Reminder; battery age (or cycles used), battery type and temperature will effect internal resistance of battery nor readings for this test.

    Why do you use high power resistor for this experiment?

    To be sure I understood Volt meter should be put in parallel with resistor yes?

    Hi, you missed something here.

    Remember that any wire is also acting as a resistor so you need to sum them with your load resistance. (If your multimeter is not handy for small resistors (<1Ohm), you might want to use an Ampere-Meter)

    1 reply

    Thanks buddy. I forgot to mention that point. Additional Ampere-meter will be great, but what I have is that handy multimeter, so I guess that's all that I can do. I tried to connect the resistor to the battery terminal directly but I'm holding my camera with other hand. The battery holder did help but extra resistance unavoidable.