Enter your vehicle's total weight and your timeslip data to estimate engine horsepower.
Includes driver, fuel, and all fluids.
Estimated HP (based on ET):–
Estimated HP (based on MPH):–
Approx. Wheel HP (15% loss):–
Understanding 1/8 Mile Horsepower Calculations
The 1/8 mile drag strip is a standard for testing vehicle acceleration and performance. Unlike a dynamometer (dyno), which measures power statically or on rollers, calculating horsepower from a time slip gives you "real world" numbers that account for how the car actually puts power to the ground. This calculator uses widely accepted empirical formulas utilized by drag racers and chassis builders to estimate flywheel horsepower based on the vehicle's weight and performance metrics.
How the Math Works
There are two primary methods to estimate horsepower from a drag strip run: using the Elapsed Time (ET) or using the Trap Speed (MPH).
1. The ET Method
The Elapsed Time method is generally considered an indicator of how well a car launches and applies power. The formula typically used for 1/8 mile calculations is derived from the classic Hale formula:
Formula: Horsepower = Weight / (ET / 3.825)³
This method assumes good traction. If your vehicle spins the tires off the line, your ET will be slower, resulting in a lower horsepower calculation than the engine is actually producing.
2. The MPH Method
Trap speed is often a better indicator of raw horsepower because it is less affected by traction issues at the starting line. Once the car is moving, the rate at which it accelerates to the finish line is directly proportional to its power-to-weight ratio.
Formula: Horsepower = Weight × (MPH / 153.44)³
If the HP calculated from MPH is significantly higher than the HP calculated from ET, it usually indicates that the car is not hooking up efficiently (spinning tires) or the suspension setup needs adjustment.
Why Weight Accuracy Matters
The accuracy of this calculator is entirely dependent on the input weight. This must be the Total Race Weight. This includes:
The vehicle itself
The driver (fully suited)
Fuel load
Nitrous bottles, roll cages, and any other equipment
A difference of 100 lbs can skew the results by 15-30 horsepower depending on the speed of the vehicle.
Flywheel vs. Wheel Horsepower
The formulas above calculate Flywheel Horsepower (BHP)—the power measured at the engine's crankshaft. However, power is lost as it travels through the transmission, driveshaft, differential, and axles.
To estimate Wheel Horsepower (WHP), we apply a drivetrain loss factor:
Manual Transmission: ~15% loss
Automatic Transmission (Non-locking): ~18-20% loss
Our calculator provides an approximate Wheel HP figure assuming a standard 15% parasitic loss.
Example Calculation
Let's look at a realistic scenario for a modified muscle car:
Metric
Value
Vehicle Weight
3,400 lbs
1/8 Mile ET
7.20 seconds
1/8 Mile MPH
96 MPH
Using the ET formula: 3400 / (7.20 / 3.825)³ ≈ 510 HP
function calculateHorsepower() {
// Get inputs
var weight = parseFloat(document.getElementById('totalWeight').value);
var et = parseFloat(document.getElementById('etTime').value);
var mph = parseFloat(document.getElementById('trapSpeed').value);
var resultsDiv = document.getElementById('results');
// Validation
if (isNaN(weight) || weight <= 0) {
alert("Please enter a valid vehicle weight.");
return;
}
if (isNaN(et) || et 0) {
hpMph = weight * Math.pow((mph / 153.44), 3);
hasMph = true;
}
// Calculate Wheel HP (Average 15% loss from Crank HP derived from ET)
// We use ET generally for the "effective" hp making it down the track
var hpBase = hasMph ? Math.max(hpEt, hpMph) : hpEt;
// Often averaged, but let's stick to ET base for WHP estimation usually
var wheelHp = hpEt * 0.85;
// Update UI
document.getElementById('hpFromEt').innerText = Math.round(hpEt) + " HP";
if (hasMph) {
document.getElementById('hpFromMph').innerText = Math.round(hpMph) + " HP";
} else {
document.getElementById('hpFromMph').innerText = "N/A";
}
document.getElementById('wheelHp').innerText = Math.round(wheelHp) + " HP";
// Show results
resultsDiv.style.display = 'block';
}