{% extends "base.html" %} {% from "_notes.html" import fine_print %} {% block title %}Expenses · Networthy HQ{% endblock %} {% block main_class %}wide{% endblock %} {% block content %}

Expenses

Your recurring expenses, normalised to a monthly & annual burn rate — and what it means for your net worth. Loan EMIs live under Liabilities, not here.

{% if has_expenses %}
Monthly burn
{{ "{:,.0f}".format(monthly_total) }}
₹{{ "{:,.0f}".format(annual_total) }} a year
Net-worth runway {% if runway_years is not none %} {{ "{:.1f}".format(runway_years) }} yrs ₹{{ "{:,.0f}".format(net_worth) }} ÷ annual expenses {% else %} {% endif %}
FIRE target · {{ "%g"|format(swr_pct) }}% SWR ({{ "%.0f"|format(fire_multiple) }}×) {% if fire_target %} ₹{{ "{:,.0f}".format(fire_target) }}
{{ "%.0f"|format(fire_pct) }}% there · change the rate {% else %} {% endif %}
{% if swr_ladder %}

What withdrawal rate?

The famous 4% rule (25×) is a US result — the Trinity study ran US stocks and bonds over 1926–1995, a 30-year retirement, ~3% inflation, with Social Security underneath. India isn't that: general inflation runs ~6%, healthcare faster still, the return history is shorter, and there's no state pension floor. A 2.5–3% rate is the more defensible assumption here — which means a corpus of 33–40× your annual spend, not 25×.

{% for r in swr_ladder %}
{{ "%g"|format(r.pct) }}% {{ "%.0f"|format(r.multiple) }}×
{{ r.label }}{% if r.current %} · yours{% endif %} ₹{{ "{:,.0f}".format(r.target) }}
{{ r.note }} {{ "%.0f"|format(r.progress_pct) }}% there
{% if r.current %} in use {% else %} {% endif %}
{% endfor %}
Lower rate → bigger corpus → more margin for a bad decade.
{{ fine_print("Withdrawal rates are rules of thumb drawn from historical market data, not guarantees — no rate is 'safe', and the right one depends on your horizon, your assets and your ability to spend less in a bad year. Runway assumes today's net worth and today's burn, with no growth and no inflation.") }}
{% endif %} {% if breakdown %}

Where it goes

{% for b in breakdown %} {% endfor %}
{% endif %} {% endif %}

Fill in whatever applies under each category — the count multiplies the amount, handy for per-person costs (×2 kids, ×4 members). Anything that doesn't fit goes under Other.

{% for s in sections %} {% set ed = (s.entries | selectattr('id','equalto',edit_id) | first) if edit_id else none %}

{{ s.label }}

{% if s.total %}₹{{ "{:,.0f}".format(s.total) }}/yr{% endif %}
{% if s.entries %} {% for e in s.entries %} {% endfor %}
{{ e.name }}{% if e.notes %} {{ e.notes }}{% endif %} ₹{{ "{:,.0f}".format(e.amount) }} {{ e.frequency_label }} {{ ("× " ~ e.count) if e.count and e.count > 1 else "" }} ₹{{ "{:,.0f}".format(e.monthly) }}/mo edit
{% endif %}
{% if ed %}{% endif %} {% if ed %}Cancel{% endif %}
{% endfor %} {% endblock %}