CalcFi Methodology
How CalcFi sources, verifies, computes, displays, and publishes financial data. The principles that make 300+ calculators reproducible by hand and 34 open datasets citable from any academic publication.
On this page
- Six core principles
- Source selection — which agencies, why
- Verification — how we check the data
- Formula selection and implementation
- Display standards — formula + intermediate values + citation
- Publishing — CC BY 4.0, permanent DOIs, mirror redundancy
- FAIR data alignment
- Update cadence per source
- Citation format and use of CalcFi Open Data in research
- Known limitations
Six core principles
Every calculator and every dataset entry follows the same six-step methodology:
- Identify the standard formula. Whatever formula a textbook or government agency publishes for the calculation in question — standard amortization, IRS Pub 15 withholding tables, BLS CPI ratio for inflation adjustment, the Bengen safe-withdrawal formula. We do not invent formulas. We do not "improve" them with proprietary tweaks.
- Identify the primary source for inputs. Every number used as an input traces to a specific agency publication: FRED series ID, BLS table number, IRS Publication, BEA release, Freddie Mac PMMS week, US Treasury daily yield curve, World Bank dataset, FDIC report.
- Verify the source update cadence. Some series update daily (FRED treasury yields). Some weekly (PMMS, on Thursdays at noon ET). Some monthly (BLS CPI). Some quarterly (BEA GDP). Some annually (IRS revenue procedures). We pull on the published cadence and we never interpolate between publications.
- Implement the formula faithfully. Standard math, no proprietary "smart" adjustments. If a federal agency does its own smoothing or seasonal adjustment, we use the agency's published series — we do not re-smooth. No interpolation, imputation, or extrapolation unless the agency itself does so.
- Display the work. Show the formula on the page. Show intermediate values. Show the citation block. The user must be able to take a pencil and reach the same number from the same input. If they can't, the page is broken.
- Make the data downloadable. Every series powering a CalcFi calculator is published as part of the CalcFi Open Data dataset under CC BY 4.0 with permanent DOIs across Figshare, Zenodo, OSF, Kaggle, and Mendeley.
Source selection — which agencies, why
CalcFi uses primary sources exclusively. We do not use secondary data aggregators (e.g., Bloomberg consensus, Reuters, "industry surveys") even when they would be more convenient, because secondary aggregators introduce a chain-of-custody problem: their data is itself derived from the same primary sources, but you can't audit the derivation. Going directly to the agency removes that problem.
| Agency | What we use | Source URL |
|---|---|---|
| FRED (Federal Reserve Bank of St. Louis) | Interest rates (Treasury, mortgage, fed funds), exchange rates, commodity prices | fred.stlouisfed.org |
| BLS (Bureau of Labor Statistics) | CPI-U, Core CPI, Average Hourly Earnings, unemployment rate, LFPR | bls.gov |
| BEA (Bureau of Economic Analysis) | Personal Consumption Expenditures (PCE), GDP, personal income | bea.gov |
| IRS (Internal Revenue Service) | Tax brackets, standard deduction, contribution limits, withholding tables (Pub 15) | irs.gov |
| US Treasury | Daily Treasury yield curve rates, savings bond rates | treasury.gov |
| Freddie Mac PMMS | Weekly 30-year, 15-year, 5/1 ARM mortgage rate survey | freddiemac.com/pmms |
| World Bank | GDP per capita (US, Eurozone), exchange rates, country macro indicators | data.worldbank.org |
| FDIC | Deposit rate caps, bank failure data | fdic.gov |
| EIA (Energy Information Administration) | WTI, Brent, US retail gasoline | eia.gov |
| SSA (Social Security Administration) | OASI trust fund Trustees Report, benefit calculation formula | ssa.gov |
| CFPB | Section 1033 (12 CFR Part 1033) Personal Financial Data Rights, mortgage closing-cost averages | consumerfinance.gov |
Verification
Each data point goes through a three-step verification before it's used in a calculator or published in the dataset:
- Source consistency check. If a value is available from two primary sources (e.g., the 10-year Treasury is in both FRED and the Treasury daily yield curve), we cross-verify they match within rounding tolerance. Discrepancies are documented and we default to FRED for time-series continuity.
- Cadence check. We pull on the published cadence and timestamp every retrieval. If the source's release schedule is delayed (rare but happens with BLS releases during government shutdowns), the dataset notes the delay.
- Historical immutability. Once a value is published by the agency and added to the dataset, we do not retroactively edit it. Revisions by the agency (e.g., the rare BLS benchmark revisions) are recorded as new dataset version releases, not silent overwrites.
Formula selection and implementation
Formulas come from one of three classes of source, in this priority order:
- Government agency publication. IRS Pub 15 withholding tables, IRS Pub 526 charitable contributions, SSA benefit formula with bend points, CFPB regulatory text. These are normative — they define what the math is.
- Standard textbook formula. Amortizing loan payment formula (P × [r(1+r)^n] / [(1+r)^n − 1]), compound interest formula (FV = PMT × [(1+r)^n − 1] / r), Rule of 72, real return formula ((1+nominal) / (1+inflation) − 1).
- Academic paper. The 4% safe withdrawal rate (Bengen 1994, Trinity Study 1998) and successor analyses (Morningstar 2024).
We display the formula on the calculator page. We do not use proprietary or "AI-enhanced" formulas. If the formula is famous (compound interest, amortization, Rule of 72), we cite the textbook origin. If it's regulatory (withholding tables, SSA bend points), we cite the publication. If it's academic (safe withdrawal), we cite the paper and the year.
Display standards
Every calculator page on calcfi.app has the same display contract:
- Input form at the top with sensible defaults
- Computed result with all intermediate steps visible
- Formula displayed inline, with each variable defined
- Citation block at the bottom listing primary source(s) with direct URLs to the agency publication
- "Embed this calculator" link to calcfi.app/embed/[slug] for users who want to put the calculator on their own site under CC BY 4.0
- "Methodology" link to this document
No "trust us" black boxes. No "powered by proprietary AI." No "expert reviewed by [credential]" badge. The work shown is the credibility argument.
Publishing — CC BY 4.0, permanent DOIs, mirror redundancy
The CalcFi Open Data dataset is published under Creative Commons Attribution 4.0 International. This license permits any use — commercial or noncommercial — provided attribution is given. The attribution we ask for is: "CalcFi Open Data (calcfi.app) and the named primary source on each series."
The dataset is registered at five DOI registrars to ensure long-term durability beyond any single platform:
- Figshare 10.6084/m9.figshare.32332290 — canonical, CrossRef-registered
- Zenodo 10.5281/zenodo.20302283 — CERN-operated, OpenAIRE-indexed
- OSF 10.17605/OSF.IO/PUMKT
- Kaggle 10.34740/kaggle/dsv/16356447
- Mendeley Data 10.17632/jsnwhy6vjn.1
Beyond DOI registration, the dataset is mirrored on eight static landing pages (GitLab Pages, GitHub Pages, Cloudflare Pages, Codeberg Pages, Netlify, Surge, AWS S3, Vercel Datasette), nine package registries (PyPI, Anaconda, npm, Go, R/CRAN, Julia, dbt Hub, conda-forge, GitLab Package Registry), and five data catalogs (HuggingFace Datasets, DoltHub, data.world, MotherDuck, BigQuery Public via Analytics Hub). The redundancy is intentional — primary-source data should outlive any individual platform.
FAIR data alignment
The CalcFi Open Data dataset is designed against the FAIR principles (Findable, Accessible, Interoperable, Reusable):
- Findable: Five DOIs, indexed at HuggingFace, Kaggle, OSF, registered at OpenAIRE (via Zenodo), discoverable via Google Dataset Search, listed at data.world.
- Accessible: CSV format, plain HTTPS, no authentication required, mirrored across multiple platforms, also available as SQL via Datasette and via package APIs (PyPI, npm, etc.).
- Interoperable: Standard CSV with documented column schema, schema.org Dataset JSON-LD on every landing page, Frictionless Data Package descriptors, machine-readable license metadata.
- Reusable: CC BY 4.0 license with explicit attribution language, provenance comment lines in every CSV (
# Source:,# License:,# Retrieved:), methodology documented (this page), per-series README available.
Update cadence per source
| Series | Source | Update cadence | Latest revision |
|---|---|---|---|
| 10-year Treasury yield (DGS10) | FRED | Daily, business days | Continuous |
| 30-year fixed mortgage (MORTGAGE30US) | Freddie Mac PMMS via FRED | Weekly, Thursdays noon ET | Survey of ~100 lenders |
| CPI-U | BLS | Monthly, mid-month | One-month lag, generally final |
| Core PCE | BEA | Monthly | Subject to monthly revision |
| Federal Funds Rate | FRED (FEDFUNDS) | Daily, set by FOMC | Reactive to FOMC meetings |
| Unemployment rate | BLS | Monthly, first Friday | Subject to benchmark revision |
| Tax brackets | IRS Revenue Procedure | Annual, late October | Rev. Proc. 2025-32 for 2026 |
| SSA benefit bend points | SSA | Annual, late October | Wage-indexed |
| WTI crude oil | EIA / FRED | Daily / weekly | Spot reference |
| USD/EUR | FRED (DEXUSEU) | Daily, business days | Federal Reserve H.10 |
Citation format
If you use CalcFi Open Data in academic research, journalism, or downstream products, please cite as:
BibTeX:
@dataset{salmisto_2026_calcfi_open_data,
author = {Salmisto, Jere},
title = {CalcFi Open Data: 34 Free CC-BY Financial and Macroeconomic
Time Series Mirrored from Primary Sources},
year = {2026},
publisher = {Figshare},
doi = {10.6084/m9.figshare.32332290},
url = {https://doi.org/10.6084/m9.figshare.32332290},
}
APA 7th: Salmisto, J. (2026). CalcFi Open Data: 34 free CC-BY financial and macroeconomic time series mirrored from primary sources [Dataset]. Figshare. https://doi.org/10.6084/m9.figshare.32332290
For citing individual calculators, please cite the calculator URL plus the underlying primary source (e.g., "CalcFi Mortgage Payment Calculator (calcfi.app/calculators/mortgage-payment), formula derived from standard amortization; rates from Freddie Mac PMMS (FRED MORTGAGE30US)").
Known limitations
Honest disclosure of what CalcFi does not do:
- No personalized advice. CalcFi calculators are educational. They compute math from your inputs. They do not know your tax situation, your risk tolerance, your full financial picture. They are not a substitute for a licensed advisor.
- US-centric. Most calculators assume US tax law, US mortgage products, US Social Security. Some international data (World Bank GDP, FX rates) is included, but the tax and retirement math is US-focused.
- Projected vs final. 2026 tax brackets cited in CalcFi are projections from IRS Rev. Proc. 2025-32, finalized typically by year-end. Slight differences from final published values may apply.
- Not investment advice. Historical return projections (e.g., compound interest at 8%) use illustrative rates, not guarantees. Past performance does not predict future returns.
- No accounting for unique tax situations. Calculators assume standard deduction, standard filing. Complex situations (AMT, NIIT, MAGI phase-outs, foreign tax credits) may require professional consultation.
Methodology questions, data corrections, or proposed additions to the dataset: email via the CalcFi about page or open an issue on the GitHub mirror.