Australian Bank Rates - Mortgages, Term Deposits, Savings
Pricing
from $1.00 / 1,000 rate rows
Australian Bank Rates - Mortgages, Term Deposits, Savings
Every interest rate from 248 Australian banks and lenders, ~28,500 rates: term deposits by term and amount, home loans by LVR, purpose and repayment, savings, personal loans, cards. Best rate per bank, ranked, and a daily rate-change feed. Consumer Data Right data, refreshed nightly.
Pricing
from $1.00 / 1,000 rate rows
Rating
0.0
(0)
Developer
Piotr Zimniak
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
13 hours ago
Last modified
Categories
Share
Independent tool, not affiliated with any bank, the ACCC or the Treasury. It reads only the public product data that Australian banks and lenders publish under the Consumer Data Right.
Every interest rate published by 248 Australian banks and non-bank lenders: about 28,500 rates on 4,800 products, from term deposits and savings accounts to home loans, personal and business loans and credit cards. One clean table, refreshed every night, with a best-rate ranking per bank and a daily rate-change feed. Ask "what is the best 12-month term deposit today?" or "which lenders moved variable home loan rates this week?" and get the answer in about 3 seconds.
Why this one
- The whole market in one run. The big four, regional and mutual banks, credit unions, neobanks and 130+ non-bank lenders: every brand that publishes Consumer Data Right product data, 248 of them.
- One row per rate, ready to compare. Term in months, LVR band, loan amount or balance band, owner-occupied or investment, principal-and-interest or interest-only, comparison rate and the conditions, in the same fields for every bank.
- Best rates, ranked. Mode
bestreturns the top rate per bank for your filters: deposits highest first, loans lowest comparison rate first. - Rate changes, every day. Who moved, when, and by how many basis points, since we started tracking on 27 September 2026.
Schedule it with
"changedSince": "last-run"and get only what changed. - Fast and reliable. Runs are answered from our nightly snapshot of all 248 brands in about 3 seconds. See Reliability.
- The only Apify Actor with Australian Consumer Data Right bank rates (September 2026).
- See it live. Tonight's best rates and the term deposit curve across all lenders: crawlplant.com/au-bank-rates.
What can you use it for?
- Rate comparison sites and mortgage brokers: a daily feed of every home loan, deposit and card rate, one API call.
- Journalists and analysts: which banks passed on the latest RBA decision, how fast and by how much.
- Fintech products: savings "rate chaser" alerts, refinancing prompts, rate benchmarks.
- Treasury and SMEs: the best business term deposit or business loan rates today.
- AI agents: "find me the best 6-month term deposit for $50,000" (see Use with AI agents).
Quick start
- Click Try for free (or Start) with the default input: the best term deposit rate at every bank, ranked. It finishes in about 3 seconds and costs about $0.13 on the Free plan.
- Set Terms (months) to
[12]for the best 12-month term deposit, or switch Product categories to home loans. - Download JSON, CSV or Excel, or save the input as a task to reuse or schedule it.
Copy to your AI assistant
Paste this into ChatGPT, Claude or any agent so it knows how to use the Actor:
crawlplant/au-bank-rates on Apify: every interest rate published by 248 Australian banks and non-bank lenders (Consumer DataRight product data, refreshed nightly). Modes (field "mode"): best (default: top rate per bank, ranked; deposits highest first,loans lowest comparison rate first; topPerBrand, default 1), rates (every matching rate row), changes (rate changes sincechangedSince: a date or "last-run"; empty = last 7 days), products (one row per product with fees and min/max rate), brands(the banks and lenders covered). Filters: categories (TERM_DEPOSITS default, TRANS_AND_SAVINGS_ACCOUNTS, RESIDENTIAL_MORTGAGES,PERS_LOANS, BUSINESS_LOANS, CRED_AND_CHRG_CARDS, OVERDRAFTS, ...; empty = all), brands (a word of the bank's name, e.g. "ing","commbank", or a brandId), industries (banking, non-bank-lending), termMonths (e.g. [12]; day ranges match when the term fallsinside), rateTypes (FIXED, VARIABLE, BONUS, INTRODUCTORY, PURCHASE, ...; best compares headline rates only), loanPurpose(OWNER_OCCUPIED, INVESTMENT), repaymentType (PRINCIPAL_AND_INTEREST, INTEREST_ONLY), lvr (80 or 0.8), amount (AUD).Each rate row: brandName, industry, productName, category, rateType, rate (decimal) and ratePercent, comparisonRate,termMinMonths/termMaxMonths, interestPaidEvery (ISO duration), loanPurpose, repaymentType, lvrMin/lvrMax, amountMin/amountMax,conditions, fees, applicationUri, firstSeenAt, scrapedAt, source, rank. rateHistoryDays attaches recent changes.maxItems default 500. Cost: $1.50 per 1,000 rows (Free plan) down to $1.00; change rows +$3.00 per 1,000; $0.00005 per run.Runs take ~3 s, so the synchronous run-sync-get-dataset-items endpoint works. Tracking since 2026-09-27.
Modes
| Mode | What you get |
|---|---|
best (default) | The best matching rate per bank (topPerBrand), ranked: deposits highest first, loans lowest comparison rate first |
rates | Every matching rate row, for full exports and your own analysis |
changes | Rate changes since a date or since your last run: old rate, new rate, change in basis points |
products | One row per product: description, fees, lowest and highest rate, links |
brands | The banks and lenders covered, with logo and ABN |
Ready-to-use examples
1. Best 12-month term deposit at every bank
{ "mode": "best", "categories": ["TERM_DEPOSITS"], "termMonths": [12] }
2. Best 3, 6 and 12-month term deposits for $50,000, top 3 per bank
{ "mode": "best", "categories": ["TERM_DEPOSITS"], "termMonths": [3, 6, 12], "amount": 50000, "topPerBrand": 3 }
3. Cheapest owner-occupier home loans at 80% LVR (principal and interest, $600k)
{ "mode": "best", "categories": ["RESIDENTIAL_MORTGAGES"], "loanPurpose": "OWNER_OCCUPIED", "repaymentType": "PRINCIPAL_AND_INTEREST", "lvr": 80, "amount": 600000 }
4. Best 2-year fixed investor home loan rates
{ "mode": "best", "categories": ["RESIDENTIAL_MORTGAGES"], "loanPurpose": "INVESTMENT", "rateTypes": ["FIXED"], "termMonths": [24] }
5. Every home loan rate from the big four
{ "mode": "rates", "categories": ["RESIDENTIAL_MORTGAGES"], "brands": ["commbank", "westpac", "anz", "nab"], "maxItems": 5000 }
6. Best savings account base rates
{ "mode": "best", "categories": ["TRANS_AND_SAVINGS_ACCOUNTS"] }
7. Savings bonus rates and their conditions
{ "mode": "rates", "categories": ["TRANS_AND_SAVINGS_ACCOUNTS"], "rateTypes": ["BONUS"], "maxItems": 1000 }
8. Lowest credit card purchase rates
{ "mode": "best", "categories": ["CRED_AND_CHRG_CARDS"], "rateTypes": ["PURCHASE"] }
9. Home loan rate changes since a date
{ "mode": "changes", "categories": ["RESIDENTIAL_MORTGAGES"], "changedSince": "2026-09-27" }
10. Every rate change since my previous run (schedule it daily)
{ "mode": "changes", "categories": [], "changedSince": "last-run" }
11. Non-bank lenders' personal loan rates
{ "mode": "best", "categories": ["PERS_LOANS"], "industries": ["non-bank-lending"], "topPerBrand": 2 }
12. Term deposits with their rate history over 90 days
{ "mode": "best", "categories": ["TERM_DEPOSITS"], "termMonths": [6], "rateHistoryDays": 90 }
13. All products of one bank
{ "mode": "products", "categories": [], "brands": ["macquarie"] }
14. The list of banks and lenders covered
{ "mode": "brands", "maxItems": 1000 }
How to…
Find the best term deposit rates in Australia
Mode best, category TERM_DEPOSITS, and termMonths for the terms you want (example 1). amount keeps only rates whose
balance band covers your deposit. interestPaidEvery says whether interest is paid monthly (P1M), yearly (P1Y) or at maturity (empty).
Compare home loan rates by LVR
Set loanPurpose, repaymentType, lvr and amount (example 3). Ranking uses the comparison rate when the lender
publishes one, else the rate. Special-purpose products (green loans, professional or veteran packages) are published rates too
and can top the list, so check productName and conditions.
Track bank rate changes after an RBA decision
Mode changes with changedSince set to the decision day (example 9): one row per changed rate with oldRate, newRate and
changeBps, per bank and product.
Get daily rate-change alerts
Schedule example 10 (for example every morning at 9 am) and add an email, Slack or webhook integration on "run succeeded". Each run returns only what changed since the previous run with the same input.
Find the best savings account rates
Mode best on TRANS_AND_SAVINGS_ACCOUNTS ranks base rates (example 6). Bonus rates, which come on top of the base rate when
you meet conditions such as a monthly deposit, are listed with those conditions by example 7.
Export every mortgage rate in Australia
Mode rates, category RESIDENTIAL_MORTGAGES, maxItems 20000: about 15,800 rows, one per rate, in about 20 seconds.
Leave categories empty for the whole market (~28,500 rows).
Input options
| Option | Default | Description |
|---|---|---|
mode | best | best, rates, changes, products, brands |
categories | ["TERM_DEPOSITS"] | Consumer Data Right product categories; empty = all |
brands | [] | Bank names (a word of the name: "ing", "commbank") or brand ids from mode brands |
industries | [] | banking (banks) and/or non-bank-lending |
termMonths | [] | Terms in months; rows without a term are left out when set |
rateTypes | [] | FIXED, VARIABLE, BONUS, INTRODUCTORY, PURCHASE, DISCOUNT, … Empty: best compares headline rates only |
loanPurpose | - | OWNER_OCCUPIED or INVESTMENT |
repaymentType | - | PRINCIPAL_AND_INTEREST or INTEREST_ONLY |
lvr | - | Loan-to-value ratio: 80 or 0.8 |
amount | - | Deposit or loan amount in AUD |
sortBy | auto | auto, rate_desc, rate_asc, comparison_asc, brand |
topPerBrand | 1 | Rates kept per bank in best mode; 0 = all, ranked |
maxItems | 500 | Maximum rows |
changedSince | - | For changes: a date or last-run; empty = last 7 days |
rateHistoryDays | 0 | Attach each rate's changes from the last N days |
maxAgeHours | 36 | Data older than this still comes back, with a note in the run summary |
includeRaw | false | Add the product's original Consumer Data Right JSON |
Headline rates in best mode are fixed, variable, market-linked and card purchase rates. Bonus rates are a margin on top of a
base rate and discounts or penalties adjust one, so ask for them with rateTypes to see them on their own.
Example output
{"type": "rate","brandId": "bf7df75a-52bf-eb11-a823-000d3a884a20","brandName": "Unity Bank","industry": "banking","productId": "I30_ALL_TERMS","productName": "Term Deposit","category": "TERM_DEPOSITS","kind": "deposit","rateType": "FIXED","rate": 0.0555,"ratePercent": 5.55,"comparisonRate": null,"termMinMonths": 24,"termMaxMonths": 24,"interestPaidEvery": "P12M","amountMin": 1000,"amountMax": 9999999,"conditions": "These rates only apply to retail deposits…","isTailored": false,"firstSeenAt": "2026-09-27T11:32:51.000Z","scrapedAt": "2026-09-27T11:33:02.000Z","source": "cache","rank": 1}
Output fields
| Field | Description |
|---|---|
type | rate, change, product or brand |
brandId, brandName, industry | The bank or lender and whether it is a bank or a non-bank lender |
productId, productName, category | The product and its category |
kind | deposit, lending, or none (product priced individually) |
rateType | e.g. FIXED, VARIABLE, BONUS, INTRODUCTORY, PURCHASE |
rate, ratePercent | The rate as a decimal (0.0555) and in percent (5.55) |
comparisonRate, comparisonRatePercent | Comparison rate, when published |
termMinMonths, termMaxMonths | Term in months; equal for a fixed term, a range for day-range terms |
interestPaidEvery | How often interest is paid (ISO duration, e.g. P1M); empty = at maturity |
loanPurpose, repaymentType | Owner-occupied / investment; principal and interest / interest only |
lvrMin, lvrMax | LVR band (0.8 = 80%) |
amountMin, amountMax | Balance or loan-amount band in AUD |
conditions | Conditions and notes, as published (e.g. bonus-rate criteria) |
rateBasis | What a loan rate stands for: published, minimum (a "from" rate, priced by credit profile), maximum, or credit_band. Best mode ranks only published rates unless includeRiskBasedRates is on |
hasPublishedRates, isTailored | Products priced individually have no public rate |
fees | Up to 5 fees: type, name, amount or rate |
applicationUri, overviewUri | Links to the product |
firstSeenAt | When we first saw this rate |
detailFetchedAt, scrapedAt | When the product was last downloaded, and when the bank's list was last checked (nightly) |
source | cache (our nightly snapshot) or live (read from the bank during the run) |
rank | Position in best mode |
rateHistory | With rateHistoryDays: [{ rate, observedAt }] |
event, oldRate, newRate, changeBps, observedAt | Change rows (changes mode) |
Run it through the API
JavaScript:
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_TOKEN' });const run = await client.actor('crawlplant/au-bank-rates').call({ mode: 'best', categories: ['TERM_DEPOSITS'], termMonths: [12] });const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items.map((r) => `${r.rank}. ${r.brandName}: ${r.ratePercent}%`));
Python:
from apify_client import ApifyClientclient = ApifyClient("YOUR_TOKEN")run = client.actor("crawlplant/au-bank-rates").call(run_input={"mode": "best", "categories": ["RESIDENTIAL_MORTGAGES"], "lvr": 80})for r in client.dataset(run["defaultDatasetId"]).iterate_items():print(r["brandName"], r["ratePercent"], r["comparisonRatePercent"])
Use with AI agents
The Actor works as a tool in the Apify MCP server: Claude, ChatGPT, Cursor, VS Code, LangChain and others. Answers come back in seconds and every field is described. Server URL with only this tool:
https://mcp.apify.com?tools=crawlplant/au-bank-rates
Try "what is the best 12-month term deposit in Australia today?", "which lenders changed home loan rates this week?" or "compare owner-occupier variable rates at 80% LVR".
Pricing
Pay per result: platform usage is included.
| Event | Free plan | Starter | Scale | Business and up |
|---|---|---|---|---|
| Rate, product or bank row (per 1,000) | $1.50 | $1.25 | $1.10 | $1.00 |
Rate change row (per 1,000, changes mode, on top of the row price) | $3.00 | $3.00 | $3.00 | $3.00 |
| Actor start (per run) | $0.00005 | $0.00005 | $0.00005 | $0.00005 |
| Example on the Free plan | Rows | Cost |
|---|---|---|
| Default run: best term deposit per bank | ~85 | ~$0.13 |
| Best 12-month term deposit, top 3 per bank | ~200 | ~$0.30 |
| Best owner-occupier home loan per bank at 80% LVR | ~130 | ~$0.19 |
| Every home loan rate | ~15,800 | ~$24 |
| The whole market | ~28,500 | ~$43 |
Daily watch with changedSince: "last-run" | only the changes | often $0.00 |
Set a maximum cost per run in the run options to stop a large run at your budget.
Reliability
- Every run is answered from our nightly snapshot of all 248 brands, so it doesn't depend on 248 bank APIs answering at that moment: results in about 3 seconds.
- If the snapshot can't be reached, runs with
brandsare answered live from those banks' own Consumer Data Right endpoints. - Automated checks test the Actor, the data and its freshness every 3 hours, around the clock.
Data freshness
We read every bank's product list every night (Australian time) and re-download a product when it changed, and at least weekly.
scrapedAt is when the bank's list was last checked. Rate history is kept since 27 September 2026.
Troubleshooting
- Fewer rows than expected:
termMonths,lvrandamountkeep only rates whose band covers your value, andbestreturns one row per bank unless you raisetopPerBrand. - A bank isn't in the results: run mode
brandsto see the brands covered, then use one of its names inbrands. - A rate looks unusual: check
rateTypeandconditions. Bonus and introductory rates are separate rows, and some products are priced individually (isTailored: true).
FAQ
What is the best term deposit rate in Australia today?
Run example 1: every bank's best term deposit for your term, ranked, from last night's data.
How much does it cost?
$1.50 per 1,000 rows on the Free plan, down to $1.00 on higher plans, plus $0.00005 per run. The default run costs about $0.13 and every home loan rate about $24. See Pricing.
Where does the data come from?
From the public product data every Australian bank and non-bank lender must publish under the Consumer Data Right. No logins, no personal data.
How often are rates updated?
Every night. Banks usually change rates on business days, so the next morning's run has them.
How far back does the rate history go?
To 27 September 2026, when tracking started; every change since is kept.
Is this financial advice?
No. It is published product data, normalised. Always check the provider's terms before deciding.
Privacy
Only public product data is collected. Each run sends the developer anonymous feature-usage statistics (the mode and which options were used, never their values); your Apify account id is replaced by a one-way hash on arrival.