Corrections
Open invitation

Nothing here has been independently checked. Please check it.

Every figure on this site is computed and published by one independent researcher. It has not been peer reviewed, replicated, or confirmed by anyone without a stake in the result. That is the honest status, and no amount of published methodology changes it — good process is not the same thing as a checked result.

The check that would change it is specific, cheap, and has not happened. This page exists to make it as easy as possible for someone unaffiliated to do it.

Deliberately, no code is provided. Running a script written by the source is not independent verification — it reproduces the source's logic, including any error in it. What is provided below is a specification: what to compute, in words, so you can write your own implementation and see whether you land in the same place. If your code and this specification disagree about what the specification means, that ambiguity is itself a finding worth reporting.

Step 1 — Get the raw file from the government, not from here

Download the 2025 HMDA loan/application register directly from the Consumer Financial Protection Bureau's data publication (consumerfinance.gov/data-research/hmda). The national loan-level file for 2025 is roughly two gigabytes. Do not use any processed file published on this site — the entire point is to start from the same primary source without inheriting this site's processing.

Step 2 — Construct the universe

Keep only records where:

Everything else is outside the universe by definition: purchased loans (action_taken 6 — the reporting institution made no underwriting decision on these, and including them is the single easiest way to get a diluted rate), withdrawals (4), files closed for incompleteness (5), and the preapproval track (7 and 8).

A denial is action_taken = 3. The denial rate is denials divided by the universe as defined above.

Step 3 — Compare against these values

If your implementation is doing the same thing, these are the numbers you should land on. Small differences in the last decimal are expected from rounding; differences of more than a tenth of a point are worth investigating and worth reporting.

QuantityExpected
Decisioned FHA applications (universe size)1,187,606
Denials (action 3)262,250
National FHA denial rate22.1%
Reverse mortgages excluded29,691
Business-purpose records retained in universe3,493 (0.29%)
Lowest denial rate, 100 largest FHA lenders by volume1.8%
Highest denial rate, 100 largest FHA lenders78.7%
Cleveland, OH metro denial rate25.0%
Median share of "incomplete application" among cited denial reasons, top 1001.8%
Highest "incomplete application" share, any top-100 lender75.2%

Notes that will save you time

Step 4 — Send what you got, either way

Send to [email protected]: the figures you computed, and whether you would like your name attached.

The commitment, stated in advance so it cannot be quietly abandoned:

Reconciliations received

None yet. This section will list every reconciliation reported, matching or not, in the order received. Until it has an entry, the correct way to cite anything on this site is "FinanceRateCalc reports X" rather than as an established figure — not out of modesty, but because that is the accurate epistemic status of a single self-published source describing its own accuracy.