The Best Superannuation Retirement Calculator
About this app
The Best Superannuation Retirement Income Calculator 💰 The Best Superannuation Retirement Income Calculator 💰 A comprehensive and intuitive retirement income calculator for sophisticated and smsf investors. Calculate your retirement income based on the following factors: Current Age: years Desired Retirement Age: years Life Expectancy: years Current Savings: $ Monthly Contribution: $ Expected Annual Return: % Expected Annual Inflation Rate (as a percentage): % Superannuation Fees (% of balance per year): % Investment Risk Profile: Conservative (Low Risk) Balanced (Medium Risk) Aggressive (High Risk) Other Retirement Income (if any): $ Occasional Lump Sum Additions (if any): $ Expected Annual Expenses in Retirement: $ Calculate
Related apps
Put this on your site
Source
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>The Best Superannuation Retirement Income Calculator</title>
<meta name="description" content="A comprehensive and intuitive retirement income calculator for sophisticated and smsf investors. Calculate your retirement income based on the following factors:">
<meta name="keywords" content="best retirement financial calculator, best retirement calculator australia, best early retirement calculator, best retirement calculator, best retirement income calculator, best retirement withdrawal calculator, best superannuation retirement calculator, best free retirement calculator, what is the best online retirement calculator, what is the best retirement calculator, best australian retirement calculator, best free retirement calculators, best free retirement income calculator, best free retirement planning calculators, best online retirement calculator, best online retirement calculators, best online retirement income calculator, best online retirement planning calculator, best retirement calculator online, best retirement calculators online, best retirement plan calculator, best retirement planning calculator australia, best retirement savings calculator, best retirement spending calculator, best retirement calculator, best simple retirement calculator, retirement calculator best, retirement calculators best">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<link href="https://stackpath.bootstrapcdn.com/bootstrap/5.0.2/css/bootstrap.min.css" rel="stylesheet"
integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous">
<link href="https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap" rel="stylesheet">
<link href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet">
<script type="text/javascript">
try {
function calculateRetirement() {
let currentAge = parseInt(document.getElementById('currentAge').value);
let retirementAge = parseInt(document.getElementById('retirementAge').value);
let lifeExpectancy = parseInt(document.getElementById('lifeExpectancy').value);
let currentSavings = parseFloat(document.getElementById('currentSavings').value);
let monthlyContribution = parseFloat(document.getElementById('monthlyContribution').value);
let rateOfReturn = parseFloat(document.getElementById('rateOfReturn').value);
let inflationRate = parseFloat(document.getElementById('inflationRate').value);
let superFundFee = parseFloat(document.getElementById('superFundFee').value);
let riskProfile = document.getElementById('riskProfile').value;
let otherIncome = parseFloat(document.getElementById('otherIncome').value);
let lumpSumAdditions = parseFloat(document.getElementById('lumpSumAdditions').value);
let expectedExpenses = parseFloat(document.getElementById('expectedExpenses').value);
let yearsToInvest = retirementAge - currentAge;
let futureValue = currentSavings;
let annualExpenses = expectedExpenses * 12;
let investmentChartData = [];
let expensesChartData = [];
for (let i = 0; i < yearsToInvest; i++) {
futureValue = (futureValue + (monthlyContribution * 12) + lumpSumAdditions) * (1 + rateOfReturn / 100);
annualExpenses = annualExpenses * (1 + inflationRate / 100);
investmentChartData.push({
year: currentAge + i,
value: futureValue.toFixed(2)
});
expensesChartData.push({
year: currentAge + i,
value: annualExpenses.toFixed(2)
});
}
let yearsOfRetirement = lifeExpectancy - retirementAge;
let retirementIncome = (futureValue * (1 + rateOfReturn / 100) ** yearsOfRetirement + (otherIncome * yearsOfRetirement)) / yearsOfRetirement;
let totalSuperFundFee = (futureValue * superFundFee / 100) * yearsOfRetirement;
retirementIncome -= totalSuperFundFee;
document.getElementById('result').innerHTML = `Your retirement income will be $${retirementIncome.toFixed(2).replace(/\B(?=(\d{3})+(?!\d))/g, ",")} per year.<br>Your retirement income is meant to last for ${yearsOfRetirement} years.`;
renderInvestmentChart(investmentChartData);
renderExpensesChart(expensesChartData);
}
function renderInvestmentChart(data) {
let labels = data.map(item => item.year);
let values = data.map(item => item.value);
var ctx = document.getElementById('investmentChart').getContext('2d');
var investmentChart = new Chart(ctx, {
type: 'line',
data: {
labels: labels,
datasets: [{
label: 'Investment Value',
data: values,
backgroundColor: 'rgba(75, 192, 192, 0.2)',
borderColor: 'rgba(75, 192, 192, 1)',
borderWidth: 2
}]
},
options: {
scales: {
y: {
beginAtZero: true,
callback: function(value, index, values) {
return '$' + value.toFixed(2).replace(/\B(?=(\d{3})+(?!\d))/g, ",");
}
}
}
}
});
}
function renderExpensesChart(data) {
let labels = data.map(item => item.year);
let values = data.map(item => item.value);
var ctx = document.getElementById('expensesChart').getContext('2d');
var expensesChart = new Chart(ctx, {
type: 'line',
data: {
labels: labels,
datasets: [{
label: 'Annual Expenses',
data: values,
backgroundColor: 'rgba(255, 99, 132, 0.2)',
borderColor: 'rgba(255, 99, 132, 1)',
borderWidth: 2
}]
},
options: {
scales: {
y: {
beginAtZero: true,
callback: function(value, index, values) {
return '$' + value.toFixed(2).replace(/\B(?=(\d{3})+(?!\d))/g, ",");
}
}
}
}
});
}
document.addEventListener("DOMContentLoaded", function() {
document.getElementById('calculate').addEventListener("click", calculateRetirement);
});
} catch (error) {
throw error;
}
</script>
<style>
body {
font-family: 'Roboto', sans-serif;
background: linear-gradient(to right, #eaeaea, #d6d6d6);
color: #333;
}
.container {
max-width: 600px;
margin: 30px auto;
padding: 20px;
background: rgba(255, 255, 255, 0.8);
color: #333;
border-radius: 8px;
box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
}
h1, p {
text-align: center;
}
.form-group {
margin-bottom: 20px;
}
.form-group label {
font-weight: bold;
}
#result {
font-size: 1.2em;
font-weight: bold;
color: green;
text-align: center;
}
.input-group-text {
background-color: #fff;
border: none;
color: #333;
}
option {
background-color: #fff;
color: #333;
}
canvas {
max-width: 100%;
height: auto;
margin-bottom: 20px;
}
</style>
</head>
<body>
<div id="main-container" class="container">
<h1>💰 The Best Superannuation Retirement Income Calculator 💰</h1>
<p>A comprehensive and intuitive retirement income calculator for sophisticated and smsf investors. Calculate your retirement income based on the following factors:</p>
<div class="form-group">
<label for="currentAge">Current Age:</label>
<div class="input-group">
<input type="number" id="currentAge" class="form-control" min="1" max="100" value="25">
<span class="input-group-text">years</span>
</div>
</div>
<div class="form-group">
<label for="retirementAge">Desired Retirement Age:</label>
<div class="input-group">
<input type="number" id="retirementAge" class="form-control" min="1" max="100" value="65">
<span class="input-group-text">years</span>
</div>
</div>
<div class="form-group">
<label for="lifeExpectancy">Life Expectancy:</label>
<div class="input-group">
<input type="number" id="lifeExpectancy" class="form-control" min="1" max="100" value="85">
<span class="input-group-text">years</span>
</div>
</div>
<div class="form-group">
<label for="currentSavings">Current Savings:</label>
<div class="input-group">
<span class="input-group-text">$</span>
<input type="number" id="currentSavings" class="form-control" min="0" value="100000">
</div>
</div>
<div class="form-group">
<label for="monthlyContribution">Monthly Contribution:</label>
<div class="input-group">
<span class="input-group-text">$</span>
<input type="number" id="monthlyContribution" class="form-control" min="0" value="1000">
</div>
</div>
<div class="form-group">
<label for="rateOfReturn">Expected Annual Return:</label>
<div class="input-group">
<input type="number" id="rateOfReturn" class="form-control" min="0" max="100" value="7">
<span class="input-group-text">%</span>
</div>
</div>
<div class="form-group">
<label for="inflationRate">Expected Annual Inflation Rate (as a percentage):</label>
<div class="input-group">
<input type="number" id="inflationRate" class="form-control" min="0" max="100" value="2">
<span class="input-group-text">%</span>
</div>
</div>
<div class="form-group">
<label for="superFundFee">Superannuation Fees (% of balance per year):</label>
<div class="input-group">
<input type="number" id="superFundFee" class="form-control" min="0" value="0">
<span class="input-group-text">%</span>
</div>
</div>
<div class="form-group">
<label for="riskProfile">Investment Risk Profile:</label>
<select id="riskProfile" class="form-control">
<option value="conservative">Conservative (Low Risk)</option>
<option value="balanced">Balanced (Medium Risk)</option>
<option value="aggressive">Aggressive (High Risk)</option>
</select>
</div>
<div class="form-group">
<label for="otherIncome">Other Retirement Income (if any):</label>
<div class="input-group">
<span class="input-group-text">$</span>
<input type="number" id="otherIncome" class="form-control" min="0" value="0">
</div>
</div>
<div class="form-group">
<label for="lumpSumAdditions">Occasional Lump Sum Additions (if any):</label>
<div class="input-group">
<span class="input-group-text">$</span>
<input type="number" id="lumpSumAdditions" class="form-control" min="0" value="0">
</div>
</div>
<div class="form-group">
<label for="expectedExpenses">Expected Annual Expenses in Retirement:</label>
<div class="input-group">
<span class="input-group-text">$</span>
<input type="number" id="expectedExpenses" class="form-control" min="0" value="5000">
</div>
</div>
<button id="calculate" class="btn btn-primary btn-block">Calculate</button>
<p id="result"></p>
<canvas id="investmentChart"></canvas>
<canvas id="expensesChart"></canvas>
</div>
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
</body>
</html>
NEW APPS
These are apps made by the community!