# Weekly Crop Progress and Condition by State (`standardwork/crop-progress-weekly`) Actor

Percent planted, harvested and crop condition ratings by state every week, plus soil moisture and fieldwork days, with last week, last year and 5-year average.

- **URL**: https://apify.com/standardwork/crop-progress-weekly.md
- **Developed by:** [Standard Work Co.](https://apify.com/standardwork) (community)
- **Categories:** Business, Other
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

$2.00 / 1,000 results

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

## Weekly Crop Progress and Condition by State

Informational only. Not for navigation, safety, emergency, financial, medical, or legal decisions. Check the official source before you rely on it.

Get the weekly U.S. crop progress report as clean rows: percent planted, emerged, mature and harvested by crop and state, crop condition ratings (very poor to excellent, plus good and excellent combined), pasture condition, topsoil and subsoil moisture, and days suitable for fieldwork. Each progress row has this week, last week, last year and the 5-year average.

### What you get (one row per crop, measure and state)

Release date, week ending, crop, measure, state, unit, this week, last week, last year, 5-year average, condition and moisture percentages, the source table title, a link to the source file, self-check fields (qcStatus, qcNotes) and an error field. Missing values such as (NA) are null.

### How to use (no code)

1. Leave the defaults for the newest full report, or pick how many weeks, which crops and which states.
2. Click Start. It takes a few seconds. Schedule it for Monday evenings or Tuesday mornings during the season.

### Limits

Reports come out weekly, about April to late November. Off-season runs return the last report and flag it as more than 2 weeks old. Which crops and states appear changes through the season, as NASS adds and drops tables.

### Disclaimer

Informational only. Not for navigation, safety, emergency, financial, medical, or legal decisions. Check the official source before you rely on it.
This is an independent tool by Standard Work Co. It is not affiliated with, endorsed by, or sponsored by any government agency named here. Agency names are used only to say where the data comes from.
The data comes from public government sources and is passed through as published, only reformatted. Government data can be preliminary, late, missing, revised, or wrong, and this tool can fail too. This output is not an official government record.
Provided "as is" with no warranty of any kind, including accuracy, completeness, or timeliness. Liability is limited as stated in the Apify Standard Actor Contract for this tool.
Crop progress: estimates only, not trading or financial advice.

### Data sources and credits

USDA National Agricultural Statistics Service (NASS), Crop Progress weekly release, files from the USDA ESMIS archive (esmis.nal.usda.gov). Public domain; credit to USDA NASS.

# Actor input Schema

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

How many of the newest weekly reports to return (1 to 8). 1 = latest only.

## `crops` (type: `array`):

Keep only these crops, e.g. corn, soybeans, winter wheat, cotton, pasture. Leave empty for all, including soil moisture and fieldwork days.

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

Keep only these states by full name, e.g. Iowa, Kentucky. Leave empty for all.

## `includeMultiStateTotals` (type: `boolean`):

Keep the 18 States style total rows and their previous week and previous year rows.

## Actor input object example

```json
{
  "weeksBack": 1,
  "includeMultiStateTotals": true
}
```

# Actor output Schema

## `results` (type: `string`):

All rows in the default dataset.

# 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 = {};

// Run the Actor and wait for it to finish
const run = await client.actor("standardwork/crop-progress-weekly").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 = {}

# Run the Actor and wait for it to finish
run = client.actor("standardwork/crop-progress-weekly").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 '{}' |
apify call standardwork/crop-progress-weekly --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,standardwork/crop-progress-weekly"
        }
    }
}
```

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/vbqIbNYdRHZfVYZBg/builds/iCZCdfxEF6lFaZ926/openapi.json
