Estimate the total heat energy (BTUs) of your firewood stash based on species and volume.
Hickory (Shellbark/Shagbark)
Oak (White)
Oak (Red)
Maple (Sugar)
Ash (White)
Birch (Yellow)
Maple (Red)
Cherry (Black)
Pine (White)
Cedar (Western Red)
Seasoned (20% Moisture)
Green (50% Moisture)
Kiln Dried (12% Moisture)
Total Potential Energy: Million BTUs
Actual Heat into Home (Net): Million BTUs
*Net heat accounts for stove efficiency and moisture content.
How Firewood BTUs Work
BTU stands for British Thermal Unit, a measure of heat energy. One BTU is the amount of energy required to heat one pound of water by one degree Fahrenheit. When it comes to firewood, different species have different densities; the denser the wood, the more energy it contains per cord.
Understanding the Cord
A "full cord" of firewood is a neatly stacked pile measuring 4 feet high, 8 feet long, and 4 feet deep (128 cubic feet). It is important to distinguish this from a "face cord," which is also 4 feet high and 8 feet long but only as deep as a single log length (usually 16 inches).
Heat Value Table (Million BTUs per Cord)
Species
Heat Value (Dry)
Weight per Cord
Hickory
28.5 Million BTU
4,200 lbs
White Oak
26.4 Million BTU
4,000 lbs
Sugar Maple
24.0 Million BTU
3,700 lbs
White Ash
23.6 Million BTU
3,500 lbs
White Pine
15.9 Million BTU
2,200 lbs
Why Moisture Content Matters
Burning "green" wood (wet wood) is highly inefficient. Much of the energy produced during combustion is wasted boiling off the water inside the wood rather than heating your home. Seasoned wood, which has been dried for at least 6-12 months, typically reaches a moisture content of 20%, which is the ideal balance for domestic wood stoves.
function calculateFirewoodBTU() {
var speciesBTU = parseFloat(document.getElementById('woodSpecies').value);
var cords = parseFloat(document.getElementById('cordAmount').value);
var efficiency = parseFloat(document.getElementById('stoveEfficiency').value);
var moistureMod = parseFloat(document.getElementById('moistureContent').value);
if (isNaN(cords) || cords <= 0) {
alert('Please enter a valid number of cords.');
return;
}
if (isNaN(efficiency) || efficiency 100) {
alert('Please enter a valid stove efficiency (1-100%).');
return;
}
// Logic:
// Potential = Species Value * Quantity * Moisture Factor
// Net = Potential * (Efficiency / 100)
var potentialEnergy = speciesBTU * cords * moistureMod;
var netEnergy = potentialEnergy * (efficiency / 100);
document.getElementById('potentialBTU').innerHTML = potentialEnergy.toFixed(2);
document.getElementById('netBTU').innerHTML = netEnergy.toFixed(2);
document.getElementById('btuResultDisplay').style.display = 'block';
// Scroll to results
document.getElementById('btuResultDisplay').scrollIntoView({ behavior: 'smooth', block: 'nearest' });
}