iizy/calcfi-open-data
calcfi-open-data Free, daily-refreshed financial and macro datasets — every series cited to a primary source, every CSV under CC BY 4.0. Live source + JSON API: https://calcfi.app/developers Per-series HTML pages with charts: https://calcfi.app/data OpenAPI 3.1 spec: https://calcfi.app/api/insights/openapi.json This repo mirrors the read-only data exposed by CalcFi so it can be consumed as a Frictionless Data Package, mirrored to dataset registries, and version-controlled… See the full description on the dataset page: https://huggingface.co/datasets/iizy/calcfi-open-data.
calcfi-open-data
   
Free, daily-refreshed financial and macro datasets — every series cited to a primary source, every CSV under CC BY 4.0.
Live source + JSON API: https://calcfi.app/developers Per-series HTML pages with charts: https://calcfi.app/data OpenAPI 3.1 spec: https://calcfi.app/api/insights/openapi.json
This repo mirrors the read-only data exposed by CalcFi so it can be consumed as a Frictionless Data Package, mirrored to dataset registries, and version-controlled with full git history.
What's in here
34 series across 11 categories, each in its own subdir under `datasets/`:
Every subdir contains:
data.csv— full history (date, value, unit), provenance headers preserveddatapackage.json— Frictionless Data Package descriptor, DataHub-compatibleREADME.md— series-specific source, license, citation, and CalcFi live URL
Quick start
# Full mortgage rate history
curl https://raw.githubusercontent.com/jerehere/calcfi-open-data/main/datasets/30-year-fixed/data.csv
# CPI history
curl https://raw.githubusercontent.com/jerehere/calcfi-open-data/main/datasets/cpi/data.csv
# Latest single value (live API, daily-refreshed)
curl https://calcfi.app/api/rates/30-year-fixedimport pandas as pd
url = "https://raw.githubusercontent.com/jerehere/calcfi-open-data/main/datasets/30-year-fixed/data.csv"
df = pd.read_csv(url, comment="#", parse_dates=["date"])
print(df.tail())library(readr)
df <- read_csv("https://raw.githubusercontent.com/jerehere/calcfi-open-data/main/datasets/30-year-fixed/data.csv",
comment = "#")Primary sources
All values pass through verbatim from these official sources. No transformations or imputations are applied.
- **FRED** — Federal Reserve Economic Data (St. Louis Fed)
- **Freddie Mac PMMS** — Primary Mortgage Market Survey
- **BLS** — Bureau of Labor Statistics (CPI, employment, wages)
- **BEA** — Bureau of Economic Analysis (PCE)
- **US Treasury** — Treasury yields
- **FDIC** — National Rates and Rate Caps
- **EIA** — Energy Information Administration (oil, gas)
- **Federal Reserve H.10** — Foreign exchange rates
- **CoinGecko** — Cryptocurrency spot prices
- **World Bank Open Data** — GDP, world inflation, world unemployment
- **IMF Commodity Data** — Copper, corn (via FRED)
Refresh cadence
A GitHub Actions workflow (`.github/workflows/refresh.yml`) runs daily at 06:00 UTC, pulls the latest history from CalcFi's read-only API, and commits any changes. Most series update at their natural cadence:
- Daily: Treasury yields, FX, oil, crypto, fed funds
- Weekly: 30Y / 15Y mortgage, gas price
- Monthly: CPI, PCE, unemployment, hourly earnings, commodities
- Quarterly: credit card APR, personal loan
- Annual: World Bank series
License
This repository's structure, scripts, and README are released under CC0 1.0. The data itself in datasets/*/data.csv is licensed CC BY 4.0 — attribution requested.
How to attribute:
Data via CalcFi, sourced from [primary source]. CC BY 4.0.
Primary source terms also apply where data is mirrored from FRED, BLS, World Bank, etc. — consult the per-dataset README.md for the canonical source link.
Why this exists
Most personal-finance and macro data APIs are paid, rate-limited behind a credit card, or wrap a single primary source you could hit yourself. CalcFi is a free personal-finance calculator platform that consumes these primary sources for its tools; this repo exposes the same data as a clean, version-controlled, Frictionless-compliant dataset bundle so it can be mirrored to DataHub, Hugging Face, Kaggle, and Zenodo.
Visualizations built on this dataset
Interactive Hugging Face Spaces (Gradio, 10 total):
- calcfi-mortgage-rate-explorer — 30Y, 15Y mortgage + 10Y Treasury
- calcfi-inflation-wage-tracker — CPI + PCE + hourly earnings
- calcfi-yield-curve-spread — Fed Funds + 2Y + 10Y, inversion shading
- calcfi-fed-funds-cycle — Fed Funds + Prime + credit-card APR
- calcfi-oil-gas-tracker — WTI + Brent + US gasoline
- calcfi-fx-history — USD/EUR + USD/GBP + USD/JPY
- calcfi-commodity-inflation — Copper + corn + CPI
- calcfi-gdp-per-capita — US + Eurozone GDP per capita
- calcfi-labor-market — Unemployment + LFP
- calcfi-consumer-credit — Credit card APR + personal loan rate
Long-form Observable notebooks:
- Mortgage Spread Over Treasury (50 years)
- Yield Curve Recession Indicator (2s/10s)
- Inflation vs Fed Target (2% History)
CodePen calculator demos (vanilla JS, MIT) — view all 6 in collection:
- Compound Interest Calculator
- Mortgage Amortization Chart
- Inflation-Adjusted Returns Calculator
- 30Y Mortgage Rate History Chart (FRED Data) — loads HF dataset live
- Retirement Corpus Projection
- CPI vs Wages Tracker — loads HF dataset live
Live SQL endpoint (Datasette): <https://calcfi-open-data.vercel.app/> — full SQL query interface + JSON/CSV API over the same 117,956 observations
Cloudflare Pages mini-trackers (live FRED/BLS data, MIT):
- Mortgage Rate Today — latest 30Y + 15Y Freddie Mac PMMS + 50yr chart
- CPI Tracker — live YoY inflation vs Fed 2% target
- Yield Curve Today — 2s/10s spread + inversion warning
Python package: pip install calcfidata — <https://pypi.org/project/calcfidata/> — pandas-based client for all 34 series.
Static documentation site: calcfi-open-data-4a2bc1.gitlab.io — full catalog, methodology, citation guide.
Author profiles (Person entity graph):
- ORCID 0009-0000-0916-8684
- Academia.edu — Jere K Salmisto
- GitLab — jere.salmisto
- CodePen — Jere-S
- Hugging Face — iizy
Permanent DOIs
- Figshare: 10.6084/m9.figshare.32332290
- Zenodo (CERN-backed): 10.5281/zenodo.20302283
- OSF: 10.17605/OSF.IO/PUMKT
- Kaggle: 10.34740/kaggle/dsv/16356447
- Mendeley Data: 10.17632/jsnwhy6vjn.1
Mirror surfaces: Hugging Face (you are here) · GitHub · GitLab.
Mirroring this to other registries
This repo is structured so each subdir under datasets/ is a complete Frictionless Data Package. To publish on DataHub.io, point at this repo and set "Root Dir" to e.g. datasets/30-year-fixed. Repeat per dataset.
For Hugging Face Datasets, Kaggle, Zenodo, or re3data — see `docs/mirroring.md` (TBD; PRs welcome).
Contributing
This is a mirror, not the source of truth. To propose data changes, request a new series, or correct a primary-source citation, open an issue or PR. For live calculator + API issues, see https://calcfi.app/about.
Citation
Salmisto, J. (2026). CalcFi Open Data: 34 Free CC-BY Financial and Macro Time Series Mirrored from Primary Sources [Dataset]. Figshare. https://doi.org/10.6084/m9.figshare.32332290
<!-- calcfi-mesh-section-v2026-05-21 -->
Where else this dataset lives
The same 117,956 observations are available across multiple query surfaces — pick the one that fits your workflow:
Query surfaces
- [Datasette (live SQL)](https://calcfi-open-data.vercel.app/) — browser SQL + JSON API + CSV export with 5 saved queries
- [data.world](https://data.world/jerehere/calcfi-open-data) — SQL via data.world's browser interface, full SQLite + zip bundle download
- [DoltHub](https://www.dolthub.com/repositories/jerehere/calcfi-open-data) — git-for-data, versioned tables, queryable from any MySQL client
- [MotherDuck](https://app.motherduck.com/share/92e4b6ab-46e0-42f4-8ebb-9e7ab22eae00) — cloud DuckDB, attach with
ATTACH 'md:_share/calcfi_open_data_share/...'
Package mirrors
- [PyPI · calcfidata](https://pypi.org/project/calcfidata/) —
pip install calcfidata - [Anaconda.org](https://anaconda.org/jeresalmisto/calcfidata) —
conda install -c jeresalmisto calcfidata - [GitLab Package Registry](https://gitlab.com/jere.salmisto/calcfi-open-data/-/packages/60607126) — enterprise GitLab mirror
Documentation
- [Read the Docs](https://calcfidata.readthedocs.io/) — full reference: install, quick start, series catalog, API, methodology, citation
- [GitLab Pages](https://calcfi-open-data-4a2bc1.gitlab.io/) — documentation hub + methodology working paper
Permanent DOIs (citable)
Source mirrors
- [Hugging Face](https://huggingface.co/datasets/iizy/calcfi-open-data) (you are here)
- [GitHub](https://github.com/jerehere/calcfi-open-data)
- [GitLab](https://gitlab.com/jere.salmisto/calcfi-open-data) (canonical)
Visualizations built on this data
- 10 Hugging Face Spaces (Gradio): iizy on HF
- 3 Observable notebooks: @iizy
- 6 CodePen demos: collection
- 3 Cloudflare Pages micro-sites: mortgage-rate-today · cpi-tracker · yield-curve-today
Live tools built on this data
- [calcfi.app](https://calcfi.app) — 300+ free personal-finance calculators, every tool cited to a primary source
Maintained by Jere Salmisto — founder of calcfi.app.
Distribution mesh — also available on
Static landing pages (8 mirrors):
- GitLab Pages (canonical)
- GitHub Pages
- Cloudflare Pages
- Codeberg Pages (EU)
- Surge.sh
- Netlify
- AWS S3
- Datasette (live SQL)
Permanent DOIs (5):
- Figshare 10.6084/m9.figshare.32332290
- Zenodo 10.5281/zenodo.20302283 (CERN)
- OSF 10.17605/OSF.IO/PUMKT
- Kaggle 10.34740/kaggle/dsv/16356447
- Mendeley Data 10.17632/jsnwhy6vjn.1
Packages: PyPI `calcfidata` · npm `calcfidata` · Anaconda · Go pkg · Julia · dbt · Read the Docs
Data catalogs / warehouses: BigQuery Public · data.world · DoltHub · MotherDuck
Repos: GitLab · GitHub · Codeberg
Companion website: calcfi.app — free personal-finance calculators built on this dataset.
Author: Jere Salmisto · ORCID 0009-0000-0916-8684
License: CC BY 4.0 (data) · MIT (code)
