# US Drought Monitor: All Counties, DSCI & Weekly Change (`bigsky-data-tools/us-drought-monitor-county-stats`) Actor

Every US county (~3,200) or state in one run from the U.S. Drought Monitor, with D0-D4 shares, the DSCI score and week-over-week change on each row, back to 2000. Filter to counties in drought or by minimum DSCI; schedule it every Thursday.

- **URL**: https://apify.com/bigsky-data-tools/us-drought-monitor-county-stats.md
- **Developed by:** [BigSky Data Tools](https://apify.com/bigsky-data-tools) (community)
- **Categories:** Business, Other
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per event

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## US Drought Monitor County & State Stats: data from the U.S. Drought Monitor (D0-D4, DSCI, Weekly Change)

Get **weekly drought levels for every US county or state** from **U.S. Drought Monitor** data in one flat table: percent of area in D0 to D4, the Drought Severity and Coverage Index (DSCI), the change since last week, and the worst category present. **No API key, no login.** Published by BigSky Data Tools.

> **NOT FOR SAFETY-CRITICAL USE: data may be delayed or incomplete; not for emergency, regulatory or relief-eligibility decisions; use the official U.S. Drought Monitor (droughtmonitor.unl.edu), produced by the National Drought Mitigation Center at the University of Nebraska-Lincoln with USDA and NOAA.**

### Why use this drought data tool?

- 🗺️ **County level for all ~3,200 US counties**, or state level, with 5-digit FIPS codes ready to join to your own data.
- 📈 **DSCI score (0-500) and week-over-week change** on every row, so you can spot where drought is worsening.
- 📅 **History back to 2000**: one week or 25 years of weekly maps in one run.
- 🎯 Filters: states, specific county FIPS, "only counties in drought (D1+)" and a minimum DSCI.
- 🔁 Schedule it every Thursday after the new map is released and get only the latest week.

### How it compares

| | This tool | Typical alternatives |
|---|---|---|
| Counties per run | **All ~3,200 at once, or a filtered set** | One area per run, or one state |
| DSCI score (0-500) | **Yes** | Not offered |
| Week-over-week change | **Yes** | Not offered |
| Only-in-drought / minimum DSCI filter | **Yes** | No |
| History | **Since 2000** | Since 2000 (some tools) |

### Who uses it

Crop insurers, farm lenders and ag banks, grain traders, commodity analysts, utilities and hydropower planners, wildfire-risk teams, water districts, land and farmland investors, and researchers.

### Input example

```json
{ "level": "county", "states": ["TX", "NE"], "weeksBack": 4, "onlyInDrought": true }
```

Whole-country latest map: `{ "level": "county", "weeksBack": 1 }`

### Output example

```json
{ "level": "county", "mapDate": "2026-10-27", "validEnd": "2026-11-02", "state": "TX",
  "county": "Zavala County", "fips": "48507", "pctNone": 0.0, "pctD0to4": 100.0, "pctD1to4": 100.0,
  "pctD2to4": 90.86, "pctD3to4": 64.57, "pctD4": 16.55, "dsci": 372, "dsciChangeWeek": 0,
  "worstCategory": "D4 Exceptional", "inDrought": true, "sourceUrl": "https://droughtmonitor.unl.edu/" }
```

Percentages are cumulative, as in the Drought Monitor statistics: `pctD1to4` is the share of the area in D1 or worse. DSCI = D0-D4 + D1-D4 + D2-D4 + D3-D4 + D4.

### Pricing

**$7 per 1,000 results** ($0.007 per result) plus a $0.01 start fee per run.
You pay per row saved (one county or state per week). The latest week for one state is usually well under a dollar; the whole US for one week is about 3,200 rows.

### FAQ

**Where does the data come from?** From the public statistics service of the U.S. Drought Monitor. Credit: The U.S. Drought Monitor is jointly produced by the National Drought Mitigation Center at the University of Nebraska-Lincoln, the United States Department of Agriculture, the National Oceanic and Atmospheric Administration and the National Aeronautics and Space Administration. Map courtesy of NDMC. This credit line is included in every row. You are responsible for how you use the data.
**When is it updated?** A new map is released every Thursday, valid as of the previous Tuesday.
**Is this tool run by the data agency?** No. BigSky Data Tools is independent and not affiliated with or endorsed by NDMC, the University of Nebraska-Lincoln, USDA, NOAA or NASA.

# Actor input Schema

## `level` (type: `string`):

One row per county per week, or one row per state per week.

## `states` (type: `array`):

Two-letter state codes. Leave empty for all states plus Puerto Rico.

## `countyFips` (type: `array`):

Optional 5-digit county FIPS codes (e.g. 31001) to keep. Their states must be in States, or leave States empty.

## `weeksBack` (type: `integer`):

Weekly maps to return, ending at End date. 1 = latest map only. Ignored if Start date is set.

## `startDate` (type: `string`):

YYYY-MM-DD. Optional. Data starts in 2000.

## `endDate` (type: `string`):

YYYY-MM-DD. Optional, defaults to today.

## `onlyInDrought` (type: `boolean`):

Skip rows with no D1-D4 coverage.

## `minDsci` (type: `integer`):

Drought Severity and Coverage Index, 0-500. Skip rows below this.

## `maxResults` (type: `integer`):

Maximum rows to save (each saved row is one billable result).

## Actor input object example

```json
{
  "level": "county",
  "states": [
    "NE",
    "KS"
  ],
  "weeksBack": 1,
  "onlyInDrought": false,
  "minDsci": 0,
  "maxResults": 10000
}
```

# Actor output Schema

## `dataset` (type: `string`):

Default dataset containing all output records

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "states": [
        "NE",
        "KS"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("bigsky-data-tools/us-drought-monitor-county-stats").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "states": [
        "NE",
        "KS",
    ] }

# Run the Actor and wait for it to finish
run = client.actor("bigsky-data-tools/us-drought-monitor-county-stats").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "states": [
    "NE",
    "KS"
  ]
}' |
apify call bigsky-data-tools/us-drought-monitor-county-stats --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,bigsky-data-tools/us-drought-monitor-county-stats"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/kp2OexJtAxFZjLpZR/builds/rvY6Y2ftkFgCvdX8M/openapi.json
