Electricity Bill Calculator
Approved Tariff Effective from 11 May 2026
function calculateBill(){
var days = parseFloat( document.getElementById('billingDays').value );
var actualUnits = parseFloat( document.getElementById('units').value );
if(isNaN(days) || days <= 0){ alert('Please enter a valid billing period.'); return; } if(isNaN(actualUnits) || actualUnits < 0){ alert('Please enter valid units consumed.'); return; } var adjustedUnits = (actualUnits / days) * 30; var units = adjustedUnits; var energyCharge = 0; var fixedCharge = 0; var breakdown = []; if(units <= 60){ var b1 = Math.min(units,30); var b2 = Math.max(units-30,0); energyCharge += b1 * 5; energyCharge += b2 * 9; breakdown.push( '0-30 Units : Rs. ' + (b1*5).toFixed(2) ); if(b2>0){ breakdown.push( '31-60 Units : Rs. ' + (b2*9).toFixed(2) ); }
fixedCharge = units <= 30 ? 80 : 210; } else if(units <= 180){ var p1 = 60; var p2 = Math.max(Math.min(units,90)-60,0); var p3 = Math.max(Math.min(units,120)-90,0); var p4 = Math.max(units-120,0); energyCharge += p1*14; energyCharge += p2*20; energyCharge += p3*28; energyCharge += p4*44; breakdown.push( '0-60 Units : Rs. ' + (p1*14).toFixed(2) ); if(p2>0){ breakdown.push( '61-90 Units : Rs. ' + (p2*20).toFixed(2) ); }
if(p3>0){ breakdown.push( '91-120 Units : Rs. ' + (p3*28).toFixed(2) ); }
if(p4>0){ breakdown.push( '121-180 Units : Rs. ' + (p4*44).toFixed(2) ); }
if(units <= 90){ fixedCharge = 400; } else if(units <= 120){ fixedCharge = 1000; } else{ fixedCharge = 1500; } } else{ var a1 = 180; var a2 = units - 180; energyCharge += a1 * 32.5; energyCharge += a2 * 100; breakdown.push( '0-180 Units : Rs. ' + (a1*32.5).toFixed(2) ); breakdown.push( 'Above 180 Units : Rs. ' + (a2*100).toFixed(2) ); fixedCharge = 2500; } var total = energyCharge + fixedCharge; document.getElementById('result').style.display='block'; document.getElementById('result').innerHTML = '
| Actual Consumption | ' + actualUnits.toFixed(2) + ' kWh |
| Billing Period | ' + days + ' Days |
| 30-Day Adjusted Consumption | ' + adjustedUnits.toFixed(2) + ' kWh |
| Energy Charge | Rs. ' + energyCharge.toFixed(2) + ' |
| Fixed Charge | Rs. ' + fixedCharge.toFixed(2) + ' |
|
|
|
| Total Bill | Rs. ' + total.toFixed(2) + ' |
' +
'
' +
breakdown.join('
') +
'
'; }


