FDIC Bank Data Scraper
Pricing
Pay per event
FDIC Bank Data Scraper
Query the FDIC BankFind Suite API by state, active status, asset size, or name and get one flat row per FDIC-insured institution — name, city, state, active status, and total assets — plus optional recent financials, ready for JSON, CSV, or Excel export.
Pricing
Pay per event
Rating
0.0
(0)
Developer
DevilScrapes
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
FDIC Bank Data Scraper
$0.20 per run + $0.002 per row — about $2.20 per 1,000 results. Pay only for results that land, no credit card required to try.
The FDIC's own BankFind Suite API is public and keyless, but it answers in a nested JSON envelope with undocumented paging and no full-text search — every buyer ends up writing the same offset-loop, field-mapping, and client-side filtering code from scratch. We already wrote it. Point this Actor at a state, an asset-size floor, or a name fragment, and get back one flat row per FDIC-insured institution, plus optional recent financials, ready for a spreadsheet, a CRM import, or a compliance list.
🏦 What this scrapes
The FDIC's public BankFind Suite API (api.fdic.gov/banks) — the
same data that powers the FDIC's own BankFind web tool. Every matched
institution carries its FDIC certificate number, name, city, state,
active status, and total assets. When requested, a sibling row per
institution adds the most recent quarterly financials on file.
🔥 Features
- Filter by state, active status, minimum assets, or a name fragment — combine any subset in a single run.
- Optional financials rows — enable
include_financialsand get one extra row per institution with its most recent reported total assets, not just the headline institution record. - Flat, typed output — a fixed row schema (
cert,name,city,state,active,total_assets_thousands, and more), not the FDIC's raw{"meta": ..., "data": [{"data": {...}}]}envelope re-wrapped. - 🛡️ We rotate browser fingerprints (curl-cffi impersonation across Chrome and Firefox profiles) on every request.
- 🔁 We retry with exponential backoff on
408/429/5xxand honourRetry-After, up to 5 attempts per page — a busy FDIC endpoint never costs you a failed run. - 🧱 We never crash on a bad record. A financials lookup that fails for one institution is skipped with a logged warning; the institution row itself still lands in the dataset.
- 🧊 A zero-match search still succeeds. A narrow filter combination that matches nothing finishes with a clear status message, not a failed run and a wasted charge.
💡 Use cases
- Fintech vendors building a bank-directory feature that needs the canonical, up-to-date list of FDIC-insured institutions.
- Bank-vendor sales teams prospecting by state and asset-size tier to build a target account list.
- M&A and equity-research analysts screening the FDIC-insured universe by asset size and status.
- Compliance teams needing the authoritative active/inactive institution list for a state or the whole country.
⚙️ How to use it
- Optionally set
state(2-letter USPS code) to narrow the search — or leave it blank for the whole country. - Optionally set
active_only,min_assets_thousands, orname_containsto narrow further. - Set
max_resultsto cap how many rows you're billed for. - Enable
include_financialsif you also want a recent-financials row per institution. - Run the Actor — the dataset fills with one row per matching institution (plus financials rows, if enabled).
- Export as JSON, CSV, or Excel straight from the Console, or pull it via the API.
No API key. No account. Just a set of filters.
📥 Input
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
state | string | no | TX | 2-letter USPS state code. Leave blank for no state filter. |
active_only | boolean | no | true | Only currently-active institutions when enabled. |
min_assets_thousands | integer | no | — | Drop institutions below this total-assets floor, in $ thousands. |
name_contains | string | no | — | Case-insensitive substring match against the institution name. |
max_results | integer | no | 100 | Hard cap on rows returned (1–5000). |
include_financials | boolean | no | false | Also emit a recent-financials row per matched institution. |
Example input:
{"state": "TX","active_only": true,"max_results": 25,"include_financials": false}
📤 Output
One row per matched institution (row_type: "institution"), plus one
optional row per institution when include_financials is enabled
(row_type: "financials"):
{"row_type": "institution","cert": 10327,"name": "Citizens State Bank of Luling","city": "Luling","state": "TX","active": true,"total_assets_thousands": 73820,"report_date": null,"financials_total_assets_thousands": null,"scraped_at": "2026-09-04T12:00:00.000Z"}
{"row_type": "financials","cert": 3510,"name": null,"city": null,"state": null,"active": null,"total_assets_thousands": null,"report_date": "19840630","financials_total_assets_thousands": 108020000,"scraped_at": "2026-09-04T12:00:00.000Z"}
Fields that don't apply to a given row_type come back as null — never
a missing key, never a crashed row.
💰 Pricing
This Actor bills Pay-Per-Event, so the invoice matches what you actually received:
| Event | Price |
|---|---|
| Actor start | $0.20 per run |
| Result emitted | $0.002 per row written to the dataset (institution or financials) |
That works out to roughly $2.20 per 1,000 results. A run that finds nothing costs you the start fee and nothing else — no data, no per-row charge.
🚧 Limitations
- Name search is a client-side substring match, not full-text search —
the FDIC API's own
filtersgrammar is field:value equality, not a search engine. - Asset-size filtering (
min_assets_thousands) is applied client-side after the API call, not as a server-side range query. - Financials are limited to the single most-recent report per institution — historical time-series across multiple report dates isn't exposed in v1.
- Branch-level location data isn't included — this Actor covers institutions and their financials only.
❓ FAQ
Do I need an FDIC API key? No — the BankFind Suite API is public and keyless. You don't need an account either.
What happens if my search matches nothing? The run finishes successfully with zero rows and a status message describing exactly what was searched — you're never charged a per-row fee for zero rows, and the run never fails just because a narrow filter combination matched nothing.
Can I get financials for every historical quarter? Not in v1 — each institution's financials row reflects only the most recent report date on file. A historical time-series mode is a possible future addition.
Why did my run fail instead of just returning nothing? A run fails loud only when the FDIC API itself is unreachable or returns something we can't parse after retries — that's a real error, not an empty result, and we never disguise the difference.
Can I search the whole country instead of one state? Yes — leave
state blank to remove the state filter entirely.
🙌 Your feedback
Found an issue or have a feature request for the FDIC Bank Data Scraper? Reach out via https://apify.com/DevilScrapes — we read every message and ship fixes fast.