Employer Student Loan Assistance Savings Calculator

Estimate how employer contributions can help you pay off your student loans faster and save on interest (U.S. focus).

Your Loan & Contribution Details

Optional: Potential Tax Savings Estimation

Under current U.S. law (Section 127 of IRC), employer student loan payments up to $5,250 per year may be tax-free for the employee through December 31, 2025. Fill below to estimate this potential additional saving.

Total Effective Monthly Payment: ${eslaFormatCurrency(totalMonthlyPaymentWithHelp)}

Estimated Payoff Time: ${eslaFormatMonthsToYearsMonths(scenario2.monthsToRepay)}

Total Interest Paid: ${eslaFormatCurrency(scenario2.totalInterestPaid)}

Total Amount Paid: ${eslaFormatCurrency(scenario2.totalPaid)}

`; } // Savings Summary const savingsSummaryEl = document.getElementById('eslaSavingsSummary'); if (scenario1.error || (scenario2.error && employerContribution > 0)) { savingsSummaryEl.innerHTML = `

Summary of Savings

Could not calculate savings due to an error in one of the scenarios (e.g., payment too low).

`; } else if (employerContribution > 0) { const timeSavedMonths = scenario1.monthsToRepay - scenario2.monthsToRepay; const interestSaved = scenario1.totalInterestPaid - scenario2.totalInterestPaid; savingsSummaryEl.innerHTML = `

Summary of Savings with Employer Assistance

Pay off your loan approximately ${eslaFormatMonthsToYearsMonths(timeSavedMonths)} sooner!

Estimated Interest Savings: ${eslaFormatCurrency(interestSaved)}

`; eslaCalcData.savings = { timeSavedMonths, interestSaved }; } else { savingsSummaryEl.innerHTML = `

Summary of Savings

Enter an employer contribution amount to see potential savings.

`; eslaCalcData.savings = { timeSavedMonths: 0, interestSaved: 0 }; } // Optional Tax Savings const isQualifiedPlan = eslaGetStr('eslaIsQualifiedPlan') === 'yes'; const federalTaxRate = eslaGetNum('eslaFederalTaxRate', 0) / 100; const stateTaxRate = eslaGetNum('eslaStateTaxRate', 0) / 100; const taxSavingsResultEl = document.getElementById('eslaTaxSavingsResult'); if (isQualifiedPlan && employerContribution > 0 && (federalTaxRate > 0 || stateTaxRate > 0)) { const annualEmployerContribution = employerContribution * 12; const taxFreePortion = Math.min(annualEmployerContribution, 5250); // Cap for Sec 127 const combinedTaxRate = federalTaxRate + stateTaxRate; const annualTaxSavings = taxFreePortion * combinedTaxRate; eslaCalcData.taxSavings = { isQualifiedPlan, federalTaxRate: federalTaxRate*100, stateTaxRate: stateTaxRate*100, annualTaxSavings }; taxSavingsResultEl.innerHTML = `

Potential Annual Tax Savings (on Employer Contributions)

If employer contributions are part of a qualified Section 127 plan (tax-free up to $5,250/year through Dec 31, 2025):

Estimated Annual Tax Savings: ${eslaFormatCurrency(annualTaxSavings)}

This is an annual estimate for payments made while the benefit is tax-free under current law. `; taxSavingsResultEl.style.display = 'block'; } else { taxSavingsResultEl.style.display = 'none'; taxSavingsResultEl.innerHTML = ''; eslaCalcData.taxSavings = null; } resultsSectionEl.style.display = 'block'; resultsSectionEl.scrollIntoView({ behavior: 'smooth' }); } function eslaDownloadPDF() { if (typeof window.jspdf === 'undefined' || typeof window.jspdf.jsPDF !== 'function') { alert('PDF library (jspdf) is not loaded correctly.'); return; } // const JsPDFAPI = window.jspdf.jsPDF.API; // For AutoTable if used if (Object.keys(eslaCalcData).length === 0 || !eslaCalcData.inputs) { alert("Please calculate savings first before downloading the PDF."); return; } const JsPDFConstructor = window.jspdf.jsPDF; const pdf = new JsPDFConstructor('p', 'pt', 'a4'); let yPos = 40; const pageMargin = 40; const pageWidth = pdf.internal.pageSize.getWidth(); const contentWidth = pageWidth - (2 * pageMargin); const lineH = 14; const sectionGap = 10; pdf.setFontSize(16); pdf.setFont("helvetica", "bold"); pdf.setTextColor(44, 62, 80); pdf.text("Employer Student Loan Assistance Savings Report", pageWidth / 2, yPos, { align: 'center' }); yPos += 30; function addSectionTitlePdf(text) { if (yPos > pdf.internal.pageSize.getHeight() - 60) { pdf.addPage(); yPos = pageMargin; } pdf.setFontSize(13); pdf.setFont("helvetica", "bold"); pdf.setTextColor(52, 73, 94); pdf.text(text, pageMargin, yPos); yPos += lineH + 5; pdf.setFont("helvetica", "normal"); pdf.setFontSize(10); pdf.setTextColor(51,51,51); } function addLinePdf(label, value, isBoldValue = false, isCurrency = true, currencySymbol = "$") { if (yPos > pdf.internal.pageSize.getHeight() - 25) { pdf.addPage(); yPos = pageMargin; } let valStr = isCurrency ? `${currencySymbol}${eslaFormatCurrencyForPdf(value).substring(1)}` : String(value); if (value === "N/A" || value === Infinity) valStr = String(value); pdf.setFont("helvetica", "normal"); pdf.text(label + ":", pageMargin, yPos); if(isBoldValue) pdf.setFont("helvetica", "bold"); pdf.text(valStr, pageMargin + 220, yPos); // Adjust X offset for value if(isBoldValue) pdf.setFont("helvetica", "normal"); yPos += lineH; } addSectionTitlePdf("Your Loan & Contribution Inputs:"); addLinePdf("Loan Principal Balance", eslaCalcData.inputs.loanBalance); addLinePdf("Annual Interest Rate", `${eslaCalcData.inputs.interestRate.toFixed(2)}%`, false, false); addLinePdf("Your Regular Monthly Payment", eslaCalcData.inputs.yourMonthlyPayment); addLinePdf("Employer's Monthly Contribution", eslaCalcData.inputs.employerContribution); yPos += sectionGap; // Scenario 1: Without Assistance if (eslaCalcData.scenario1) { addSectionTitlePdf("Scenario 1: Without Employer Assistance"); if (eslaCalcData.scenario1.error) { pdf.setTextColor(192, 57, 43); pdf.text("Error: " + eslaCalcData.scenario1.error, pageMargin, yPos); yPos += lineH; pdf.setTextColor(51,51,51); } else { addLinePdf("Your Monthly Payment", eslaCalcData.inputs.yourMonthlyPayment); addLinePdf("Estimated Payoff Time", eslaFormatMonthsToYearsMonths(eslaCalcData.scenario1.monthsToRepay), false, false); addLinePdf("Total Interest Paid", eslaCalcData.scenario1.totalInterestPaid); addLinePdf("Total Amount Paid", eslaCalcData.scenario1.totalPaid); } yPos += sectionGap; } // Scenario 2: With Assistance if (eslaCalcData.scenario2 && eslaCalcData.inputs.employerContribution > 0) { addSectionTitlePdf("Scenario 2: With Employer Assistance"); if (eslaCalcData.scenario2.error) { pdf.setTextColor(192, 57, 43); pdf.text("Error: " + eslaCalcData.scenario2.error, pageMargin, yPos); yPos += lineH; pdf.setTextColor(51,51,51); } else { const totalEffectivePayment = eslaCalcData.inputs.yourMonthlyPayment + eslaCalcData.inputs.employerContribution; addLinePdf("Total Effective Monthly Payment", totalEffectivePayment, true); addLinePdf("Estimated Payoff Time", eslaFormatMonthsToYearsMonths(eslaCalcData.scenario2.monthsToRepay), false, true); addLinePdf("Total Interest Paid", eslaCalcData.scenario2.totalInterestPaid, true); addLinePdf("Total Amount Paid", eslaCalcData.scenario2.totalPaid, true); } yPos += sectionGap; } // Savings Summary if (eslaCalcData.savings && eslaCalcData.inputs.employerContribution > 0 && !eslaCalcData.scenario1.error && !eslaCalcData.scenario2.error) { addSectionTitlePdf("Summary of Savings with Employer Assistance:"); pdf.setFont("helvetica", "bold"); pdf.setTextColor(22, 160, 133); // Green Sea addLinePdf("Loan Paid Off Sooner By", eslaFormatMonthsToYearsMonths(eslaCalcData.savings.timeSavedMonths), true, false); addLinePdf("Estimated Interest Savings", eslaCalcData.savings.interestSaved, true, true); pdf.setTextColor(51,51,51); pdf.setFont("helvetica", "normal"); yPos += sectionGap; } // Tax Savings if (eslaCalcData.taxSavings && eslaCalcData.taxSavings.annualTaxSavings > 0) { addSectionTitlePdf("Potential Annual Tax Savings (Optional Input Based):"); pdf.setFontSize(8); pdf.setTextColor(100); pdf.text("If employer contribution is via a qualified Sec. 127 plan (tax-free up to $5,250/yr through Dec 31, 2025).", pageMargin, yPos); yPos += (lineH*0.8); pdf.setFontSize(10); pdf.setTextColor(51,51,51); addLinePdf(" Using Federal Tax Rate", `${eslaCalcData.taxSavings.federalTaxRate.toFixed(1)}%`, false, false); addLinePdf(" Using State Tax Rate", `${eslaCalcData.taxSavings.stateTaxRate.toFixed(1)}%`, false, false); addLinePdf("Estimated Annual Tax Savings", eslaCalcData.taxSavings.annualTaxSavings, true, true); yPos += sectionGap; } pdf.setFontSize(8); pdf.setTextColor(120); if (yPos > pdf.internal.pageSize.getHeight() - 40) { pdf.addPage(); yPos = pageMargin; } const disclaimer = "This is an estimate based on the information provided and standard amortization formulas. Actual savings may vary based on your loan servicer's payment application methods and specific loan terms. The tax information is general and subject to change; consult a tax professional for advice."; const splitDisclaimer = pdf.splitTextToSize(disclaimer, contentWidth); pdf.text(splitDisclaimer, pageMargin, yPos); pdf.save("Employer_Student_Loan_Savings_Estimate.pdf"); }
Scroll to Top