Define the OpenFEMA NFIP claims row, loss-date filter, geography, payment fields, and as-of date before counting records or summing paid amounts. Keep building, contents, and Increased Cost of Compliance payments separate, and disclose that the redacted records represent insured claims rather than all flood damage.
Last checked: August 7, 2026.
A row is a public claims record, not a complete property dossier. The dataset includes loss timing, coverage and payment fields, occupancy and building characteristics, flood zone, and generalized geographic fields. Null does not automatically mean zero, and an amount paid field answers a different question from coverage in force. County, ZIP, and census geography may be missing, generalized, or unsuitable for parcel conclusions because the release is designed to protect policyholder privacy.
Choose row grain before counting or summing
OpenFEMA's redacted claims dataset is most useful after the analyst defines a row. A row is not automatically one property, one policyholder, one event, or one complete claim history. The data dictionary, dataset version, refresh date, geography fields, payment components, and redaction rules belong in the analysis plan before counts or sums are produced. Otherwise a technically valid API response can support the wrong denominator.
Suppose an extract returns 2,400 rows and building, contents, and increased-cost payments are separate numeric fields. A total-paid calculation should state whether nulls were treated as unknown or zero, whether reopened or revised records can appear, and which geography field set the boundary. Summing the visible numbers is reproducible only when the filter, row grain, selected fields, and retrieval time are saved beside the result.
Public redaction creates genuine limits. Missing coordinates, generalized location, or absent personal identifiers prevent an address-level claim lookup, and a zero-valued field may not prove that no covered loss occurred. The dataset is also not the system used to make an individual claim decision. Aggregate patterns can describe the public records returned under a disclosed method; they cannot establish a property's loss history, fraud, eligibility, or future premium.
The dataset page and dictionary define the claims row
OpenFEMA FIMA NFIP Redacted Claims v2 supplies public claims schema, update metadata, field definitions, redaction, geography, and API/download routes; this guide cites it for dateOfLoss/yearOfLoss / amountPaidOnBuildingClaim / amountPaidOnContentsClaim / amountPaidOnIncreasedCostOfComplianceClaim / countyCode/censusTract/reportedZipCode / occupancyType/floodZone / asOfDate / Dataset scope. OpenFEMA supplies the self-service public-data program, machine-readable access, updates, and support boundaries; this guide cites it for asOfDate / Dataset scope. NOAA Storm Events Database supplies official event search, period of record, event types, narratives, injuries, deaths, and damage estimates; this guide cites it for Independent event-date context.
The OpenFEMA NFIP claims fields crosswalk keeps these assignments explicit: OpenFEMA FIMA NFIP Redacted Claims v2 → dateOfLoss/yearOfLoss / amountPaidOnBuildingClaim / amountPaidOnContentsClaim / amountPaidOnIncreasedCostOfComplianceClaim / countyCode/censusTract/reportedZipCode / occupancyType/floodZone / asOfDate / Dataset scope; OpenFEMA → asOfDate / Dataset scope; NOAA Storm Events Database → Independent event-date context. If dateOfLoss/yearOfLoss or another named field is absent from its cited record, leave that fact unresolved and obtain it from the responsible official source instead of expanding a different citation beyond scope.
| Official record | What it actually supplies | Field used here |
|---|---|---|
| OpenFEMA FIMA NFIP Redacted Claims v2 | public claims schema, update metadata, field definitions, redaction, geography, and API/download routes | dateOfLoss/yearOfLoss / amountPaidOnBuildingClaim / amountPaidOnContentsClaim / amountPaidOnIncreasedCostOfComplianceClaim / countyCode/censusTract/reportedZipCode / occupancyType/floodZone / asOfDate / Dataset scope |
| OpenFEMA | the self-service public-data program, machine-readable access, updates, and support boundaries | asOfDate / Dataset scope |
| NOAA Storm Events Database | official event search, period of record, event types, narratives, injuries, deaths, and damage estimates | Independent event-date context |
Use the cited records only to define fields before aggregating claims data. If an official page no longer publishes dateOfLoss/yearOfLoss, save its URL and checked date, mark that fact unavailable, and ask the agency or data owner rather than borrowing it from a secondary summary.
NOAA Storm Events may supply event-date context, but it cannot validate an NFIP claim, address-level loss, payment, or policy decision.
How dateOfLoss/yearOfLoss connects to Independent event-date context
| Field | Meaning in this check | Error it exposes | Response |
|---|---|---|---|
| dateOfLoss/yearOfLoss | Defines when the insured loss occurred | Different from payment or dataset update date | Use for event/time filters and retain full date where allowed |
| amountPaidOnBuildingClaim | Building claim payment field | Not coverage limit or total damage | Sum separately and state null treatment |
| amountPaidOnContentsClaim | Contents claim payment field | Not interchangeable with building payment | Keep as a distinct measure |
| amountPaidOnIncreasedCostOfComplianceClaim | ICC payment field | Applies only to qualifying ICC claims | Report separately from ordinary building/contents |
| countyCode/censusTract/reportedZipCode | Generalized public geography | Not parcel identification | Choose one geographic key and disclose missing/generalized values |
| occupancyType/floodZone | Categorical claim context | Definitions and coding may change | Use the current data dictionary |
| asOfDate | Snapshot/update context | Not the date of every loss | Save with every extract |
| Dataset scope | Public redacted-claims dataset coverage and row grain | A public row is not a complete claim file or address-level loss record | State the dataset boundary before counting or comparing |
| Independent event-date context | NOAA-reported event timing used only as an external comparison | It does not validate an NFIP claim, payment, address, or policy decision | Keep it outside the claims-field calculation and label it as contextual |
Begin with dateOfLoss/yearOfLoss, which answers “Defines when the insured loss occurred”. Check amountPaidOnBuildingClaim separately because it answers “Building claim payment field”. If the record instead shows “Not coverage limit or total damage”, use the stated correction: “Sum separately and state null treatment”.
amountPaidOnContentsClaim can change the interpretation because it answers “Contents claim payment field”. Its main warning is “Not interchangeable with building payment”. Read that warning beside Dataset scope so place, period, unit, and reference remain attached to the same evidence.
Finish the comparison with Independent event-date context. It answers “NOAA-reported event timing used only as an external comparison”, while “It does not validate an NFIP claim, payment, address, or policy decision” marks the point where a broader conclusion would be unsafe. When that condition appears, follow “Keep it outside the claims-field calculation and label it as contextual” and leave the larger decision open.
Save the query, fields, null rule, and refresh time
Verify two checkpoints before interpreting Independent event-date context: “Choose the loss-date window and geography before downloading records”, followed by “Save the exact API filter or download parameters so another analyst can reproduce the extract”. If the first checkpoint fails, stop before applying the second to a possibly wrong dateOfLoss/yearOfLoss subject or record.
- Open the current OpenFEMA dataset page and record dataset name, version, update frequency, as-of metadata, and API endpoint.
- Write one analysis question and list only the fields required to answer it.
- Choose the loss-date window and geography before downloading records.
- Save the exact API filter or download parameters so another analyst can reproduce the extract.
- Review nulls, zeros, category values, and duplicate-looking records before aggregation.
- Calculate claim count and each payment measure separately, with an explicit missing-value rule.
- Publish the dataset snapshot, definitions, query, caveats, and a warning against property-level inference.
The file is ready for later review only after this final action: “Publish the dataset snapshot, definitions, query, caveats, and a warning against property-level inference”. Keep dateOfLoss/yearOfLoss, amountPaidOnContentsClaim, and Independent event-date context in that record so a future update shows exactly what changed.
A reproducible county extract with an explicit row grain
For a county-year summary, freeze the dataset version and as-of date, filter the geographic code and dateOfLoss range, count the resulting records, and sum each paid category separately. Document how nulls were handled. Do not divide a claim total by every household and call it flood probability; the denominator, insurance take-up, exposure, policy terms, and uninsured losses are absent from that calculation.
In this example, dateOfLoss/yearOfLoss identifies the relevant record, while amountPaidOnContentsClaim is the fact most likely to change the interpretation. Conclude “Insured claims represented in release” only when the evidence shows “Count filtered public records”.
For OpenFEMA NFIP claims fields, if the facts instead fit “Geographic comparison”, the result changes to “Redaction/geocoding limit detail”. Respond by following “Avoid parcel, address, or household claims”. Do not substitute the more favorable conclusion from the earlier example.
Valid row, null amount, generalized geography, and later refresh
| Observed state | Evidence test | Limited conclusion | Next response |
|---|---|---|---|
| Claim count | Count filtered public records | Insured claims represented in release | Do not call it number of flooded properties without qualification |
| Paid amount | Sum named payment columns | Payments, not modeled damage | Keep building, contents, and ICC separate |
| Zero versus null | Inspect raw value and dictionary | May represent different states | Publish the explicit handling rule |
| Geographic comparison | Use consistent code and snapshot | Redaction/geocoding limit detail | Avoid parcel, address, or household claims |
When the evidence shows “Count filtered public records”, the limited conclusion is “Insured claims represented in release” and the next action is “Do not call it number of flooded properties without qualification”. By contrast, “Paid amount” requires “Keep building, contents, and ICC separate” because its evidence test is “Sum named payment columns”.
For “Zero versus null”, use “Publish the explicit handling rule”. For “Geographic comparison”, use “Avoid parcel, address, or household claims”. Across Zero versus null and Geographic comparison, neither branch permits an unsupported favorable conclusion when the stated evidence is absent.
Redaction, revisions, and false address-level conclusions
- Avoid summing coverage as payment. Recheck amountPaidOnBuildingClaim / amountPaidOnContentsClaim / amountPaidOnIncreasedCostOfComplianceClaim. The mapped warning is “Not coverage limit or total damage; Not interchangeable with building payment; Applies only to qualifying ICC claims”; the corresponding response is “Sum separately and state null treatment; Keep as a distinct measure; Report separately from ordinary building/contents”.
- Avoid turning null into zero without review. Recheck amountPaidOnBuildingClaim / amountPaidOnContentsClaim / amountPaidOnIncreasedCostOfComplianceClaim. The mapped warning is “Not coverage limit or total damage; Not interchangeable with building payment; Applies only to qualifying ICC claims”; the corresponding response is “Sum separately and state null treatment; Keep as a distinct measure; Report separately from ordinary building/contents”.
- Avoid calling insured claims all flood losses. Recheck Dataset scope. The mapped warning is “A public row is not a complete claim file or address-level loss record”; the corresponding response is “State the dataset boundary before counting or comparing”.
- Avoid reverse-engineering a property from generalized fields. Recheck countyCode/censusTract/reportedZipCode. The mapped warning is “Not parcel identification”; the corresponding response is “Choose one geographic key and disclose missing/generalized values”.
“summing coverage as payment” can trigger Not coverage limit or total damage; Not interchangeable with building payment; Applies only to qualifying ICC claims; correct the mapped amountPaidOnBuildingClaim / amountPaidOnContentsClaim / amountPaidOnIncreasedCostOfComplianceClaim field or fields by following “Sum separately and state null treatment; Keep as a distinct measure; Report separately from ordinary building/contents”. “turning null into zero without review” affects amountPaidOnBuildingClaim / amountPaidOnContentsClaim / amountPaidOnIncreasedCostOfComplianceClaim, so use “Sum separately and state null treatment; Keep as a distinct measure; Report separately from ordinary building/contents” before relying on the result.
The remedy for “calling insured claims all flood losses” is tied to Dataset scope: “State the dataset boundary before counting or comparing”. The separate mistake “reverse-engineering a property from generalized fields” is exposed by “Not parcel identification”; answer it with “Choose one geographic key and disclose missing/generalized values”.
What this OpenFEMA claims field-to-metric crosswalk cannot decide
Scope: United States public historical flood datasets. Limitation: Redacted claims data is not a complete property history and locations are generalized.
The OpenFEMA claims field-to-metric crosswalk keeps dateOfLoss/yearOfLoss, amountPaidOnContentsClaim, and Independent event-date context in one comparison; it does not define fields before aggregating claims data on the reader’s behalf. If the facts match “Geographic comparison”, follow “Avoid parcel, address, or household claims” with the responsible agency or professional.
Pair aggregate claims data with separate event research
- After confirming dateOfLoss/yearOfLoss, continue to OpenFEMA NFIP Claims Data By County only for the separate question named there.
- Use OpenFEMA Disaster Declarations Flood Filter when amountPaidOnContentsClaim raises an issue outside this article’s evidence test.
- Open USGS Flood Event Viewer High Water Marks if Independent event-date context requires a broader official-record review.
Use this guide to define fields before aggregating claims data. The linked guides address separate questions raised by dateOfLoss/yearOfLoss, amountPaidOnContentsClaim, or Independent event-date context.
Before publishing an NFIP claims calculation
Does dateOfLoss/yearOfLoss settle the question by itself?
No. dateOfLoss/yearOfLoss answers “Defines when the insured loss occurred”, but it can fail when “Different from payment or dataset update date”. Pair it with amountPaidOnBuildingClaim, amountPaidOnContentsClaim, and the checked date.
What if the evidence shows Geographic comparison?
Confirm the stated evidence test: “Use consistent code and snapshot”. The limited conclusion is “Redaction/geocoding limit detail”. The documented response is “Avoid parcel, address, or household claims”; a more favorable branch should not be substituted.
When should Independent event-date context be checked again?
Rerun the extract when OpenFEMA changes the dataset version, as-of date, schema, redaction rules, or a field definition used by the query. Save the previous query and row count so a later increase can be separated from a methodological change.
OpenFEMA NFIP Claims Schema: Date of Loss, Amount Fields, Occupancy, and Geography is independent public-record guidance for the limited action to define fields before aggregating claims data. The cited government records retain authority over dateOfLoss/yearOfLoss and Independent event-date context. Last checked: August 7, 2026.