{"id":226527,"date":"2025-02-27T14:04:52","date_gmt":"2025-02-27T14:04:52","guid":{"rendered":"https:\/\/jisort.com\/blog\/?page_id=226527"},"modified":"2025-02-27T17:38:46","modified_gmt":"2025-02-27T17:38:46","slug":"budget-planner","status":"publish","type":"page","link":"https:\/\/jisort.com\/blog\/budget-planner\/","title":{"rendered":"Budget Planner Calculator"},"content":{"rendered":"<style>.kb-row-layout-id226527_12cf5e-6f > .kt-row-column-wrap{align-content:start;}:where(.kb-row-layout-id226527_12cf5e-6f > .kt-row-column-wrap) > .wp-block-kadence-column{justify-content:start;}.kb-row-layout-id226527_12cf5e-6f > .kt-row-column-wrap{column-gap:var(--global-kb-gap-md, 2rem);row-gap:var(--global-kb-gap-md, 2rem);padding-top:var(--global-kb-spacing-sm, 1.5rem);padding-bottom:var(--global-kb-spacing-sm, 1.5rem);}.kb-row-layout-id226527_12cf5e-6f > .kt-row-column-wrap > div:not(.added-for-specificity){grid-column:initial;}.kb-row-layout-id226527_12cf5e-6f > .kt-row-column-wrap{grid-template-columns:minmax(0, 1fr) minmax(0, 6fr) minmax(0, 1fr);}.kb-row-layout-id226527_12cf5e-6f > .kt-row-layout-overlay{opacity:0.30;}@media all and (max-width: 1024px){.kb-row-layout-id226527_12cf5e-6f > .kt-row-column-wrap > div:not(.added-for-specificity){grid-column:initial;}}@media all and (max-width: 1024px){.kb-row-layout-id226527_12cf5e-6f > .kt-row-column-wrap{grid-template-columns:minmax(0, 1fr) minmax(0, 6fr) minmax(0, 1fr);}}@media all and (max-width: 767px){.kb-row-layout-id226527_12cf5e-6f > .kt-row-column-wrap > div:not(.added-for-specificity){grid-column:initial;}.kb-row-layout-id226527_12cf5e-6f > .kt-row-column-wrap{grid-template-columns:minmax(0, 1fr);}}<\/style><div class=\"kb-row-layout-wrap kb-row-layout-id226527_12cf5e-6f alignnone wp-block-kadence-rowlayout\"><div class=\"kt-row-column-wrap kt-has-3-columns kt-row-layout-center-exwide kt-tab-layout-inherit kt-mobile-layout-row kt-row-valign-top\">\n<style>.kadence-column226527_69851e-bd > .kt-inside-inner-col,.kadence-column226527_69851e-bd > .kt-inside-inner-col:before{border-top-left-radius:0px;border-top-right-radius:0px;border-bottom-right-radius:0px;border-bottom-left-radius:0px;}.kadence-column226527_69851e-bd > .kt-inside-inner-col{column-gap:var(--global-kb-gap-sm, 1rem);}.kadence-column226527_69851e-bd > .kt-inside-inner-col{flex-direction:column;}.kadence-column226527_69851e-bd > .kt-inside-inner-col > .aligncenter{width:100%;}.kadence-column226527_69851e-bd > .kt-inside-inner-col:before{opacity:0.3;}.kadence-column226527_69851e-bd{position:relative;}@media all and (max-width: 1024px){.kadence-column226527_69851e-bd > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}@media all and (max-width: 767px){.kadence-column226527_69851e-bd > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}<\/style>\n<div class=\"wp-block-kadence-column kadence-column226527_69851e-bd\"><div class=\"kt-inside-inner-col\"><\/div><\/div>\n\n\n<style>.kadence-column226527_1c7a7f-05 > .kt-inside-inner-col,.kadence-column226527_1c7a7f-05 > .kt-inside-inner-col:before{border-top-left-radius:0px;border-top-right-radius:0px;border-bottom-right-radius:0px;border-bottom-left-radius:0px;}.kadence-column226527_1c7a7f-05 > .kt-inside-inner-col{column-gap:var(--global-kb-gap-sm, 1rem);}.kadence-column226527_1c7a7f-05 > .kt-inside-inner-col{flex-direction:column;}.kadence-column226527_1c7a7f-05 > .kt-inside-inner-col > .aligncenter{width:100%;}.kadence-column226527_1c7a7f-05 > .kt-inside-inner-col:before{opacity:0.3;}.kadence-column226527_1c7a7f-05{position:relative;}@media all and (max-width: 1024px){.kadence-column226527_1c7a7f-05 > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}@media all and (max-width: 767px){.kadence-column226527_1c7a7f-05 > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}<\/style>\n<div class=\"wp-block-kadence-column kadence-column226527_1c7a7f-05\"><div class=\"kt-inside-inner-col\">\n<p>Use our Budget Planner Tool on to manage income, expenses (rent, food, loans) &amp; savings. Perfect for individuals &amp; small businesses with Jisort\u2019s mobile banking.<\/p>\n<\/div><\/div>\n\n\n<style>.kadence-column226527_e18672-66 > .kt-inside-inner-col,.kadence-column226527_e18672-66 > .kt-inside-inner-col:before{border-top-left-radius:0px;border-top-right-radius:0px;border-bottom-right-radius:0px;border-bottom-left-radius:0px;}.kadence-column226527_e18672-66 > .kt-inside-inner-col{column-gap:var(--global-kb-gap-sm, 1rem);}.kadence-column226527_e18672-66 > .kt-inside-inner-col{flex-direction:column;}.kadence-column226527_e18672-66 > .kt-inside-inner-col > .aligncenter{width:100%;}.kadence-column226527_e18672-66 > .kt-inside-inner-col:before{opacity:0.3;}.kadence-column226527_e18672-66{position:relative;}@media all and (max-width: 1024px){.kadence-column226527_e18672-66 > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}@media all and (max-width: 767px){.kadence-column226527_e18672-66 > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}<\/style>\n<div class=\"wp-block-kadence-column kadence-column226527_e18672-66\"><div class=\"kt-inside-inner-col\"><\/div><\/div>\n\n<\/div><\/div>\n\n<style>.kb-row-layout-id226527_b205d4-2f > .kt-row-column-wrap{align-content:start;}:where(.kb-row-layout-id226527_b205d4-2f > .kt-row-column-wrap) > .wp-block-kadence-column{justify-content:start;}.kb-row-layout-id226527_b205d4-2f > .kt-row-column-wrap{column-gap:var(--global-kb-gap-md, 2rem);row-gap:var(--global-kb-gap-md, 2rem);padding-top:var(--global-kb-spacing-sm, 1.5rem);padding-bottom:var(--global-kb-spacing-sm, 1.5rem);}.kb-row-layout-id226527_b205d4-2f > .kt-row-column-wrap > div:not(.added-for-specificity){grid-column:initial;}.kb-row-layout-id226527_b205d4-2f > .kt-row-column-wrap{grid-template-columns:minmax(0, 1fr) minmax(0, 6fr) minmax(0, 1fr);}.kb-row-layout-id226527_b205d4-2f > .kt-row-layout-overlay{opacity:0.30;}@media all and (max-width: 1024px){.kb-row-layout-id226527_b205d4-2f > .kt-row-column-wrap > div:not(.added-for-specificity){grid-column:initial;}}@media all and (max-width: 1024px){.kb-row-layout-id226527_b205d4-2f > .kt-row-column-wrap{grid-template-columns:minmax(0, 1fr) minmax(0, 6fr) minmax(0, 1fr);}}@media all and (max-width: 767px){.kb-row-layout-id226527_b205d4-2f > .kt-row-column-wrap > div:not(.added-for-specificity){grid-column:initial;}.kb-row-layout-id226527_b205d4-2f > .kt-row-column-wrap{grid-template-columns:minmax(0, 1fr);}}<\/style><div class=\"kb-row-layout-wrap kb-row-layout-id226527_b205d4-2f alignnone wp-block-kadence-rowlayout\"><div class=\"kt-row-column-wrap kt-has-3-columns kt-row-layout-center-exwide kt-tab-layout-inherit kt-mobile-layout-row kt-row-valign-top\">\n<style>.kadence-column226527_01d911-79 > .kt-inside-inner-col,.kadence-column226527_01d911-79 > .kt-inside-inner-col:before{border-top-left-radius:0px;border-top-right-radius:0px;border-bottom-right-radius:0px;border-bottom-left-radius:0px;}.kadence-column226527_01d911-79 > .kt-inside-inner-col{column-gap:var(--global-kb-gap-sm, 1rem);}.kadence-column226527_01d911-79 > .kt-inside-inner-col{flex-direction:column;}.kadence-column226527_01d911-79 > .kt-inside-inner-col > .aligncenter{width:100%;}.kadence-column226527_01d911-79 > .kt-inside-inner-col:before{opacity:0.3;}.kadence-column226527_01d911-79{position:relative;}@media all and (max-width: 1024px){.kadence-column226527_01d911-79 > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}@media all and (max-width: 767px){.kadence-column226527_01d911-79 > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}<\/style>\n<div class=\"wp-block-kadence-column kadence-column226527_01d911-79\"><div class=\"kt-inside-inner-col\"><\/div><\/div>\n\n\n<style>.kadence-column226527_516b7f-8c > .kt-inside-inner-col,.kadence-column226527_516b7f-8c > .kt-inside-inner-col:before{border-top-left-radius:0px;border-top-right-radius:0px;border-bottom-right-radius:0px;border-bottom-left-radius:0px;}.kadence-column226527_516b7f-8c > .kt-inside-inner-col{column-gap:var(--global-kb-gap-sm, 1rem);}.kadence-column226527_516b7f-8c > .kt-inside-inner-col{flex-direction:column;}.kadence-column226527_516b7f-8c > .kt-inside-inner-col > .aligncenter{width:100%;}.kadence-column226527_516b7f-8c > .kt-inside-inner-col:before{opacity:0.3;}.kadence-column226527_516b7f-8c{position:relative;}@media all and (max-width: 1024px){.kadence-column226527_516b7f-8c > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}@media all and (max-width: 767px){.kadence-column226527_516b7f-8c > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}<\/style>\n<div class=\"wp-block-kadence-column kadence-column226527_516b7f-8c\"><div class=\"kt-inside-inner-col\">    <div class=\"calculator\">\r\n        <div class=\"calc-header\">\r\n            <h2>Jisort Budget Planner Tool<\/h2>\r\n            <p>Plan your finances responsibly\u2014track income, expenses, and savings for individuals and small businesses with flexible budgeting<\/p>\r\n        <\/div>\r\n\r\n        <div class=\"calc-key-result\">\r\n            <h3>Savings (Income - Total Expenses)<\/h3>\r\n            <span class=\"calc-key-result-amount\">KES 0.00 (0% of Income)<\/span>\r\n        <\/div>\r\n\r\n        <div class=\"calc-input\">\r\n            <!-- Income Section -->\r\n            <div class=\"calc-input-group\">\r\n                <label for=\"calc_income\">Monthly Net Income (KES)<\/label>\r\n                <input type=\"number\" class=\"calc-input-field\" name=\"calc_income\" value=\"50000\" min=\"0\" step=\"100\" aria-label=\"Monthly net income in Kenyan Shillings\">\r\n            <\/div>\r\n\r\n            <!-- Fixed Expenses (Needs - Suggested 50% of Income) -->\r\n            <div class=\"calc-input-group\">\r\n                <label for=\"calc_rent\">Rent\/Mortgage (KES)<\/label>\r\n                <input type=\"number\" class=\"calc-input-field\" name=\"calc_rent\" value=\"6250\" min=\"0\" step=\"100\" aria-label=\"Monthly rent or mortgage in Kenyan Shillings\">\r\n            <\/div>\r\n            <div class=\"calc-input-group\">\r\n                <label for=\"calc_property_taxes\">Property Taxes (KES)<\/label>\r\n                <input type=\"number\" class=\"calc-input-field\" name=\"calc_property_taxes\" value=\"2125\" min=\"0\" step=\"100\" aria-label=\"Monthly property taxes in Kenyan Shillings\">\r\n            <\/div>\r\n            <div class=\"calc-input-group\">\r\n                <label for=\"calc_insurance\">Home\/Renter\u2019s Insurance (KES)<\/label>\r\n                <input type=\"number\" class=\"calc-input-field\" name=\"calc_insurance\" value=\"1250\" min=\"0\" step=\"100\" aria-label=\"Monthly home or renter\u2019s insurance in Kenyan Shillings\">\r\n            <\/div>\r\n            <div class=\"calc-input-group\">\r\n                <label for=\"calc_utilities_electricity\">Electricity (KES)<\/label>\r\n                <input type=\"number\" class=\"calc-input-field\" name=\"calc_utilities_electricity\" value=\"1000\" min=\"0\" step=\"100\" aria-label=\"Monthly electricity bill in Kenyan Shillings\">\r\n            <\/div>\r\n            <div class=\"calc-input-group\">\r\n                <label for=\"calc_utilities_water\">Water (KES)<\/label>\r\n                <input type=\"number\" class=\"calc-input-field\" name=\"calc_utilities_water\" value=\"625\" min=\"0\" step=\"100\" aria-label=\"Monthly water bill in Kenyan Shillings\">\r\n            <\/div>\r\n            <div class=\"calc-input-group\">\r\n                <label for=\"calc_utilities_gas\">Gas (KES)<\/label>\r\n                <input type=\"number\" class=\"calc-input-field\" name=\"calc_utilities_gas\" value=\"625\" min=\"0\" step=\"100\" aria-label=\"Monthly gas bill in Kenyan Shillings\">\r\n            <\/div>\r\n            <div class=\"calc-input-group\">\r\n                <label for=\"calc_loans_personal\">Personal Loan Payments (KES)<\/label>\r\n                <input type=\"number\" class=\"calc-input-field\" name=\"calc_loans_personal\" value=\"375\" min=\"0\" step=\"100\" aria-label=\"Monthly personal loan payments in Kenyan Shillings\">\r\n            <\/div>\r\n            <div class=\"calc-input-group\">\r\n                <label for=\"calc_loans_business\">Business Loan Payments (KES)<\/label>\r\n                <input type=\"number\" class=\"calc-input-field\" name=\"calc_loans_business\" value=\"250\" min=\"0\" step=\"100\" aria-label=\"Monthly business loan payments in Kenyan Shillings\">\r\n            <\/div>\r\n\r\n            <!-- Variable Expenses (Wants - Suggested 30% of Income) -->\r\n            <div class=\"calc-input-group\">\r\n                <label for=\"calc_food_groceries\">Groceries (KES)<\/label>\r\n                <input type=\"number\" class=\"calc-input-field\" name=\"calc_food_groceries\" value=\"3750\" min=\"0\" step=\"100\" aria-label=\"Monthly grocery expenses in Kenyan Shillings\">\r\n            <\/div>\r\n            <div class=\"calc-input-group\">\r\n                <label for=\"calc_food_dining\">Dining Out (KES)<\/label>\r\n                <input type=\"number\" class=\"calc-input-field\" name=\"calc_food_dining\" value=\"1275\" min=\"0\" step=\"100\" aria-label=\"Monthly dining out expenses in Kenyan Shillings\">\r\n            <\/div>\r\n            <div class=\"calc-input-group\">\r\n                <label for=\"calc_transport_fuel\">Fuel (KES)<\/label>\r\n                <input type=\"number\" class=\"calc-input-field\" name=\"calc_transport_fuel\" value=\"1875\" min=\"0\" step=\"100\" aria-label=\"Monthly fuel costs in Kenyan Shillings\">\r\n            <\/div>\r\n            <div class=\"calc-input-group\">\r\n                <label for=\"calc_transport_public\">Public Transport (KES)<\/label>\r\n                <input type=\"number\" class=\"calc-input-field\" name=\"calc_transport_public\" value=\"600\" min=\"0\" step=\"100\" aria-label=\"Monthly public transport costs in Kenyan Shillings\">\r\n            <\/div>\r\n            <div class=\"calc-input-group\">\r\n                <label for=\"calc_entertainment_movies\">Movies\/Events (KES)<\/label>\r\n                <input type=\"number\" class=\"calc-input-field\" name=\"calc_entertainment_movies\" value=\"900\" min=\"0\" step=\"100\" aria-label=\"Monthly movies or events expenses in Kenyan Shillings\">\r\n            <\/div>\r\n            <div class=\"calc-input-group\">\r\n                <label for=\"calc_entertainment_hobbies\">Hobbies\/Subscriptions (KES)<\/label>\r\n                <input type=\"number\" class=\"calc-input-field\" name=\"calc_entertainment_hobbies\" value=\"600\" min=\"0\" step=\"100\" aria-label=\"Monthly hobbies or subscriptions expenses in Kenyan Shillings\">\r\n            <\/div>\r\n        <\/div>\r\n\r\n        <div class=\"calc-outputs\"><\/div>\r\n    <\/div>\r\n\r\n    <script>\r\n        document.addEventListener('DOMContentLoaded', () => {\r\n            const calculators = document.querySelectorAll('.calculator');\r\n\r\n            calculators.forEach(calculator => {\r\n                const calcInputs = calculator.querySelectorAll('.calc-input-field');\r\n                const keyResultAmount = calculator.querySelector('.calc-key-result-amount');\r\n                const calcOutputs = calculator.querySelector('.calc-outputs');\r\n\r\n                \/\/ Function to auto-fill fields with 50\/30\/20 suggestions (initial values)\r\n                function autoFillFields(income) {\r\n                    if (!income || income <= 0) return;\r\n\r\n                    income = parseFloat(income) || 0;\r\n\r\n                    \/\/ 50% for Fixed Expenses (Needs) - Suggested\r\n                    const needsTotal = income * 0.50;\r\n                    const rent = Math.round(needsTotal * 0.50); \/\/ 50% of 50% (25% of income)\r\n                    const propertyTaxes = Math.round(needsTotal * 0.17); \/\/ 17% of 50% (8.5% of income)\r\n                    const insurance = Math.round(needsTotal * 0.10); \/\/ 10% of 50% (5% of income)\r\n                    const utilitiesElectricity = Math.round(needsTotal * 0.08); \/\/ 8% of 50% (4% of income)\r\n                    const utilitiesWater = Math.round(needsTotal * 0.05); \/\/ 5% of 50% (2.5% of income)\r\n                    const utilitiesGas = Math.round(needsTotal * 0.05); \/\/ 5% of 50% (2.5% of income)\r\n                    const loansPersonal = Math.round(needsTotal * 0.03); \/\/ 3% of 50% (1.5% of income)\r\n                    const loansBusiness = Math.round(needsTotal * 0.02); \/\/ 2% of 50% (1% of income)\r\n\r\n                    \/\/ 30% for Variable Expenses (Wants) - Suggested\r\n                    const wantsTotal = income * 0.30;\r\n                    const foodGroceries = Math.round(wantsTotal * 0.50); \/\/ 50% of 30% (15% of income)\r\n                    const foodDining = Math.round(wantsTotal * 0.17); \/\/ 17% of 30% (5.1% of income)\r\n                    const transportFuel = Math.round(wantsTotal * 0.25); \/\/ 25% of 30% (7.5% of income)\r\n                    const transportPublic = Math.round(wantsTotal * 0.08); \/\/ 8% of 30% (2.4% of income)\r\n                    const entertainmentMovies = Math.round(wantsTotal * 0.12); \/\/ 12% of 30% (3.6% of income)\r\n                    const entertainmentHobbies = Math.round(wantsTotal * 0.08); \/\/ 8% of 30% (2.4% of income)\r\n\r\n                    \/\/ Set initial suggested values in the fields\r\n                    calculator.querySelector('.calc-input-field[name=\"calc_rent\"]').value = rent;\r\n                    calculator.querySelector('.calc-input-field[name=\"calc_property_taxes\"]').value = propertyTaxes;\r\n                    calculator.querySelector('.calc-input-field[name=\"calc_insurance\"]').value = insurance;\r\n                    calculator.querySelector('.calc-input-field[name=\"calc_utilities_electricity\"]').value = utilitiesElectricity;\r\n                    calculator.querySelector('.calc-input-field[name=\"calc_utilities_water\"]').value = utilitiesWater;\r\n                    calculator.querySelector('.calc-input-field[name=\"calc_utilities_gas\"]').value = utilitiesGas;\r\n                    calculator.querySelector('.calc-input-field[name=\"calc_loans_personal\"]').value = loansPersonal;\r\n                    calculator.querySelector('.calc-input-field[name=\"calc_loans_business\"]').value = loansBusiness;\r\n                    calculator.querySelector('.calc-input-field[name=\"calc_food_groceries\"]').value = foodGroceries;\r\n                    calculator.querySelector('.calc-input-field[name=\"calc_food_dining\"]').value = foodDining;\r\n                    calculator.querySelector('.calc-input-field[name=\"calc_transport_fuel\"]').value = transportFuel;\r\n                    calculator.querySelector('.calc-input-field[name=\"calc_transport_public\"]').value = transportPublic;\r\n                    calculator.querySelector('.calc-input-field[name=\"calc_entertainment_movies\"]').value = entertainmentMovies;\r\n                    calculator.querySelector('.calc-input-field[name=\"calc_entertainment_hobbies\"]').value = entertainmentHobbies;\r\n\r\n                    \/\/ Trigger recalculation after auto-fill\r\n                    calculateBudget();\r\n                }\r\n\r\n                \/\/ Function to calculate budget with flexible edits, showing savings as Income - Total Expenses\r\n                function calculateBudget() {\r\n                    \/\/ Gather input values with validation\r\n                    const income = Math.max(0, parseFloat(calculator.querySelector('.calc-input-field[name=\"calc_income\"]').value) || 0);\r\n                    const rent = Math.max(0, parseFloat(calculator.querySelector('.calc-input-field[name=\"calc_rent\"]').value) || 0);\r\n                    const propertyTaxes = Math.max(0, parseFloat(calculator.querySelector('.calc-input-field[name=\"calc_property_taxes\"]').value) || 0);\r\n                    const insurance = Math.max(0, parseFloat(calculator.querySelector('.calc-input-field[name=\"calc_insurance\"]').value) || 0);\r\n                    const utilitiesElectricity = Math.max(0, parseFloat(calculator.querySelector('.calc-input-field[name=\"calc_utilities_electricity\"]').value) || 0);\r\n                    const utilitiesWater = Math.max(0, parseFloat(calculator.querySelector('.calc-input-field[name=\"calc_utilities_water\"]').value) || 0);\r\n                    const utilitiesGas = Math.max(0, parseFloat(calculator.querySelector('.calc-input-field[name=\"calc_utilities_gas\"]').value) || 0);\r\n                    const loansPersonal = Math.max(0, parseFloat(calculator.querySelector('.calc-input-field[name=\"calc_loans_personal\"]').value) || 0);\r\n                    const loansBusiness = Math.max(0, parseFloat(calculator.querySelector('.calc-input-field[name=\"calc_loans_business\"]').value) || 0);\r\n                    const foodGroceries = Math.max(0, parseFloat(calculator.querySelector('.calc-input-field[name=\"calc_food_groceries\"]').value) || 0);\r\n                    const foodDining = Math.max(0, parseFloat(calculator.querySelector('.calc-input-field[name=\"calc_food_dining\"]').value) || 0);\r\n                    const transportFuel = Math.max(0, parseFloat(calculator.querySelector('.calc-input-field[name=\"calc_transport_fuel\"]').value) || 0);\r\n                    const transportPublic = Math.max(0, parseFloat(calculator.querySelector('.calc-input-field[name=\"calc_transport_public\"]').value) || 0);\r\n                    const entertainmentMovies = Math.max(0, parseFloat(calculator.querySelector('.calc-input-field[name=\"calc_entertainment_movies\"]').value) || 0);\r\n                    const entertainmentHobbies = Math.max(0, parseFloat(calculator.querySelector('.calc-input-field[name=\"calc_entertainment_hobbies\"]').value) || 0);\r\n\r\n                    \/\/ Calculate default allocations for 50\/30\/20 (suggestions)\r\n                    const needsTotal = income * 0.50;\r\n                    const wantsTotal = income * 0.30;\r\n                    const recommendedSavings = Math.round(income * 0.20);\r\n\r\n                    \/\/ Calculate total actual expenses (no scaling, allow user edits)\r\n                    const totalFixedExpenses = rent + propertyTaxes + insurance + utilitiesElectricity + utilitiesWater + utilitiesGas + loansPersonal + loansBusiness;\r\n                    const totalVariableExpenses = foodGroceries + foodDining + transportFuel + transportPublic + entertainmentMovies + entertainmentHobbies;\r\n                    const totalExpenses = totalFixedExpenses + totalVariableExpenses;\r\n\r\n                    \/\/ Calculate actual savings as Income - Total Expenses\r\n                    const savings = income - totalExpenses; \/\/ Can be negative if expenses exceed income\r\n                    const savingsPercentage = income > 0 ? Math.round((savings \/ income) * 100) : 0; \/\/ Percentage of income\r\n\r\n                    \/\/ Calculate surplus\/deficit for each section\r\n                    const fixedSurplus = needsTotal - totalFixedExpenses; \/\/ Positive if under, negative if over\r\n                    const variableSurplus = wantsTotal - totalVariableExpenses; \/\/ Positive if under, negative if over\r\n\r\n                    \/\/ Update key result to show savings and its percentage\r\n                    keyResultAmount.innerHTML = `KES ${savings.toLocaleString('en-KE', { minimumFractionDigits: 2, signDisplay: 'always' })} (${savingsPercentage}% of Income)`;\r\n\r\n                    \/\/ Generate detailed output with 50\/30\/20 suggestions and surplus spending\r\n                    calcOutputs.innerHTML = `\r\n                        <table class=\"calc-table\">\r\n                            <thead>\r\n                                <tr><th>Description<\/th><th>Amount (KES)<\/th><\/tr>\r\n                            <\/thead>\r\n                            <tbody>\r\n                                <tr><td>Monthly Net Income<\/td><td>${income.toLocaleString('en-KE')}<\/td><\/tr>\r\n                                <tr class=\"section-header\"><td colspan=\"2\">Fixed Expenses (Needs - Suggested KES ${needsTotal.toLocaleString('en-KE')}, 50% of Income)<\/td><\/tr>\r\n                                <tr><td>Rent\/Mortgage<\/td><td>-${rent.toLocaleString('en-KE')}<\/td><\/tr>\r\n                                <tr><td>Property Taxes<\/td><td>-${propertyTaxes.toLocaleString('en-KE')}<\/td><\/tr>\r\n                                <tr><td>Home\/Renter\u2019s Insurance<\/td><td>-${insurance.toLocaleString('en-KE')}<\/td><\/tr>\r\n                                <tr><td>Electricity<\/td><td>-${utilitiesElectricity.toLocaleString('en-KE')}<\/td><\/tr>\r\n                                <tr><td>Water<\/td><td>-${utilitiesWater.toLocaleString('en-KE')}<\/td><\/tr>\r\n                                <tr><td>Gas<\/td><td>-${utilitiesGas.toLocaleString('en-KE')}<\/td><\/tr>\r\n                                <tr><td>Personal Loan Payments<\/td><td>-${loansPersonal.toLocaleString('en-KE')}<\/td><\/tr>\r\n                                <tr><td>Business Loan Payments<\/td><td>-${loansBusiness.toLocaleString('en-KE')}<\/td><\/tr>\r\n                                <tr><td>Surplus\/Deficit in Fixed Expenses<\/td><td>${fixedSurplus.toLocaleString('en-KE', { signDisplay: 'always' })}<\/td><\/tr>\r\n                                <tr class=\"section-header\"><td colspan=\"2\">Variable Expenses (Wants - Suggested KES ${wantsTotal.toLocaleString('en-KE')}, 30% of Income)<\/td><\/tr>\r\n                                <tr><td>Groceries<\/td><td>-${foodGroceries.toLocaleString('en-KE')}<\/td><\/tr>\r\n                                <tr><td>Dining Out<\/td><td>-${foodDining.toLocaleString('en-KE')}<\/td><\/tr>\r\n                                <tr><td>Fuel<\/td><td>-${transportFuel.toLocaleString('en-KE')}<\/td><\/tr>\r\n                                <tr><td>Public Transport<\/td><td>-${transportPublic.toLocaleString('en-KE')}<\/td><\/tr>\r\n                                <tr><td>Movies\/Events<\/td><td>-${entertainmentMovies.toLocaleString('en-KE')}<\/td><\/tr>\r\n                                <tr><td>Hobbies\/Subscriptions<\/td><td>-${entertainmentHobbies.toLocaleString('en-KE')}<\/td><\/tr>\r\n                                <tr><td>Surplus\/Deficit in Variable Expenses<\/td><td>${variableSurplus.toLocaleString('en-KE', { signDisplay: 'always' })}<\/td><\/tr>\r\n                                <tr class=\"section-header\"><td colspan=\"2\">Savings\/Debt (Recommended 20% of Income: KES ${recommendedSavings.toLocaleString('en-KE')})<\/td><\/tr>\r\n                                <tr><td>Actual Savings (Income - Total Expenses)<\/td><td>${savings.toLocaleString('en-KE', { signDisplay: 'always' })}<\/td><\/tr>\r\n                                <tr class=\"spacer\"><td colspan=\"2\"><\/td><\/tr>\r\n                            <\/tbody>\r\n                        <\/table>\r\n                    `;\r\n                }\r\n\r\n                \/\/ Initial auto-fill with default income\r\n                autoFillFields(calculator.querySelector('.calc-input-field[name=\"calc_income\"]').value);\r\n\r\n                \/\/ Add input event listeners for real-time updates\r\n                calcInputs.forEach(input => {\r\n                    input.addEventListener('input', () => {\r\n                        if (input.name === 'calc_income') {\r\n                            autoFillFields(input.value); \/\/ Auto-fill initial suggestions on income change\r\n                        }\r\n                        calculateBudget(); \/\/ Recalculate budget instantly on any input change\r\n                    });\r\n                    input.setAttribute('aria-required', 'true'); \/\/ Indicate required fields for accessibility\r\n                });\r\n            });\r\n        });\r\n    <\/script>\r\n    \n<\/div><\/div>\n\n\n<style>.kadence-column226527_491b02-33 > .kt-inside-inner-col,.kadence-column226527_491b02-33 > .kt-inside-inner-col:before{border-top-left-radius:0px;border-top-right-radius:0px;border-bottom-right-radius:0px;border-bottom-left-radius:0px;}.kadence-column226527_491b02-33 > .kt-inside-inner-col{column-gap:var(--global-kb-gap-sm, 1rem);}.kadence-column226527_491b02-33 > .kt-inside-inner-col{flex-direction:column;}.kadence-column226527_491b02-33 > .kt-inside-inner-col > .aligncenter{width:100%;}.kadence-column226527_491b02-33 > .kt-inside-inner-col:before{opacity:0.3;}.kadence-column226527_491b02-33{position:relative;}@media all and (max-width: 1024px){.kadence-column226527_491b02-33 > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}@media all and (max-width: 767px){.kadence-column226527_491b02-33 > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}<\/style>\n<div class=\"wp-block-kadence-column kadence-column226527_491b02-33\"><div class=\"kt-inside-inner-col\"><\/div><\/div>\n\n<\/div><\/div>\n\n<style>.kb-row-layout-id226527_865318-99 > .kt-row-column-wrap{align-content:start;}:where(.kb-row-layout-id226527_865318-99 > .kt-row-column-wrap) > .wp-block-kadence-column{justify-content:start;}.kb-row-layout-id226527_865318-99 > .kt-row-column-wrap{column-gap:var(--global-kb-gap-md, 2rem);row-gap:var(--global-kb-gap-md, 2rem);padding-top:var(--global-kb-spacing-sm, 1.5rem);padding-bottom:var(--global-kb-spacing-sm, 1.5rem);}.kb-row-layout-id226527_865318-99 > .kt-row-column-wrap > div:not(.added-for-specificity){grid-column:initial;}.kb-row-layout-id226527_865318-99 > .kt-row-column-wrap{grid-template-columns:minmax(0, 1fr) minmax(0, 3fr) minmax(0, 1fr);}.kb-row-layout-id226527_865318-99 > .kt-row-layout-overlay{opacity:0.30;}@media all and (max-width: 1024px){.kb-row-layout-id226527_865318-99 > .kt-row-column-wrap > div:not(.added-for-specificity){grid-column:initial;}}@media all and (max-width: 1024px){.kb-row-layout-id226527_865318-99 > .kt-row-column-wrap{grid-template-columns:minmax(0, 1fr) minmax(0, 3fr) minmax(0, 1fr);}}@media all and (max-width: 767px){.kb-row-layout-id226527_865318-99 > .kt-row-column-wrap > div:not(.added-for-specificity){grid-column:initial;}.kb-row-layout-id226527_865318-99 > .kt-row-column-wrap{grid-template-columns:minmax(0, 1fr);}}<\/style><div class=\"kb-row-layout-wrap kb-row-layout-id226527_865318-99 alignnone wp-block-kadence-rowlayout\"><div class=\"kt-row-column-wrap kt-has-3-columns kt-row-layout-center-wide kt-tab-layout-inherit kt-mobile-layout-row kt-row-valign-top\">\n<style>.kadence-column226527_1ce06a-23 > .kt-inside-inner-col,.kadence-column226527_1ce06a-23 > .kt-inside-inner-col:before{border-top-left-radius:0px;border-top-right-radius:0px;border-bottom-right-radius:0px;border-bottom-left-radius:0px;}.kadence-column226527_1ce06a-23 > .kt-inside-inner-col{column-gap:var(--global-kb-gap-sm, 1rem);}.kadence-column226527_1ce06a-23 > .kt-inside-inner-col{flex-direction:column;}.kadence-column226527_1ce06a-23 > .kt-inside-inner-col > .aligncenter{width:100%;}.kadence-column226527_1ce06a-23 > .kt-inside-inner-col:before{opacity:0.3;}.kadence-column226527_1ce06a-23{position:relative;}@media all and (max-width: 1024px){.kadence-column226527_1ce06a-23 > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}@media all and (max-width: 767px){.kadence-column226527_1ce06a-23 > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}<\/style>\n<div class=\"wp-block-kadence-column kadence-column226527_1ce06a-23\"><div class=\"kt-inside-inner-col\"><\/div><\/div>\n\n\n<style>.kadence-column226527_d7f02c-6a > .kt-inside-inner-col,.kadence-column226527_d7f02c-6a > .kt-inside-inner-col:before{border-top-left-radius:0px;border-top-right-radius:0px;border-bottom-right-radius:0px;border-bottom-left-radius:0px;}.kadence-column226527_d7f02c-6a > .kt-inside-inner-col{column-gap:var(--global-kb-gap-sm, 1rem);}.kadence-column226527_d7f02c-6a > .kt-inside-inner-col{flex-direction:column;}.kadence-column226527_d7f02c-6a > .kt-inside-inner-col > .aligncenter{width:100%;}.kadence-column226527_d7f02c-6a > .kt-inside-inner-col:before{opacity:0.3;}.kadence-column226527_d7f02c-6a{position:relative;}@media all and (max-width: 1024px){.kadence-column226527_d7f02c-6a > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}@media all and (max-width: 767px){.kadence-column226527_d7f02c-6a > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}<\/style>\n<div class=\"wp-block-kadence-column kadence-column226527_d7f02c-6a\"><div class=\"kt-inside-inner-col\">\n<p>Are you ready to manage your money responsibly?&nbsp;<\/p>\n\n\n\n<p>The Jisort Budget Planner Tool is your free, online solution for individuals and small businesses to create a sustainable budget.&nbsp;<\/p>\n\n\n\n<p>Simply enter your monthly net income, and the tool instantly auto-fills your expenses and savings based on the proven 50\/30\/20 rule \u2014 50% for needs, 30% for wants, and 20% for savings.&nbsp;<\/p>\n\n\n\n<p>With detailed categories like rent, food, loans, and more, it updates in real-time as you adjust your inputs, helping you plan for financial success.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Why Use the a Budget Planner Tool?<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Instant Updates<\/h3>\n\n\n\n<p>Input your income or expenses, and see real-time changes to your budget\u2014no need to press Enter or click away.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Responsible Spending with 50\/30\/20<\/h3>\n\n\n\n<p>Automatically distribute your income into needs (50%), wants (30%), and savings (20%) for sustainable financial planning.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Detailed Expense Tracking<\/h3>\n\n\n\n<p>Break down expenses into categories like rent, utilities, groceries, dining out, and loans for precise budgeting.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Perfect for Individuals and Small Businesses<\/h3>\n\n\n\n<p>Tailored for personal finance or small business budgeting, ensuring every shilling is accounted for.<\/p>\n\n\n\n<p>This user-friendly tool is optimized for Kenya, displaying results in Kenyan Shillings (KES) with clear, actionable insights.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">How the Our Budget Planner Works<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Enter Your Monthly Net Income<\/h3>\n\n\n\n<p>Input your income in KES to trigger instant auto-fill for expenses and savings based on the 50\/30\/20 rule.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Review Suggested Expenses<\/h3>\n\n\n\n<p>See default values for needs (e.g., rent, utilities, loans) and wants (e.g., food, entertainment), categorized for clarity.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Adjust as Needed<\/h3>\n\n\n\n<p>Modify any field to customize your budget, and watch the tool update instantly to show your remaining savings or any shortfalls.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Set Savings Goals<\/h3>\n\n\n\n<p>Define your monthly savings target and ensure it aligns with the 20% savings recommendation for responsible spending.<\/p>\n\n\n\n<p>The tool provides a detailed table with your income, expenses, and savings, highlighting any gaps if your savings goal exceeds your remaining funds.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Benefits for Individuals and Small Businesses<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">For Individuals<\/h3>\n\n\n\n<p>If you\u2019re managing personal finances, the Budget Planner Tool helps you track income and expenses\u2014such as rent, food, and loan payments\u2014ensuring you save responsibly each month.&nbsp;<\/p>\n\n\n\n<p>Its real-time updates and 50\/30\/20 guidance make budgeting effortless and sustainable.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">For Small Businesses<\/h3>\n\n\n\n<p>Small business owners can use this tool to monitor operational costs, payroll, and loan repayments, identifying surplus funds for growth or savings.&nbsp;<\/p>\n\n\n\n<p>The instant updates and detailed categories help maintain financial discipline, aligning with responsible spending principles.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">FAQ Section<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">How does the 50\/30\/20 rule work in the Budget Planner?<\/h3>\n\n\n\n<p>The 50\/30\/20 rule divides your income into 50% for needs (e.g., rent, utilities, loans), 30% for wants (e.g., food, entertainment), and 20% for savings. The tool auto-fills these categories and updates instantly as you adjust your inputs.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Is the Budget Planner Tool free to use?<\/h3>\n\n\n\n<p>Yes, the Budget Planner Tool is completely free, making it accessible for individuals and small businesses looking to improve their financial planning with responsible spending principles.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Can I customize the budget suggestions in the Budget Planner?<\/h3>\n\n\n\n<p>Absolutely!&nbsp;<\/p>\n\n\n\n<p>After the tool auto-fills expenses and savings based on your income, you can adjust any field, and it will update instantly to reflect your custom budget, ensuring it meets your financial goals.<\/p>\n<\/div><\/div>\n\n\n<style>.kadence-column226527_68c4f0-d1 > .kt-inside-inner-col,.kadence-column226527_68c4f0-d1 > .kt-inside-inner-col:before{border-top-left-radius:0px;border-top-right-radius:0px;border-bottom-right-radius:0px;border-bottom-left-radius:0px;}.kadence-column226527_68c4f0-d1 > .kt-inside-inner-col{column-gap:var(--global-kb-gap-sm, 1rem);}.kadence-column226527_68c4f0-d1 > .kt-inside-inner-col{flex-direction:column;}.kadence-column226527_68c4f0-d1 > .kt-inside-inner-col > .aligncenter{width:100%;}.kadence-column226527_68c4f0-d1 > .kt-inside-inner-col:before{opacity:0.3;}.kadence-column226527_68c4f0-d1{position:relative;}@media all and (max-width: 1024px){.kadence-column226527_68c4f0-d1 > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}@media all and (max-width: 767px){.kadence-column226527_68c4f0-d1 > .kt-inside-inner-col{flex-direction:column;justify-content:center;}}<\/style>\n<div class=\"wp-block-kadence-column kadence-column226527_68c4f0-d1\"><div class=\"kt-inside-inner-col\"><\/div><\/div>\n\n<\/div><\/div>\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Use our Budget Planner Tool on to manage income, expenses (rent, food, loans) &amp; savings. Perfect for individuals &amp; small businesses with Jisort\u2019s mobile banking. Are you ready to manage your money responsibly?&nbsp; The Jisort Budget Planner Tool is your free, online solution for individuals and small businesses to create a sustainable budget.&nbsp; Simply enter [&hellip;]<\/p>\n","protected":false},"author":20,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"class_list":["post-226527","page","type-page","status-publish","hentry"],"blocksy_meta":[],"acf":[],"_links":{"self":[{"href":"https:\/\/jisort.com\/blog\/wp-json\/wp\/v2\/pages\/226527","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jisort.com\/blog\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/jisort.com\/blog\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/jisort.com\/blog\/wp-json\/wp\/v2\/users\/20"}],"replies":[{"embeddable":true,"href":"https:\/\/jisort.com\/blog\/wp-json\/wp\/v2\/comments?post=226527"}],"version-history":[{"count":5,"href":"https:\/\/jisort.com\/blog\/wp-json\/wp\/v2\/pages\/226527\/revisions"}],"predecessor-version":[{"id":226536,"href":"https:\/\/jisort.com\/blog\/wp-json\/wp\/v2\/pages\/226527\/revisions\/226536"}],"wp:attachment":[{"href":"https:\/\/jisort.com\/blog\/wp-json\/wp\/v2\/media?parent=226527"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}