Vertical Guide

Crop Risk Monitoring for Agricultural Lenders

Drought, soil moisture, and crop progress data unified into a single portfolio API — for farm lenders managing collateral exposure across hundreds of counties.

Farm loan collateral is geographically fixed. A drought in Adair County, Iowa isn't a regional headline — it's a direct impairment risk on every corn and soybean loan secured by that county's cropland. R2Data2 gives ag lenders the county-level data infrastructure to monitor that risk continuously, not just at annual review.

Signals: Drought · Soil Moisture · Crop Progress · NRI Risk Scores  ·  Coverage: 3,100+ U.S. counties  ·  Update frequency: Daily to weekly

On this page
  1. The ag lending data problem
  2. The signal stack for farm loan risk
  3. A practical monitoring workflow
  4. Key API endpoints
  5. Frequently asked questions
  6. Get started

The ag lending data problem

Agricultural lenders — farm credit institutions, commercial banks with ag portfolios, USDA FSA field offices — share a structural challenge: the collateral securing their loans is biological, weather-dependent, and pinned to specific counties. A $2M corn operation in southwest Kansas doesn't look like a risk on day 1 of a dry spring. By day 60 of D3 drought, it might be.

The traditional response is annual review — a loan officer visits, checks last year's FSA records, and makes a call. That works in normal years. In a flash drought year (soil moisture can drop from normal to severe in 4–6 weeks), annual review misses the entire stress event. By the time the next scheduled review happens, the damage is already in the loss reserve.

R2Data2 closes that gap. Instead of monitoring borrowers once a year with a site visit, lenders can monitor every county in their portfolio every week — automatically — with the same government data (USDM, NASA SMAP, USDA NASS) that USDA program administrators use to trigger disaster assistance.

The signal stack for farm loan risk

No single indicator tells the full story. Drought category reflects cumulative moisture deficit; soil moisture tracks daily surface conditions; crop progress tells you whether planting delays are compounding weather stress; NRI scores give you the baseline structural hazard exposure for each county. Together, they cover the full arc of agricultural risk from pre-planting through harvest.

Drought
USDA Drought Monitor · Weekly

D0–D4 severity categories and per-band area coverage for every county. The official trigger for USDA LFP, ELAP, and many state disaster programs. Updated every Thursday.

Soil Moisture
NASA SMAP · Daily

Surface volumetric water content (top 5 cm) aggregated from a 9 km satellite grid to county level. The sm_z_score anomaly field flags departures from the 3-year seasonal baseline.

Crop Progress
USDA NASS · Weekly (Mondays)

Planted, emerged, silked, and harvested percentages by crop and state. Planting delays in a drought year compound yield risk; crop progress quantifies that lag.

NRI Risk Scores
FEMA National Risk Index · Annual

Composite and per-hazard risk scores (drought, flood, tornado, hail, and 13 more) for every county. Baseline structural exposure — not weather-dependent, but essential context for underwriting.

R2Data2 also computes a Crop Stress Index — a composite score that combines drought severity, soil moisture anomaly, NDVI vegetation health, and growing degree day deviation into a single 0–100 county-level number. It's purpose-built for portfolio screening: rank 200 counties by stress score and focus attention on the top quartile, rather than reviewing each signal separately.

A practical monitoring workflow

The goal is to move from annual review to continuous monitoring without adding headcount. Here's how lenders structure that with R2Data2:

Load your county list

Map your loan portfolio to county FIPS codes — if you're working with FSA or crop insurance data, you almost certainly have these already. Store 50–500 FIPS codes depending on your portfolio's geographic spread.

Run a weekly portfolio sweep

On Thursday evenings (after the USDM release) or Friday mornings, POST your county list to /portfolio/summary. One API call returns drought, soil moisture, crop progress, NRI scores, and Crop Stress Index for every county in your book — up to 500 counties on Pro.

Flag threshold crossings

Filter the response for counties where drought_severity ≥ 2 (severe drought or worse), sm_z_score ≤ –1.5 (meaningfully drier than seasonal baseline), or crop_stress_index ≥ 65 (elevated composite stress). These are the counties that warrant a closer look before the next scheduled loan review.

Pull time-series context on flagged counties

For each flagged county, call /drought/county/{fips} and /soil-moisture/county/{fips} to pull the last 12–26 weeks of history. A county that's been D2+ for 8 consecutive weeks carries different risk than one that just crossed the threshold.

Integrate into loan review workflows

Write flagged counties and their signal history to your LOS or a shared dashboard. Loan officers get a pre-populated risk summary when they open a borrower record — one click instead of a manual USDM lookup.

Key API endpoints

All endpoints require an API key in the X-API-Key header. Portfolio and snapshot endpoints require a Growth or Pro plan.

Portfolio summary — monitor your whole book in one call

The primary endpoint for lenders. POST a list of county FIPS codes and get back a unified risk snapshot for each: drought category, soil moisture anomaly, crop progress, NRI scores, and Crop Stress Index. One call, all signals, every county in your portfolio.

POST /portfolio/summary
# Sweep three Iowa counties — scale to 500 on Pro
curl -X POST https://r2data2.com/portfolio/summary \
  -H "X-API-Key: agr_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{"fips": ["19001", "19153", "19163"]}'
{
  "items": [
    {
      "fips": "19001",
      "county_name": "Adair",
      "state_abbr": "IA",
      "drought": {
        "drought_category": "D2",
        "drought_severity": 2,
        "d2_pct": 58.1,
        "valid_date": "2025-04-10"
      },
      "soil_moisture": {
        "sm_mean_am": 0.218,
        "sm_z_score": -2.11,
        "obs_date": "2025-04-09"
      },
      "crop_stress_index": 71,
      "nri": {
        "composite_score": 18.4,
        "drought_risk_rating": "High"
      }
    }
  ]
}
Pricing note: Each county in a portfolio call costs 5 requests toward your daily limit. A 200-county sweep on Growth (15,000 req/day) costs 1,000 requests — well within budget for a once-weekly sweep.

County summary — deep dive on a single borrower county

Pull every available signal for one county in a single call. Useful when a flagged county warrants a closer look before a loan review conversation.

GET /county/{fips}/summary
# Full signal snapshot for Adair County, Iowa
curl https://r2data2.com/county/19001/summary \
  -H "X-API-Key: agr_your_key_here"

Drought time series — consecutive weeks in drought

Pull weekly drought history for any county to determine how long a stress event has been developing. Eight consecutive weeks at D2+ is materially different from a single week crossing that threshold.

GET /drought/county/{fips}
# Last 26 weeks of drought history for Adair County
curl "https://r2data2.com/drought/county/19001?limit=26" \
  -H "X-API-Key: agr_your_key_here"

Crop progress — planting delays as a compounding risk factor

Drought during the planting window is worse if planting is already behind schedule. This endpoint returns USDA NASS weekly crop progress percentages by state — planted, emerged, and silked percentages for corn, soybeans, winter wheat, and more.

GET /crop-progress/state/{state_fips}
# Current corn and soybean progress for Iowa (state FIPS 19)
curl "https://r2data2.com/crop-progress/state/19?crop=CORN" \
  -H "X-API-Key: agr_your_key_here"
{
  "state_fips": "19",
  "count": 4,
  "records": [
    {
      "state_fips": "19",
      "week_ending": "2025-04-13",
      "crop": "CORN",
      "stage": "PLANTED",
      "progress_pct": 12.0
    },
    {
      "state_fips": "19",
      "week_ending": "2025-04-13",
      "crop": "CORN",
      "stage": "EMERGED",
      "progress_pct": 4.0
    }
  ]
}

See the Data Dictionary for the full field reference across all signals, and the API Docs for interactive testing.

Frequently asked questions

How many counties can I monitor in one API call?

The /portfolio/summary endpoint accepts up to 100 counties per call on the Growth plan and up to 500 on Pro. For most agricultural lenders, a single weekly call covers the entire portfolio. Each county costs 5 requests toward your daily limit; Growth plans include 15,000 requests/day.

Is this the same drought data USDA uses for disaster program triggers?

Yes. R2Data2 ingests directly from the U.S. Drought Monitor, which is the official data source used by USDA's Livestock Forage Disaster Program (LFP), Emergency Livestock Assistance Program (ELAP), and the Noninsured Crop Disaster Assistance Program (NAP) to determine county-level program eligibility. The data in our API is the same dataset — we just add a numeric severity field and a clean REST interface.

How do I map borrowers to county FIPS codes?

If you work with FSA farm records, crop insurance schedules, or title documents, FIPS codes are almost always embedded in those records (sometimes labeled as county code or state-county code). You can also look up FIPS codes by county name and state via the /counties endpoint. Five-digit FIPS — two-digit state + three-digit county — are the standard identifier across all USDA data systems.

What's the difference between drought severity and soil moisture anomaly?

Drought severity (D0–D4) is a composite index that reflects cumulative moisture deficit over weeks to months — it moves slowly and is the official USDA program trigger. Soil moisture anomaly (sm_z_score) is a daily satellite reading that reflects current surface conditions relative to the seasonal baseline — it responds quickly and is a leading indicator. A county with D0 drought but sm_z_score –2.5 is likely to see its drought category worsen; a D2 county with sm_z_score +0.8 may be recovering. Both signals together give a more complete picture than either alone.

How far back does the historical data go?

Drought data goes back to 2000 (full USDM archive). SMAP soil moisture is available from 2015 onward. Both are accessible to Growth and Pro subscribers. This makes it practical to compute 5- and 10-year drought frequency metrics by county — useful for underwriting decisions on new farm loans in unfamiliar geographies.

Can I use this alongside our existing LOS or credit analytics system?

Yes — R2Data2 is a data API, not a credit platform. You pull the data via REST, transform it however your workflow requires, and write it to whatever system holds your loan records. Most integrations are built in Python or SQL and run as scheduled jobs. We can provide sample integration code on request.

Start monitoring your loan portfolio

Free tier available — no credit card required. Portfolio endpoints require Growth or Pro.
Trusted by ag lenders monitoring drought and soil moisture conditions across millions of acres of U.S. farmland.