Determining the correct size for a generator is crucial for ensuring reliable power during outages. An undersized generator may fail to start loads or trip breakers, while an oversized generator is an unnecessary expense and can be less fuel-efficient.
Key Concepts in Generator Sizing:
Running Watts: The continuous power required by an appliance or device to operate.
Starting Watts (Surge Watts): The extra burst of power needed for a short period when certain appliances, especially those with electric motors (like refrigerators, pumps, or power tools), first start up. This can be 2-7 times the running watts.
Total Load: The sum of all the running watts of the appliances you intend to power simultaneously.
Starting Load: The highest starting wattage demand that the generator must be able to handle. This occurs when an appliance with a high starting wattage is turned on, especially if other appliances are already running.
Safety Margin: It's recommended to size a generator with a capacity greater than your calculated maximum load to ensure longevity, prevent overloading, and account for potential future needs.
How the Calculator Works:
This calculator simplifies the process by:
Summing Running Watts: It adds up the running watts of all the appliances you enter.
Calculating Peak Starting Watts: For devices with motors, it applies a surge factor to estimate their starting wattage requirement. It then identifies the highest single motor's starting wattage demand and adds it to the sum of all other running loads.
Applying Safety Margin: Finally, it multiplies the total calculated load (including the peak starting surge) by a safety margin percentage to recommend an appropriate generator size.
Calculate Motor Starting Watts (MSW) for each motor:MSW_i = MotorWatts_i * SurgeFactor_i
Determine Maximum Starting Wattage Event (MSWE): This is the scenario where the highest demand occurs. It's the sum of all non-motor running loads plus the single largest motor's starting watts, OR the sum of all running watts plus the single largest motor's starting watts if the motor is already accounted for in TRW. A common simplified approach is:
MSWE = (TRW - Max(MotorWatts_i)) + Max(MSW_i)
If there are no motors, MSWE = TRW.
This calculator uses a slightly more straightforward approach for simplicity, ensuring the generator can handle both the total running load and the highest single surge event, then applying the safety margin.
Step 3: Determine the peak load event. This usually involves the highest starting wattage needed. If the fridge starts while everything else is running:
In this example, a generator rated for at least 5375 Watts would be recommended.
Choosing the Right Generator:
Always consider the types of appliances you need to run. Appliances with motors have significantly higher starting watt requirements. For critical applications like sump pumps or medical equipment, it's wise to add a larger safety margin.
function calculateGeneratorSize() {
var lightingWatts = parseFloat(document.getElementById("lightingWatts").value);
var refrigerationWatts = parseFloat(document.getElementById("refrigerationWatts").value);
var heatingWatts = parseFloat(document.getElementById("heatingWatts").value);
var motorWatts = parseFloat(document.getElementById("motorWatts").value);
var electronicsWatts = parseFloat(document.getElementById("electronicsWatts").value);
var otherWatts = parseFloat(document.getElementById("otherWatts").value);
var surgeFactor = parseFloat(document.getElementById("surgeFactor").value);
var safetyMargin = parseFloat(document.getElementById("safetyMargin").value);
var resultElement = document.getElementById("result-value");
var resultDescriptionElement = document.getElementById("result-description");
// Input validation
if (isNaN(lightingWatts) || lightingWatts < 0) lightingWatts = 0;
if (isNaN(refrigerationWatts) || refrigerationWatts < 0) refrigerationWatts = 0;
if (isNaN(heatingWatts) || heatingWatts < 0) heatingWatts = 0;
if (isNaN(motorWatts) || motorWatts < 0) motorWatts = 0;
if (isNaN(electronicsWatts) || electronicsWatts < 0) electronicsWatts = 0;
if (isNaN(otherWatts) || otherWatts < 0) otherWatts = 0;
if (isNaN(surgeFactor) || surgeFactor <= 0) surgeFactor = 1.5; // Default if invalid
if (isNaN(safetyMargin) || safetyMargin 0) {
var currentMotorStartingWatts = refrigerationWatts * surgeFactor;
if (currentMotorStartingWatts > maxMotorStartingWatts) {
maxMotorStartingWatts = currentMotorStartingWatts;
}
totalMotorRunningWatts += refrigerationWatts;
}
if (motorWatts > 0) {
var currentMotorStartingWatts = motorWatts * surgeFactor;
if (currentMotorStartingWatts > maxMotorStartingWatts) {
maxMotorStartingWatts = currentMotorStartingWatts;
}
totalMotorRunningWatts += motorWatts;
}
// Determine the highest wattage event
var peakLoadWatts = 0;
if (maxMotorStartingWatts > 0) {
// If a motor needs to start, the peak load is all other running loads PLUS the single largest motor's starting watts
peakLoadWatts = (totalRunningWatts – totalMotorRunningWatts) + maxMotorStartingWatts;
} else {
// If no motors, peak load is just total running watts
peakLoadWatts = totalRunningWatts;
}
// Apply safety margin
var recommendedGeneratorSize = peakLoadWatts * safetyMargin;
// Display result
resultElement.innerText = Math.ceil(recommendedGeneratorSize) + " Watts";
var description = "The recommended generator size is based on the total running watts of your devices plus the surge requirement of the largest motor, with a safety margin applied. ";
if (maxMotorStartingWatts > 0) {
description += `The highest starting surge considered was ${Math.ceil(maxMotorStartingWatts)} Watts. Total running watts were ${Math.ceil(totalRunningWatts)} Watts.`;
} else {
description += `No significant motor surge loads were entered. Total running watts were ${Math.ceil(totalRunningWatts)} Watts.`;
}
resultDescriptionElement.innerText = description;
}