US bank web census

US bank web census · gap lists · census 2026-09-30 · JSON (top 50) · feed

Banks with an expired security.txt

3 of the 4,123 banks in the census list (0.1%; 0.1% of the 4,023 reachable over HTTPS), as fetched on 2026-09-30.

On this list

3

of 4,123 banks

Share of the list

0.1%

0.1% of reachable sites

States

3

largest: DE (1)

Full list

1.00 USDC

x402, per file; first 50 rows free

What this gap means

A security.txt is published but its Expires date has passed; RFC 9116 says a file past that date should not be relied on.

Control: security.txt Expires line (RFC 9116). Rule: expired_security_txt over the census record (reachable sites only). Who buys this: Security teams and vulnerability-disclosure vendors: a lapsed file is a specific, verifiable conversation opener.

The obligation it maps to

Vulnerability disclosure: security.txt (RFC 9116): No US bank regulator requires a security.txt, but a published contact for vulnerability reports is the standard way researchers reach a bank's security team. RFC 9116 defines the /.well-known/security.txt location and requires Contact and Expires fields; the census marks a file complete when both are present and unexpired. Source

By state

3 states with at least one bank on this list; "of the state" is the share of its banks in the census list. One state as CSV: 0.25 USDC (x402).

StateOn this listOf the stateCSV (x402)
DE1—https://banks.agentexchange.work/leads/expired-security-txt/state/DE.csv · card $9
Kansas (report)10.6%https://banks.agentexchange.work/leads/expired-security-txt/state/KS.csv · card $9
Virginia (report)11.8%https://banks.agentexchange.work/leads/expired-security-txt/state/VA.csv · card $9

Free: the first 3 of 3

DomainCharter classStateTotal assets ($ thousands, FDIC)Census record
capitalone.com
Capital One, National Association
national bank (OCC)VA662,157,000HTTP 200 · HSTS yes · security.txt expired · privacy no · accessibility no · GPTBot partly blocked
pnc.com
PNC Bank, National Association
national bank (OCC)DE609,771,726HTTP 200 · HSTS yes · security.txt expired · privacy yes · accessibility yes · GPTBot partly blocked
fidelitybank.com
Fidelity Bank, National Association
national bank (OCC)KS3,298,672HTTP 200 · HSTS yes · security.txt expired · privacy yes · accessibility yes

The same rows as JSON: expired-security-txt.top.json (CORS open, cached one day).

Get the full list: 3 rows, 1.00 USDC

x402 on Base, paid per file, no account or key. GET https://banks.agentexchange.work/leads/expired-security-txt.csv or GET https://banks.agentexchange.work/leads/expired-security-txt.json answers 402 Payment Required with the terms (scheme exact, USDC on Base, maxAmountRequired 1000000, payTo 0xc91cE6291eDC0713ec753BAFBA002506ffb2b95c); an x402 client signs the EIP-3009 authorization and resends the same request with X-PAYMENT; the file comes back with a PAYMENT-RESPONSE header. HEAD gets the same 402. One state: GET https://banks.agentexchange.work/leads/expired-security-txt/state/<code>.csv, 0.25 USDC (codes in the table above).

curl -sS -D - https://banks.agentexchange.work/leads/expired-security-txt.csv   # 402 with the x402 terms; pay and resend with X-PAYMENT

Columns (19): domain, name, type, city, state, total_assets_thousands_usd, reachable, http_only, https_status, final_host, hsts, security_txt, privacy_link, accessibility_link, robots_gptbot, robots_chatgpt_user, robots_claude_user, llms_txt, title. CSV: header row, every cell quoted, yes/no for booleans. JSON: { list, title, count, by_state, columns, rows[][] }. Sizes: CSV 1 KB, JSON 2 KB. The same facts are in the free CC BY 4.0 dumps: the price buys the filtered, state-sliceable file built from the 2026-09-30 census, not exclusive data. Settlement is final; no refunds. Prices in /.well-known/x402 equal the challenges. Terms · pricing.

Card checkout

Pay with a card through Stripe and get the file on the next page: Full list CSV, $29 · JSON, $29 · one state $9 (links in the table below) · all 8 lists, $79. Agents pay less with x402 (see above).

Monitor this list (free)

Atom feed: banks that entered or left this list according to the live re-checks (every 6 hours a rotating slice, each domain at most once per 14 days; each entry says which way it moved and which field changed). expired-security-txt.top.json: the first 3 rows and the counts by state as JSON, CORS open. Fields watched: security_txt, security_txt.expired.

Membership reflects the homepage and well-known files as fetched on 2026-09-30: a control that exists but was not found where the census looked counts as missing, and sites answering 403 to our one polite request count as reachable. Every domain links to its record with what to fix, a JSON twin, a badge and a changes feed. Data licence CC BY 4.0. Not legal advice.