Blog · 2026-07-05 · Batteries
The numbers printed on a battery are honest — they just don't mean what most builders assume. Decode mAh, Wh and C-rating properly and you'll never be surprised by an eight-minute robot again.
Every disappointed "my robot only ran for ten minutes" story traces back to the same three misunderstandings: treating mAh as energy, ignoring usable capacity, and never checking discharge rate. Each takes five minutes to understand and each is worth real money, because it's the difference between buying the right pack once and buying the wrong pack twice. Let's fix all three.
Milliamp-hours measure electric charge: a 2200 mAh pack can, in principle, supply 2200 mA for one hour, or 1100 mA for two hours, or 4400 mA for half an hour. The runtime relationship is a simple division:
Runtime (hours) = Capacity (Ah) ÷ Average current draw (A)
Two immediate caveats. First, capacity is rated at a gentle discharge; pull hard and you get somewhat less (Peukert's effect — modest in lithium, pronounced in lead-acid). Second, and this is the misunderstanding that causes bad purchase decisions: mAh alone says nothing about energy, because energy is charge × voltage. A 2200 mAh 3S pack (11.1 V) holds 24.4 Wh; a 2200 mAh 2S pack (7.4 V) holds 16.3 Wh. Same mAh, 50% more energy in the first. When comparing packs of different voltages, always compare watt-hours:
Energy (Wh) = Capacity (Ah) × Nominal voltage (V)
Watt-hours also connect directly to physics: a robot drawing 30 W of electrical power from a 24 Wh pack runs about 0.8 hours × the usable fraction — no matter how the pack's voltage and mAh happen to be arranged.
You should never drain a battery flat. LiPo cells suffer permanent damage below ~3.0 V/cell, and cycling to the ragged edge shortens life even above that — the practical convention is to use about 80% of a LiPo's rating. Quality li-ion tolerates ~85%; NiMH similar; sealed lead-acid should be cycled to only 50% depth if you want the pack to survive its warranty. So the honest runtime formula is:
Runtime (h) = Capacity (Ah) × usable fraction ÷ Average current (A)
Our Battery Runtime Calculator applies these deratings automatically per chemistry — it's precisely why its answers run shorter, and truer, than the naive division.
A battery's C-rating expresses discharge current as a multiple of capacity. "1C" for a 2200 mAh pack is 2.2 A; a pack rated 25C claims 25 × 2.2 = 55 A continuous. C-rating is what separates a pack that powers four motors stalling simultaneously from one that sags, browns out your controller, and reboots the robot at every hard start. To size it, work from your peak — not average — current:
Minimum C-rating = Peak current (A) ÷ Capacity (Ah)
A robot with 12 A worst-case draw on a 2.2 Ah pack needs 12 ÷ 2.2 ≈ 5.5C. Now the uncomfortable truth: hobby C-ratings are marketing-optimistic, sometimes wildly so. The pragmatic fix is margin — buy at least double your calculated minimum, and treat suspiciously cheap high-C claims as fiction. Bonus: a pack loafing well below its C-limit sags less, heats less, and delivers closer to its rated capacity.
Runtime math is only as good as the current estimate feeding it. Build the estimate in three layers. Electronics baseline: microcontroller, receiver and sensors, typically 0.2–0.5 A; add ~0.3–1 A for a Raspberry Pi, more with a camera. Motors at working load: use rated current from the datasheet × number of motors × a duty estimate (drive motors rarely all pull rated current continuously — 50–70% duty is typical for mixed driving). Peaks: the worst case is every motor at stall current simultaneously — brief, but your C-rating and wiring must survive it.
Worked example. A two-motor rover: each motor rated 1.2 A, stall 6 A; a Pi + sensors at 0.8 A. Average ≈ (2 × 1.2 × 0.6) + 0.8 ≈ 2.2 A. Peak ≈ (2 × 6) + 0.8 ≈ 12.8 A. On a 3S 2200 mAh LiPo: usable 1.76 Ah ÷ 2.2 A ≈ 0.8 h ≈ 48 minutes, needing 12.8 ÷ 2.2 ≈ 5.8C minimum — so buy a 15C+ pack and everything has margin. Better than estimating: measure. A ₹500 USB-style power meter or a clamp meter on the battery lead turns guesswork into data in one test drive.
Take a typical pack: "3S 25C 2200 mAh 11.1 V". Decoded: three lithium cells in series (11.1 V nominal, 12.6 V full, ~9.9 V at the safe floor); 2200 mAh of charge, therefore 24.4 Wh of energy; claimed 55 A continuous discharge. Some packs add a second number like "25C/50C" — the second is a seconds-only burst rating. A "2S2P" li-ion label means two series cells × two parallel, doubling capacity at 7.4 V. Any lithium pack sold without a balance connector or built-in BMS should be treated as a component, not a product.
Even honest math meets messy reality: cheap cells frequently deliver 50–70% of labelled capacity; cold weather suppresses lithium performance noticeably; packs fade with age and every deep cycle; voltage sag under load means more current for the same power, which itself shortens runtime. Budget accordingly — if the mission needs 30 minutes, size for 45. The calculator's chemistry deratings absorb the first-order effects; your margin absorbs the rest.
Yes — two identical packs in parallel double capacity and halve the per-pack current stress. Only parallel packs of the same chemistry, voltage and state of charge, and remember charge time doubles too.
Mostly, but not linearly on a mobile robot: added battery mass increases drive current, clawing back some of the gain. It's usually a small correction indoors and a real one for climbing or flying robots — the Motor Sizing Calculator shows the sensitivity if you nudge the mass input.
Wh, always, when voltages differ. mAh comparisons are only valid between packs of identical voltage.
That's the whole decoding kit: mAh is charge, Wh is energy, usable is less than rated, and C-rating guards your peaks. Put your own numbers through the Battery Runtime Calculator, and if you're still choosing a chemistry, LiPo vs Li-ion vs NiMH completes the picture.
The same formulas run in reverse when the mission defines the runtime. Required capacity (Ah) = average current × required hours ÷ usable fraction. Suppose the rover above must run a 90-minute demo: 2.2 A × 1.5 h ÷ 0.8 = 4.1 Ah — so a 4000–5000 mAh 3S pack, or two 2200 mAh packs in parallel. Then re-run the C-rating check against the new capacity (12.8 ÷ 4.1 ≈ 3.1C — easier now, since bigger packs handle the same peak more gracefully) and, crucially, add the new pack's extra mass back into your drive calculation: a 4000 mAh 3S LiPo weighs roughly 300 g against 180 g for the 2200. On an indoor rover that's negligible; on a climbing or flying machine it's a design iteration.
You don't need lab equipment to audit a battery. Method one: most hobby balance chargers report the mAh they put back in — run the robot until the low-voltage alarm, recharge fully, and read the number. Since you drained roughly the usable fraction, a 2200 mAh LiPo returning ~1750 mAh after an 80% discharge is healthy; one returning 1100 mAh has faded or was never honest. Method two: a cheap inline watt-meter (₹400–800) between pack and robot logs Ah and Wh consumed live — the single most informative accessory a battery-powered builder can own, because it also reveals your true average and peak currents, replacing every estimate in this article with measurement. Log the numbers per pack every few months; a pack trending down 20% from its baseline is telling you its retirement date in advance, on your schedule instead of mid-demo.
Everything above compresses into a ritual worth running before any battery order: estimate average current (motors × rated × duty + electronics), estimate peak (stall sum), compute required Ah from your runtime target with the chemistry's usable fraction, compute minimum C from peak ÷ Ah and double it, then compare candidates in Wh — not mAh — per rupee and per gram. Five lines of arithmetic, two minutes, and it filters out ninety percent of marketplace listings before they can disappoint you. The remaining ten percent are the packs worth reading reviews for.