---
title: "Estimates battery charge time given capacity in mAh, charge current in mA, charger efficiency, and initial state of charge. Accounts for real-world charging losses (typically 80-90% efficient) to produce time in hours and minutes, energy required in Wh (at an optional voltage, default 3.7V for Li-ion), and the C-rate of the charge. Useful for solar charge controller sizing, USB charging time estimation, lead-acid float charging, and EV battery planning. The C-rate output helps verify the charge current is within safe limits (typically 0.5C-1C for Li-ion). Chain from solar_sizing charge_controller_amps to size a solar charging system end-to-end."
method: POST
path: "/api/battery_charge_time"
tags: ["power"]
---

# Estimates battery charge time given capacity in mAh, charge current in mA, charger efficiency, and initial state of charge. Accounts for real-world charging losses (typically 80-90% efficient) to produce time in hours and minutes, energy required in Wh (at an optional voltage, default 3.7V for Li-ion), and the C-rate of the charge. Useful for solar charge controller sizing, USB charging time estimation, lead-acid float charging, and EV battery planning. The C-rate output helps verify the charge current is within safe limits (typically 0.5C-1C for Li-ion). Chain from solar_sizing charge_controller_amps to size a solar charging system end-to-end.

`POST /api/battery_charge_time`

## Request

- Base URL: `https://calc.engineer`
- URL: `https://calc.engineer/api/battery_charge_time`
- Auth: none declared

## Request body

- object
  - `capacity_mah` number, required: Total battery capacity in milliamp-hours (mAh)
  - `charge_current_ma` number, required: Charge current in milliamps (mA)
  - `efficiency` number: Charger efficiency factor (0-1), default 0.85
  - `initial_soc_pct` number: Initial state of charge as percentage (0-100), default 0 (empty)
  - `voltage_v` number: Nominal battery voltage for energy calculation (V), default 3.7 for Li-ion

## Response `200`

Computed result for battery_charge_time

- object
  - `result` object, required
    - `charge_time_hours` number, required: Estimated charge time in hours
    - `charge_time_minutes` number, required: Estimated charge time in minutes
    - `energy_required_wh` number, required: Energy required to charge at nominal voltage (Wh)
    - `c_rate` number, required: C-rate of the charge (charge_current / capacity)
  - `tool` string, required
  - `version` string, required
  - `computed_at` string, date-time, required
  - `chain` object, required
    - `feeds` unknown[]
      - unknown
    - `accepts_from` unknown[]
      - unknown

## Other responses

- `400`: Validation error or invalid JSON
- `404`: Tool not found

---

[API](https://skmtc.dev/calc/apis/calc-engineer-api.md) · [All operations](https://skmtc.dev/calc/apis/calc-engineer-api/llms.txt) · [OpenAPI document](https://skmtc.dev/calc/apis/calc-engineer-api/revisions/8830480ec488?raw)
