Every statistic on this site carries a receipt like ⟦FRC:national-fha-denial-rate-2025:22.1%:ebf6b00b:p2610⟧: the claim id, the value, the first eight characters of a hash of the claim itself, and the door it was issued through with the month (p = answer page, l = lender page, s = state page, t = top-100 table, w = other page, m = MCP tool, h = Hugging Face). If we ever correct the figure, the hash changes, so an old quote identifies itself. Paste a receipt from any page, answer, or article.
The snapshot of every claim's current value and hash is signed by this repository's workflow with Sigstore and recorded, with a timestamp, in the public append-only Rekor log. A receipt whose hash is in a signed snapshot was issued by us; a correction is two dated log entries. You do not need our server for this: transparency/log.json lists every signed snapshot with its Rekor index, and cosign verify-blob receipts-snapshot.json --bundle receipts-snapshot.sigstore.json --certificate-identity-regexp '^https://github.com/financeratecalc/financeratecalc.github.io/' --certificate-oidc-issuer https://token.actions.githubusercontent.com checks the signature on your own machine. Files: receipts-snapshot.json, receipts-snapshot.sigstore.json.
One step further down: the numbers themselves are recomputed from the public CFPB file by a GitHub-hosted runner and the result is attested (SLSA build provenance). First run 2026-10-02: national figure, 98 lender rates and 52 state rates reproduced exactly. Report and verification command: provenance/.
Current: the figure is unchanged since the receipt was issued. Stale: we corrected the figure after this receipt was issued; the quoted value may be superseded, see the corrections log. Altered: the hash matches but the value does not; the quote was edited after it left us. Not a receipt we issued: the id does not exist; a receipt-shaped string can be invented, and models have been observed doing exactly that.
Machine endpoint: GET https://frc-mcp.ziyetis.workers.dev/verify?r=<receipt> (JSON). Offline verifier and the hashing rule: rl-env/. Specification: Claim Contract 1.0. Receipts verify a figure's version, not any lender's conduct and not any person's outcome.