FULLY FURNISHED AIRBNBs - AVAILABLE FOR STAYS
ROI · Kenya
KSh
KSh
Property price in local currency
Monthly Expenses
KSh
KSh
KSh
EST. Closing Costs
1
Estimated ROI (annualized)
0.00%
projected yearly return
Net monthly KSh 0 Total cost KSh 0 Payback —
`; pdfWindow.document.open(); pdfWindow.document.write(pdfHtml); pdfWindow.document.close(); } // ─── Event Listeners ─── function setupListeners() { var inputs = [propertyPrice, depositPercent, completionDate, currencySelect]; for (var i = 0; i < inputs.length; i++) { if (inputs[i]) { inputs[i].addEventListener('input', calculate); inputs[i].addEventListener('change', calculate); } } for (var j = 0; j < paymentTerm.length; j++) { paymentTerm[j].addEventListener('change', calculate); } if (calculateBtn) { calculateBtn.addEventListener('click', function(e) { e.preventDefault(); var data = calculate(); if (!data.isValid) { alert('Please enter a valid property price, completion date, and a minimum deposit of 10% before generating the PDF.'); return; } generatePdfTab(data); }); } } // ─── Init ─── setDefaultDates(); setupListeners(); calculate(); } // DOM ready if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', initCalculator); } else { initCalculator(); } })(); '; win.document.open(); win.document.write(html); win.document.close(); } // ----- Attach events ----- function attach() { var inputs = [askingPrice, stampDutyPct, legalFeesPct, otherMisc, monthlyService, mriTaxPct, runningCosts, grossRent, furnishingCost, holdingMonths, currencySelect ]; for (var i = 0; i < inputs.length; i++) { if (inputs[i]) { inputs[i].addEventListener('input', render); inputs[i].addEventListener('change', render); } } // Toggle furnishing field on radio change for (var j = 0; j < furnishedRadios.length; j++) { furnishedRadios[j].addEventListener('change', function() { toggleFurnishingField(); }); } if (currencySelect) { currencySelect.addEventListener('change', function() { updateCurrencySymbols(); render(); }); } if (calcBtn) { calcBtn.addEventListener('click', function(e) { e.preventDefault(); generateReport(); }); } // Initial state toggleFurnishingField(); } updateCurrencySymbols(); attach(); render(); })(); `; pdfWindow.document.open(); pdfWindow.document.write(pdfHtml); pdfWindow.document.close(); } // ─── Event Listeners ─── function setupListeners() { var inputs = [propertyPrice, depositPercent, completionDate, currencySelect]; for (var i = 0; i < inputs.length; i++) { if (inputs[i]) { inputs[i].addEventListener('input', calculate); inputs[i].addEventListener('change', calculate); } } for (var j = 0; j < paymentTerm.length; j++) { paymentTerm[j].addEventListener('change', calculate); } if (calculateBtn) { calculateBtn.addEventListener('click', function(e) { e.preventDefault(); var data = calculate(); if (!data.isValid) { alert('Please enter a valid property price, completion date, and a minimum deposit of 10% before generating the PDF.'); return; } generatePdfTab(data); }); } } // ─── Init ─── setDefaultDates(); setupListeners(); calculate(); } // DOM ready if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', initCalculator); } else { initCalculator(); } })();

Compare Listings

Payment plan calculator · min deposit 10%
Minimum 10% required ⚠️ Typical Deposits range at 10 - 30%
Hidden Field Value: 1 (1 = Monthly, 2 = Quarterly)
Payment Amount
$0.00
per month
Deposit: $0.00  ·  Pending Amount: $0.00  ·  Months: 0
`; pdfWindow.document.open(); pdfWindow.document.write(pdfHtml); pdfWindow.document.close(); } // ─── Event Listeners ─── function setupListeners() { var inputs = [propertyPrice, depositPercent, completionDate, currencySelect]; for (var i = 0; i < inputs.length; i++) { if (inputs[i]) { inputs[i].addEventListener('input', calculate); inputs[i].addEventListener('change', calculate); } } for (var j = 0; j < paymentTerm.length; j++) { paymentTerm[j].addEventListener('change', calculate); } if (calculateBtn) { calculateBtn.addEventListener('click', function(e) { e.preventDefault(); var data = calculate(); if (!data.isValid) { alert('Please enter a valid property price, completion date, and a minimum deposit of 10% before generating the PDF.'); return; } generatePdfTab(data); }); } } // ─── Init ─── setDefaultDates(); setupListeners(); calculate(); } // DOM ready if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', initCalculator); } else { initCalculator(); } })(); '; win.document.open(); win.document.write(html); win.document.close(); } // ----- Attach events ----- function attach() { var inputs = [askingPrice, stampDutyPct, legalFeesPct, otherMisc, monthlyService, mriTaxPct, runningCosts, grossRent, furnishingCost, holdingMonths, currencySelect ]; for (var i = 0; i < inputs.length; i++) { if (inputs[i]) { inputs[i].addEventListener('input', render); inputs[i].addEventListener('change', render); } } // Toggle furnishing field on radio change for (var j = 0; j < furnishedRadios.length; j++) { furnishedRadios[j].addEventListener('change', function() { toggleFurnishingField(); }); } if (currencySelect) { currencySelect.addEventListener('change', function() { updateCurrencySymbols(); render(); }); } if (calcBtn) { calcBtn.addEventListener('click', function(e) { e.preventDefault(); generateReport(); }); } // Initial state toggleFurnishingField(); } updateCurrencySymbols(); attach(); render(); })(); `; pdfWindow.document.open(); pdfWindow.document.write(pdfHtml); pdfWindow.document.close(); } // ─── Event Listeners ─── function setupListeners() { var inputs = [propertyPrice, depositPercent, completionDate, currencySelect]; for (var i = 0; i < inputs.length; i++) { if (inputs[i]) { inputs[i].addEventListener('input', calculate); inputs[i].addEventListener('change', calculate); } } for (var j = 0; j < paymentTerm.length; j++) { paymentTerm[j].addEventListener('change', calculate); } if (calculateBtn) { calculateBtn.addEventListener('click', function(e) { e.preventDefault(); var data = calculate(); if (!data.isValid) { alert('Please enter a valid property price, completion date, and a minimum deposit of 10% before generating the PDF.'); return; } generatePdfTab(data); }); } } // ─── Init ─── setDefaultDates(); setupListeners(); calculate(); } // DOM ready if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', initCalculator); } else { initCalculator(); } })();
WordPress Cookie Plugin by Real Cookie Banner
Need help? Chat with us
`; pdfWindow.document.open(); pdfWindow.document.write(pdfHtml); pdfWindow.document.close(); } // ─── Event Listeners ─── function setupListeners() { var inputs = [propertyPrice, depositPercent, completionDate, currencySelect]; for (var i = 0; i < inputs.length; i++) { if (inputs[i]) { inputs[i].addEventListener('input', calculate); inputs[i].addEventListener('change', calculate); } } for (var j = 0; j < paymentTerm.length; j++) { paymentTerm[j].addEventListener('change', calculate); } if (calculateBtn) { calculateBtn.addEventListener('click', function(e) { e.preventDefault(); var data = calculate(); if (!data.isValid) { alert('Please enter a valid property price, completion date, and a minimum deposit of 10% before generating the PDF.'); return; } generatePdfTab(data); }); } } // ─── Init ─── setDefaultDates(); setupListeners(); calculate(); } // DOM ready if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', initCalculator); } else { initCalculator(); } })(); '; win.document.open(); win.document.write(html); win.document.close(); } // ----- Attach events ----- function attach() { var inputs = [askingPrice, stampDutyPct, legalFeesPct, otherMisc, monthlyService, mriTaxPct, runningCosts, grossRent, furnishingCost, holdingMonths, currencySelect ]; for (var i = 0; i < inputs.length; i++) { if (inputs[i]) { inputs[i].addEventListener('input', render); inputs[i].addEventListener('change', render); } } // Toggle furnishing field on radio change for (var j = 0; j < furnishedRadios.length; j++) { furnishedRadios[j].addEventListener('change', function() { toggleFurnishingField(); }); } if (currencySelect) { currencySelect.addEventListener('change', function() { updateCurrencySymbols(); render(); }); } if (calcBtn) { calcBtn.addEventListener('click', function(e) { e.preventDefault(); generateReport(); }); } // Initial state toggleFurnishingField(); } updateCurrencySymbols(); attach(); render(); })(); `; pdfWindow.document.open(); pdfWindow.document.write(pdfHtml); pdfWindow.document.close(); } // ─── Event Listeners ─── function setupListeners() { var inputs = [propertyPrice, depositPercent, completionDate, currencySelect]; for (var i = 0; i < inputs.length; i++) { if (inputs[i]) { inputs[i].addEventListener('input', calculate); inputs[i].addEventListener('change', calculate); } } for (var j = 0; j < paymentTerm.length; j++) { paymentTerm[j].addEventListener('change', calculate); } if (calculateBtn) { calculateBtn.addEventListener('click', function(e) { e.preventDefault(); var data = calculate(); if (!data.isValid) { alert('Please enter a valid property price, completion date, and a minimum deposit of 10% before generating the PDF.'); return; } generatePdfTab(data); }); } } // ─── Init ─── setDefaultDates(); setupListeners(); calculate(); } // DOM ready if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', initCalculator); } else { initCalculator(); } })();