Bank Screener
PublicEvery FDIC-insured bank with key ratios; filter, sort, paginate.
About this dataset
Bank Screener is a Public dataset in the Screeners group of the BankRegReports Data API. The response carries 21 documented fields, sourced from FFIEC + FDIC.
Filter the bank universe by capital, asset quality, profitability, and size. Returns a paginated, sorted result set. All filters are optional; the response shape is stable across filter combinations.
Endpoint
GET /api/v1/screener/ Parameters
| Name | Required | Description |
|---|---|---|
| state | optional | Two-letter state filter. e.g. GA |
| min_assets | optional | Minimum total assets ($000s). |
| sort | optional | Sort field. e.g. roa |
| limit | optional | Max rows to return. e.g. 1000 |
| offset | optional | Pagination offset. e.g. 0 |
| tier | optional | Asset-size tier, exactly one of: '1: >= $250B', '2: $100B-250B', '3: $10B-100B', '4: $1B-10B', '5: $100M-1B', '6: < $100M'. e.g. 4: $1B-10B |
| well_capitalized_only | optional | 1 to keep only well-capitalized banks. e.g. 1 |
| charter | optional | lending (default: commercial banks, savings institutions, de novo banks), all, or one charter type such as 'Trust company'. e.g. all |
| max_assets | optional | number (double) |
| max_efficiency | optional | number (double) |
| max_npl | optional | number (double) |
| max_texas | optional | number (double) |
| min_ag_concentration | optional | number (double) Minimum agricultural production + farmland loans, % of total loans (the FDIC's agricultural-specialist line is 25) |
| min_cd_to_capital | optional | number (double) Minimum construction and land development loans as % of Tier 1 capital plus the allowance (the guidance line is 100) |
| min_cet1 | optional | number (double) |
| min_cre_to_capital | optional | number (double) Minimum CRE loans as % of Tier 1 capital plus the allowance (the 2006 interagency guidance line is 300). Alias: min_cre_concentration |
| min_nim | optional | number (double) |
| min_roa | optional | number (double) |
Response fields
| Field | Type | Description |
|---|---|---|
| rssd_id | integer | RSSD ID (count) |
| fdic_cert | integer, nullable | FDIC Certificate (count) |
| legal_name | string | Legal Name (text) |
| hq_city | string, nullable | Headquarters City (text) |
| hq_state | string, nullable | Headquarters State (text) |
| asset_tier | string, nullable | Asset Tier (text) |
| total_assets | number (double), nullable | Total Assets (USD thousands) |
| cet1_ratio | number (double), nullable | CET1 Capital Ratio (percent). Common Equity Tier 1 capital as a percentage of risk-weighted assets, the strictest measure of bank capital. The prompt corrective action "well capitalized" level is 6.5%; the 4.5% minimum plus the 2.5% conservation buffer is 7.0%, below which dividends and bonuses are limited. FFIEC 031 filers report it as RCFAP793 and FFIEC 041/051 filers as RCOAP793 (standardized approach). A bank under the advanced approaches also reports RCFWP793; the ratio shown is the lower of the two, the binding ratio FDIC publishes. Banks in the community bank leverage ratio framework do not report it. |
| npl_ratio | number (double), nullable | Non-Performing Loan Ratio (percent). Noncurrent loans (nonaccrual plus 90+ days past due and still accruing) as a percentage of total loans, the FDIC and UBPR definition; consolidated lines for FFIEC 031 filers. Performing modifications to borrowers in financial difficulty are not counted. Lower is better. The Healthy and Watch bands below are BankRegReports screening bands (2% and 5%), not regulatory triggers; no supervisory NPL threshold exists. |
| texas_ratio | number (double), nullable | Texas Ratio (percent). Problem assets divided by tangible equity plus the allowance for credit losses. Problem assets are nonaccrual loans, loans 90 or more days past due and still accruing, and other real estate owned, net of the U.S. government-guaranteed portions; modified loans are not included. Tangible equity is total equity capital less intangible assets other than mortgage servicing assets. Above 100% has historically signaled elevated failure risk. |
| roa | number (double), nullable | Return on Assets (percent). Net income, annualized, as a percentage of average total assets. The single most-cited profitability metric. 1.0%+ is strong for national banks; community banks often run 0.8 to 1.2%. |
| roe | number (double), nullable | Return on Equity (percent) |
| nim | number (double), nullable | |
| efficiency_ratio | number (double), nullable | Efficiency Ratio (percent). Non-interest expense divided by the sum of net interest income and non-interest income. Lower is better. Below 60% is excellent; above 75% raises operational-leverage concerns. |
| leverage_ratio | number (double), nullable | Tier 1 Leverage Ratio (percent) |
| cre_to_capital | number (double), nullable | |
| cd_to_capital | number (double), nullable | |
| report_date | string, nullable | Report Date (date) |
| is_well_capitalized | boolean, nullable | |
| charter_type | string, nullable | |
| flags | array of string |
Example request
curl "https://api.bankregreports.com/api/v1/screener/" \ -H "Authorization: Bearer $BANKREG_API_TOKEN"
Responses are JSON in a {"data": ..., "meta": {...}} envelope. Get a token on the setup page.
Example response shape
A successful call returns HTTP 200 with a JSON body. Each row in data carries the fields below, shown with their documented types rather than sample values.
{
"data": [
{
"rssd_id": "integer",
"fdic_cert": "integer",
"legal_name": "string",
"hq_city": "string",
"hq_state": "string",
"asset_tier": "string",
"total_assets": "number (double)",
"cet1_ratio": "number (double)"
... 13 more fields
}
],
"meta": { ... }
} When to use it
Bank Screener sits in the Screeners group of the Data API. Reach for it when your work needs this data straight from the API: it comes back as JSON you can load into a notebook, a spreadsheet or a scheduled pipeline, with the dataset key screener naming it the same way in the REST path, the Python SDK and the OpenAPI document.
Access and authentication
This dataset is in the Public tier. Send your API token in the Authorization header as a Bearer token, using a GET request to the endpoint above. The Free plan is the first plan that includes it. Check the plan comparison for request limits, and the data update schedule for when new filings reach the API.
Related datasets
- Screener Dataset (full working set): The entire bank universe with screener columns in one response, for the paid client-side (in-browser) screener. Paid tier only; free callers page through the screener endpoint instead.
- Loan-Concentration Screener: Screen banks by loan-portfolio concentration.
- M&A Target Screener: Banks scored as likely acquisition targets.
- Custom Peer Groups: List or save the caller's custom peer groups.
Keep going
Browse every dataset, follow the setup walkthrough to make a first call, use the Excel add-in for formulas, or connect an assistant through the MCP server.
Python SDK
Install with pip install bankregreports and set BANKREG_API_TOKEN to your key.
import bankregreports brr = bankregreports.BankReg() # reads BANKREG_API_TOKEN result = brr.screener()