Cash purchase
Enter the required contract values. Missing: Unfinanced cash price, Other year-zero owner costs, Year-zero incentive received.
Finance tool
Enter the prices, disclosures, schedules, and production terms from your own quote or contract. The four models stay separate and do not infer a tax credit, dealer fee, “typical” term, or recommended winner.
Start with your own quote and contract disclosures. All numeric fields are blank by design; this tool supplies no “typical” price, rate, fee, escalation, production, or incentive.
These are separate contract cash-flow views, not a recommendation or automatic “winner.” Different terms and omitted utility, maintenance, transfer, or buyout cash flows are not made comparable by inference.
Enter the required contract values. Missing: Unfinanced cash price, Other year-zero owner costs, Year-zero incentive received.
Enter the required contract values. Missing: Contractual principal or note amount, Upfront payment, Contractual note rate, Loan term, Payment frequency, Loan schedule type.
Enter the required contract values. Missing: First monthly lease payment, Lease escalator, Lease term, Lease payment frequency, Lease schedule type.
Enter the required contract values. Missing: First-year PPA price, First-year production, PPA price escalator, Production degradation, PPA term, PPA price structure.
Enter an explicit amount—including 0.00 when the amount is truly zero—for every applicable category and year. Year 0 uses only other owner costs and incentives received; later years use only incentives, avoided and exported utility value, remaining utility charges, operations and maintenance, and replacement costs. Use “Add another” when the same category has more than one record in a year; those records are summed exactly in cents. Every nonzero incentive keeps its own amount, jurisdiction, receipt year, and four-digit, non-future source-event year. Loan proceeds/payments, lease payments, and PPA energy charges never enter this owner-asset payback table.
This ledger uses the same-scope unfinanced cash price entered in the cash-purchase panel above.
Enter a whole-year horizon from 1 through 100 to create the cash-flow table.
Enter the required owner cash-flow values. Missing: Unfinanced cash price, Payback horizon.
Cash uses the same-scope unfinanced price, other owner costs paid in year zero, and only an incentive you say was actually received in year zero. Loan amortization uses the contractual principal and note rate—not the cash price, amount financed, or APR. Lease payments change only at contract anniversaries. PPA energy charges use the entered annual production and contracted per-kWh price.
The optional owner-payback panel begins with the unfinanced cash price and an explicit year-by-year cash-flow table. It reports the first whole-year crossover, or says there is no crossover inside the entered horizon; it does not treat debt, lease, or PPA payments as recovery of a homeowner-owned asset.
For the surrounding decision checklist, read How to Pay for Solar and What to Watch for in a Solar Loan.
All financial and energy arithmetic uses exact rational values and one signed round-half-even rule. Loan interest and payments are rounded to cents; lease payments are rounded to cents by month; PPA production is rounded to 0.001 kWh, price to $0.000001/kWh, and each annual energy charge to cents. Displayed totals are sums of the displayed integer-unit ledger rows.
Loan formula. The entered note rate is a nominal annual percentage rate. The periodic rate is i = noteRate / 100 / 12. When i = 0, payment = principal / termMonths; otherwise, payment = principal × i / (1 - (1 + i)^(-termMonths)). APR is never substituted for the note rate.
Lease formula. For one-based month m, payment(m) = firstMonthlyPayment × (1 + annualEscalator / 100)^floor((m - 1) / 12).
PPA formulas. For one-based year y, production(y) = firstYearProduction × (1 - degradation / 100)^(y - 1) and price(y) = firstYearPricePerKWh × (1 + priceEscalator / 100)^(y - 1). The annual energy charge is the rounded product of the stored production and price units.
Owner-payback formulas. Year-zero flow is -cashPrice - otherOwnerCosts + incentivesReceived. Each later flow is avoidedUtilityCost + exportCredit - remainingUtilityCharges - operationsMaintenance - replacementCosts + incentivesReceived. Year zero accepts only its two named record categories; later years accept only their six named categories. Any record outside those year boundaries is rejected. Records in the same category and receipt year are parsed separately and summed exactly in cents. Every nonzero incentive remains a separate record with its own amount, jurisdiction, receipt year, and source-event year. Discounted flow for year y is cashFlow(y) / (1 + discountRate / 100)^y. Payback is the first whole year whose selected cumulative series is non-negative; no fractional year is interpolated.
The loan model supports only monthly, end-of-month, fixed-rate, level-payment, fully amortizing schedules. The lease model supports recurring monthly payments with annual contract-anniversary changes. The PPA model supports an annual fixed production-and-price formula. Balloon, recast, deferred, interest-only, variable, promotional, prepaid, irregular, TOU, tiered, minimum-purchase, monthly true-up, and other unsupported structures remain explicitly “not modeled.”
These outputs omit any contract or utility cash flow you do not enter. They do not establish legal disclosures, ownership transfer, buyout value, maintenance coverage, home-value effects, tax eligibility, net bill savings, or suitability.
Solar Energy Wiki