Finance & investments
Compound interest, ROI and CAGR, present value, loans, configured sales tax, 2026 income-tax estimates and CPI inflation — strict and fully offline.
Finance in Numlex is one strict phrase architecture on top of the money
grammar. Money operands accept every marker, ISO code, named money value and
Answer Token; cross-currency operands use the existing rate table, and a
missing pair is the explicit Rates unavailable state. Intermediate values are
never rounded (minor-unit digits are presentation only), and any ambiguous
phrase, boundary violation or non-finite result is a strict error instead of a
guess.
This page covers compound interest and present value, ROI and CAGR, loans and repayment logic, configured sales tax, the 2026 income-tax estimates and CPI inflation. It is a calculator reference, not financial or tax advice.
Investments and compound interest
With an annual rate R and a period multiplier m (annual 1, quarterly 4, monthly 12, daily 365):
FV = P × (1 + R/m)^(m×y)interest = FV − PPV = FV / (1 + R/m)^(m×y)
Fractional years are allowed (y > 0), and a negative rate is allowed as long as the result stays real and finite.
$1,000 after 3 years at 7% → $1,225.04
$1,000 for 3 years at 7% compounding monthly → $1,232.93
interest on $1,000 after 3 years at 7% → $225.04
present value of $1,000 after 20 years at 10% → $148.64
present value of $1,000 after 3 years at 7% → $816.30
ROI is the Soulver-style returned-versus-invested ratio:
(returned − invested) / invested, so $500 invested $1,500 returned → 2x
(a multiplier kind). The annualized return is CAGR —
(returned/invested)^(1/y) − 1 (a percent kind); the underlying value is kept
unrounded and the display follows the line’s decimal places:
annual return on $1,000 invested $2,500 returned after 7 years → 13.99% (at 2 dp)
… same line at 10 dp → 13.9852281048%
annual return on $1,000 invested $1,500 returned after 3 years → 14.4714242553% (at 10 dp)
Both at and @, and both after and for, are accepted;
compounding/compounded may be monthly, quarterly, daily or annually.
Loans and repayment logic
The engine builds one monthly amortization schedule: rm = R/12,
nm = 12×y, pmt = P×rm/(1−(1+rm)^−nm) (with R = 0, P/nm),
total = pmt×nm and totalInterest = total − P. A requested daily, monthly or
annual payment is that total divided by the requested number of periods
(365y / 12y / y); a requested percentage is totalInterest divided the same
way. This is not independent daily or annual amortization — the documented
meaning is the average payment/interest per period.
monthly repayment on $10,000 over 6 years at 6% → $165.73
daily repayment on $10,000 over 6 years at 6% → $5.45
annual repayment on $10,000 over 6 years at 6% → $1,988.75
total repayment on $10,000 over 6 years at 6% → $11,932.48
daily interest on $10,000 over 6 years at 6% → $0.88
monthly interest on $10,000 over 6 years at 6% → $26.84
annual interest on $10,000 over 6 years at 6% → $322.08
total interest on $10,000 over 6 years at 6% → $1,932.48
y > 0 is required, R = 0 is allowed, R ≥ 100% is rejected, and a negative
rate is accepted only when the domain and the sum stay valid.
Configured sales tax (Settings → General → Tax)
Sales tax is an app setting (never part of .nlx): pick a region preset, edit
the tax name and set a percentage rate. Names are case-insensitive: sales tax,
VAT, GST plus the configured name. With no rate, the answer is the exact
error set sales tax in Settings → Tax.
Presets cover 25 regions with official rates —
for example AU GST 10, GB VAT 20, DE VAT 19, NL VAT 21 — plus a US preset that
has no national rate: choosing it
leaves the rate unset, while manually entering 0% is allowed and is a distinct
state. With a configured rate of 15%:
$300 + VAT → $345.00 (gross)
$345 - VAT → $300.00 (net, divides by 1.15)
VAT on $300 → $45.00 (tax on the net amount)
pre-tax price of $345 → $300.00
gross price of $300 → $345.00
$300 including VAT → $345.00 (an alias of gross)
An explicit percentage phrase such as sales tax 8% of $120 keeps working
independently of the setting.
Estimated income tax (2026)
A built-in offline table covers ten
countries: US, GB, AU, CA, DE, FR, NL, IN, RU and JP. Each table applies to a
2026 tax period (for example US 2026, GB 2026/27,
DE 2026, AU 2026-27, CA 2026, IN FY 2026-27 (AY 2027-28)), and the
model is a coarse national
estimate: progressive brackets for a single individual with the basic allowance
(zero bracket), excluding states/provinces, credits, contributions and personal
circumstances. Each table documents its own approximations — Germany represents
the progressive 14–24% and 24–42% zones as flat steps, France uses a single
share without the 10% professional allowance, and the US folds the standard
deduction in as a 0% slice.
income tax on $75,000 in US → $8,114.00
income after tax on $75,000 in US → $66,886.00
tax rate on $75,000 in US → 10.8186666667%
income tax on £50,270 in UK → £7,540.00
Each table’s currency is local: input in another currency is converted through
Rates to the local currency, the tax is computed, and the result is returned in
the original code; a missing pair is Rates unavailable. An unknown country is
the exact error no tax table for <country>; a negative or non-finite income is
an error; zero stays zero. These are estimates from published 2026
schedules, not tax advice.
CPI inflation (BLS CPI-U)
The inflation model uses the official BLS CPI-U All Items annual averages (1982-84 = 100), covering every whole year from 1913 through the last complete year, plus an explicitly provisional 2026 year-to-date estimate built from official monthly observations (the 2026 annual average is never invented). “Today” means the data snapshot, not the wall clock, so answers stay stable for the current data release.
what is $1,000 from 1990 → $2,537.53 (past → snapshot)
what was $1,000 worth in 1990 → $394.08 (snapshot → past)
what is $1,000 in 1990 worth in 2020 → $1,980.19 (exact ratio)
$1,000 in 1990 dollars → $2,537.53
what will $1,000 be worth in 2035 at 3% → $766.42 (purchasing power)
The historical formula is amount × CPI(target)/CPI(source). A year outside the
table is no CPI data for <year>; a future target without an explicit rate is a
strict error; an explicit forecast requires the target to be after the snapshot
year and the domain to stay real (1 + R > 0).
Offline behavior and privacy
- Tax, income-tax and inflation answers are computed entirely offline from data bundled with the app — no network request is made.
- Currency conversion uses the same rate table as every other money line; a
missing pair stays
Rates unavailableinstead of a guessed number. - Sales-tax configuration is app-global and never enters
.nlx. - No answer here is financial or tax advice; the estimates state what they do not model.
Related
- Money & rates — markers, ISO codes, named money and the shared strict money grammar.
- Currency reference — the 166 supported codes and named aliases.
- Settings & appearance — the Tax fields on the General page.
- Privacy & network — what stays offline.