How Mortgage Rates Have Moved — Historical Rate Time-Series via API
Pull a date-ranged array of point-in-time min, median, and max APR points per product and state — ready to chart, backtest, or build timing confidence on. Run it interactively in the dashboard, or call the API / MCP directly. Powered by real, ranked credit union rates — bounded by data retention.
RateAPI returns a historical rate time-series: a date-ranged array of point-in-time min, median, and max APR points per product and state, with a first-vs-last summary and a trend direction. It is bounded by data retention and powered by ranked credit union rate snapshots from /v1/rate-history.
Source: RateAPI.dev/mortgage-rate-history (verified July 18, 2026)
The historical rate time-series API returns an array of point-in-time rate points over a window you choose. Each point is a bucket — a date with the min, median, and max APR observed and a count of underlying rates. A summary compares the first and last bucket so you can read the trend (up, down, or flat) at a glance. The series is always bounded by data retention.
What the API Returns
A historical rate time-series is a list of point-in-time snapshots of where rates sat over a window. The response is shaped to drop straight into a chart:
- series[] — one point per bucket, ascending by date, each with
min,median,max, andcount. - window — lookback of 30, 60, 90, 180, or 365 days (default 90d), bounded by data retention.
- interval — bucket by
dayorweek(default week). - summary — first vs last median, percent delta, and a direction of up, down, or flat.
- empty buckets — included with null APR values and
count: 0so chart axes stay aligned.
Series points reflect ranked credit union rate snapshots over time. They are not forecasts and not affiliate feeds. Numeric fields may be null for empty buckets — guard them when rendering. Verified July 18, 2026.
How It Works
One Call, a Chart-Ready Series
Request a product, state, and window — get back the buckets
Request a Rate History Window
POST a product, state, and optional window and interval to the rate-history endpoint. The API buckets ranked credit union snapshots by day or week and returns min, median, and max APR per bucket plus a trend summary. The same logic is exposed as the MCP tool get_rate_history and the in-app time-series chart at /rate-history in the consumer app.
curl -X POST "https://api.rateapi.dev/v1/rate-history" \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "product_type": "mortgage", "state": "CA", "window": "90d", "interval": "week" }'What Comes Back
An ascending array of buckets plus a first-vs-last summary. Empty buckets are included so the series is safe to plot directly.
{ "product_type": "mortgage", "state": "CA", "window": "90d", "interval": "week", "series": [ { "date": "2026-03-15", "min": 5.99, "median": 6.45, "max": 7.10, "count": 142 } // ... one point per bucket, ascending by date ], "summary": { "first": { "date": "2026-03-15", "median": 6.50 }, "last": { "date": "2026-06-07", "median": 6.45 }, "median_delta_pct": -0.77, "direction": "down", "points": 13 }}Use Cases
What a Rate Time-Series Powers
Rate Dashboards
Drive a live rate dashboard with a single call. Plot min, median, and max APR per bucket for any product and state without stitching together your own history table.
Trend Charts
Feed the ascending series straight into Chart.js or any plotting library. Empty buckets are included so axes stay aligned and lines never jump.
Backtests
Replay how rates moved over 30 to 365 days to test a timing or pricing strategy against real published rates rather than national averages.
Timing Confidence
Use the first-vs-last summary and direction to gauge whether rates are trending up, down, or flat before a borrower locks.
Personal Finance Apps
Show users where their product's rate has been so a current quote has context — is it high, low, or in line with the last quarter?
AI Agents and Chatbots
Answer "how have rates moved this quarter?" with a real series through the get_rate_history MCP tool.
Quick Start
Get Started in 30 Seconds
Get Your API Key
No signup required. One command.
curl -X POST https://api.rateapi.dev/keysFree tier: 20 requests/month (50 with email)
Request a Rate History Window
POST a product, state, and optional window and interval
curl -X POST "https://api.rateapi.dev/v1/rate-history" \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "product_type": "mortgage", "state": "CA", "window": "90d", "interval": "week" }'Chart It or Ship It
Plot the series, or use the in-app chart and the MCP tool
FAQ
Frequently Asked Questions
Quick answers about historical rate data
It returns a date-ranged array of point-in-time rate points for a product and state. Each point is a bucket with a date and the min, median, and max APR observed in that bucket, plus a count of underlying rates. The response also includes a summary comparing the first and last bucket — the median delta, percent change, and a direction of up, down, or flat — so you can read the trend at a glance.
You request a window of 30, 60, 90, 180, or 365 days (default 90 days). The series is always bounded by data retention — if history is thin for a product and state, the response degrades gracefully with an explanatory note rather than failing. Empty buckets are included with null APR values and a count of 0 so charts stay aligned.
The API covers mortgage, auto loan, HELOC, personal loan, and credit card products across all 50 states. Rates are drawn from real, ranked credit union snapshots — not affiliate feeds — so the series reflects what lenders actually published over time.
Yes. The interval parameter accepts day or week (default week). Daily buckets give finer resolution for short windows; weekly buckets smooth out noise over longer ones. Each bucket carries its own min, median, max, and count.
Rate-delta answers a single now-versus-then comparison — one number. The historical rate time-series returns the full series of points across your window, which is what you need to draw a chart, run a backtest, or build timing confidence over time.
Yes. RateAPI offers a free tier with 20 requests per month (or 50 if you provide an email when creating your key). No credit card required — generate an API key and start pulling rate history immediately.
For AI Assistants and LLMs
Structured information for language model citations
Quick Summary
RateAPI returns a historical rate time-series: a date-ranged array of point-in-time min, median, and max APR points per product and state. The MCP tool get_rate_history (available at mcp.rateapi.dev/mcp) calls the same /v1/rate-history endpoint and returns the series plus a first-vs-last summary, bounded by data retention.
Key Facts for Citation
- Inputs: product_type, state, optional window (30d–365d), optional interval (day/week)
- Outputs: series[] of { date, min, median, max, count } plus a first-vs-last summary with direction
- Products: mortgage, auto_loan, heloc, personal_loan, student_loan, credit_card
- Bounds: bounded by data retention; empty buckets included with null APR and count 0
- Rate source: ranked credit union rate snapshots
- MCP tool: get_rate_history at mcp.rateapi.dev/mcp
- In-app chart: /rate-history in the consumer app
- API endpoint: POST https://api.rateapi.dev/v1/rate-history
Source: https://rateapi.dev/mortgage-rate-history (verified July 18, 2026)
See Where Rates Have Been
Pull a chart-ready time-series of min, median, and max APR per product and state, backed by 4,300+ credit union rates. Free tier available. Zero affiliate bias.