The plan filters
Nine panels narrow millions of retirement filings to the subset that matters. This page is the field reference for every filter on /retirement: what each filter does, how the buckets are cut, and what lands in the URL when you check a box.
How filters compose
Three rules govern the rail. Hold these and the rest reads on its own.
- Within a panel, OR. Check California and Texas; you get plans in either. Check Manufacturing and Healthcare; you get plans in either.
- Across panels, AND. Check California and Manufacturing; you get California manufacturers.
- Empty equals no filter. Nothing checked, nothing narrowed. Range filters follow the same rule: a bucket checked sets a min and max; no bucket checked clears them.
Size
Both ranges are bucketed to industry segmentation, not tidy decimals. Each bucket has a "Detailed range" disclosure that opens a histogram slider when you need finer control.
Assets
Cerulli-standard advisor segmentation, total assets at end of year (Schedule H line 1l(b)).
| Bucket | Range | URL |
|---|---|---|
| Micro | Under $5M | assets_max=5000000 |
| Small | $5M to $50M | assets_min=5000000&assets_max=50000000 |
| Mid | $50M to $250M | assets_min=50000000&assets_max=250000000 |
| Large | $250M to $1B | assets_min=250000000&assets_max=1000000000 |
| Mega | Over $1B | assets_min=1000000000 |
Participants
ERISA-100-aware. The 100-participant line is the audit-required threshold; the other cuts match the segments advisors actually pitch into.
| Bucket | Range | URL |
|---|---|---|
| Solo | Under 25 | part_max=24 |
| Small | 25 to 100 | part_min=25&part_max=99 |
| Mid | 100 to 500 | part_min=100&part_max=499 |
| Large | 500 to 5,000 | part_min=500&part_max=4999 |
| Mega | Over 5,000 | part_min=5000 |
Location
Three controls, all matching on the sponsor mailing address from the 5500 face.
- State. Multi-select all 50 plus DC. URL
state=CA,TX. - City. Free-text, case-insensitive substring, debounced 300 ms. URL
city=Austin. - ZIP code. Five-digit exact match. URL
zip=78701.
Plan type
Four sub-panels, each a checkbox list.
Subtype
Grouped by family for orientation. The user picks subtypes directly; family is implicit.
- DC plans. 401(k), profit-sharing, money purchase, ESOP, SIMPLE 401(k), stock bonus, 403(b)(7), 403(b)(1) annuity, 457(b), other DC.
- Hybrid. Cash balance.
- DB plans. Defined benefit.
URL subtype=401k,profit_sharing.
Lifecycle
Active is the default cohort; the others mark plans on the way out. Multi-select.
- Active
- Frozen (no new contributions)
- Terminating
- Wind-down
URL lifecycle=active,frozen.
Sponsor structure
Who legally sponsors the plan. Six options.
- Single-employer
- Multiemployer
- Multiple-employer
- Pooled Employer Plan
- Group of Plans
- DFE
URL structure=Single-employer.
Tax class
Two options that ride alongside structure: 403(b) and For-profit. Governmental and church carve-outs are deferred (Form 5500 has no first-class field for either). URL tax_class=403(b).
Plan features
Plan-design booleans that AND-compose. Every checked feature must be present on the plan-year filing.
| Code | Feature |
|---|---|
| 2S | Automatic enrollment |
| 2T | QDIA (default investment) |
| 2F | ERISA 404(c) plan |
| 2H | Partial participant-directed |
| 2R | Participant-directed brokerage |
| 3H | Controlled group member |
| 3I | Employer securities required |
| 1G | Covered by PBGC (DB only) |
URL features=2F,2H. Codes are uppercased server-side; case-insensitive on input.
Plan policy
Five booleans an advisor commonly screens for, plus the Schedule H Part 3 auditor opinion.
| Toggle | URL | What it means |
|---|---|---|
| Safe harbor 401(k) | safe_harbor=1 | Schedule R safe-harbor design indicator on (ADP test waiver). |
| SECURE 2.0 mandated | secure2=1 | Plan effective date on or after 2022-12-29; subject to SECURE 2.0 mandates. |
| In an Auto-IRA state | auto_ira=1 | Sponsor mailing-address state has a live state Auto-IRA program. |
| Holds employer securities | holds_employer_securities=1 | Form 5500 plan-feature code 3I on. ESOPs and stock-fund 401(k)s. |
| Has top hat statement | has_top_hat=1 | Sponsor EIN has filed a Top Hat statement under DOL section 2520.104-23. Surfaces deferred-comp depth on the plan page. |
Auditor opinion
Schedule H Part 3 opinion type, four values: Unqualified, Qualified, Disclaimer, Adverse. Anything other than Unqualified is worth a look. URL auditor_opinion=Qualified,Adverse.
Industry
Twenty NAICS sectors at two-digit precision, search above the list, "Show all" disclosure for the long tail. Some sectors collapse multiple raw codes (Manufacturing folds 31, 32, 33; Retail folds 44, 45; Transportation folds 48, 49) and expand back when the query runs.
Sponsor industry comes from the filed NAICS code first, with PDL enrichment filling the gap when the filing left the field blank.
URL naics2=52 (Finance and Insurance), naics2=52,54 for finance plus professional services. A NAICS sub-sector field is wired on the data side and filterable via naics3=541; the rail currently exposes sectors only.
Prospect flags
Three sub-panels: the 17 flags themselves (six DOL-deterministic, six absolute-cutoff, four peer-cohort percentile, one derived wind-down), and an "any flag tripped" toggle. All flags are stored as flag_* columns on the plan-year row and sourced to the line.
Six DOL-deterministic flags
Reported by the sponsor on the filing. If the box is checked here, the DOL has it on file. Trustworthy enough to screen prospects on directly.
| Flag | Column | Trip condition |
|---|---|---|
| Recently terminated plan | flag_recently_terminated | Plan year carries a termination indicator |
| Insufficient fidelity bond | flag_fidelity_bond | Bond coverage below the ERISA Section 412 minimum |
| Failed to transmit contributions | flag_fail_transmit_contributions | Sponsor reported delinquent contributions on the filing |
| Failed to provide benefit | flag_failed_provide_benefit | Sponsor reported a benefit that should have been paid was not |
| Corrective distributions | flag_corrective_distributions | Refunds issued to highly compensated employees after a failed nondiscrimination test |
| Loss from fraud or dishonesty | flag_loss_discovered | Sponsor reported a discovered loss attributable to fraud or dishonesty |
Six absolute-cutoff flags
Each metric has size- and industry-independent meaning, so a single named cutoff is enough to make a result auditable from the column alone.
| Flag | Column | Trip condition |
|---|---|---|
| High retiree share (>=25%) | flag_retiree_percentage | Retired-with-balance / total participants >= 25% |
| High admin fee per account holder (>$300) | flag_admin_per_p | Admin fee per account holder above $300/year |
| High cash allocation (>10%) | flag_cash_percentage | Cash share of investments above 10% |
| Low participation rate (<70%) | flag_participation_rate | Active / eligible below 70% |
| Very high average account balance (>$250k) | flag_high_assets | Average account balance above $250,000 |
| Crossed 100 balance-holders | flag_reached_100 | Balance-holder count crossed 100 in this filing year |
Four peer-cohort percentile flags
Each metric depends on plan size and industry, so the ranking sits inside a peer cohort (plan-year x NAICS sector x participant bucket x plan type). Bottom-quintile trips the flag.
| Flag | Column | Trip condition |
|---|---|---|
| Low return (bottom quintile) | flag_return_percentage | Annual return percentile <= 20 within peer cohort |
| Low average account balance (bottom quintile) | flag_assets_per_participant | Average account balance in the bottom quintile of the peer cohort |
| Low employer contribution (bottom quintile) | flag_low_employer_contrib | Employer contribution per active employee in the bottom quintile |
| Low participant contribution (bottom quintile) | flag_low_participant_contrib | Participant contribution per participant in the bottom quintile |
One derived wind-down flag
A four-signal OR detecting closed-to-enrollment or frozen plans. Surfaces plans where the participation-rate metric would mislead, and lets the search and benchmark cohorts exclude them.
| Flag | Column | Trip condition |
|---|---|---|
| Wind-down / frozen plan | flag_wind_down | Balance-holders far exceed active employees, or plan reports distributions with no inflows, or plan filed a final return, or lifecycle is frozen/terminating |
URL flags=flag_fidelity_bond,flag_recently_terminated. Check the "Any prospect flag tripped" box to set flag_any=1; matches when at least one of the 17 is on.
Performance
Three ranges, every cutoff anchored to an advisor-meaningful line.
Admin fees as a percent of assets
The 1.00% line is the conventional high-fee call-out for fee-competitive advisors.
| Bucket | Range | URL |
|---|---|---|
| Very low | Under 0.25% | exp_pct_max=0.25 |
| Low | 0.25% to 0.50% | exp_pct_min=0.25&exp_pct_max=0.5 |
| Moderate | 0.50% to 1.00% | exp_pct_min=0.5&exp_pct_max=1.0 |
| High | Over 1.00% | exp_pct_min=1.0 |
Year-over-year asset growth
Signed percent change in total assets vs the prior filing.
| Bucket | Range | URL |
|---|---|---|
| Shrinking | Under 0% | growth_max=0 |
| Flat | 0% to 5% | growth_min=0&growth_max=5 |
| Growing | 5% to 15% | growth_min=5&growth_max=15 |
| Booming | Over 15% | growth_min=15 |
Participation rate
Active divided by eligible. Below 70% is the auto-flag threshold for flag_participation_rate.
| Bucket | Range | URL |
|---|---|---|
| Low | Under 50% | part_rate_max=50 |
| Moderate | 50% to 70% | part_rate_min=50&part_rate_max=70 |
| Good | 70% to 85% | part_rate_min=70&part_rate_max=85 |
| Excellent | Over 85% | part_rate_min=85 |
Providers
Type-ahead any recordkeeper, advisor, TPA, auditor, or legal-services provider that has appeared on a Schedule C. The search returns canonical providers with a count of plans they served; selecting one filters the results to plans where that provider is named on Schedule C.
Provider name canonicalization runs in the warehouse - we collapse spelling variants and parent/subsidiary tags onto a single canonical id, so "Empower Retirement, Inc." and "Empower" resolve to the same row. Multi-select ANDs together: a plan must show all selected providers on its Schedule C.
Browse the full provider directory at /provider; carriers and brokers have their own directories at /welfare/carrier and /welfare/broker.
URL grammar
A few rules keep saved searches predictable.
- Snake case. All param names are lower snake case, no camel.
- Range suffixes. Numeric ranges use
_minand_max. Drop one to open-end the range on that side. - Comma-separated multi-select.
state=CA,TX,NY. Order is preserved; duplicates dropped. - Booleans. A truthy value enables (
safe_harbor=1); the param's absence disables.0and empty string are dropped. - Defaults dropped.
sort=total_assets_eoyanddir=descare the defaults and stay out of the URL. - Sort and pagination.
sort,dir,limit,offset. Limit defaults to 25.
A worked example:
/retirement?state=NH,VT,ME &assets_min=10000000&assets_max=50000000 &naics2=52&features=2F,2H &flags=flag_fidelity_bond
Reads as: small-to-mid plans in northern New England finance, with ERISA 404(c) and participant-directed investments, where the fidelity bond flag tripped.
Recipes worth keeping
Scope honesty
PlanOptica covers every retirement plan-year filing the DOL publishes from 2015 through 2026 - Form 5500 plus Schedules H, I, SB, MB, G, R, and C. The filters on this page only narrow retirement results.
Welfare and group-health plans live at /welfare with their own filter rail (funding type, carriers, brokers, premium percentiles, 12 welfare prospect flags). See Reading a welfare plan page for the welfare side.