CS/RES/04 · 27 May 2026 · 4 min read

Cocoa, coffee, sugar.

Three weather-driven softs in narrow geographies. Different variables, different lags, one framework.

Most agricultural commodities trade on a mix of weather, policy, and speculation. Three of the softs have unusually clean weather-to-supply chains because production is concentrated in tiny strips of land. Cocoa in West Africa. Arabica coffee in Brazil's southeast, robusta in Vietnam's Central Highlands. Sugar in Brazil's center-south. The framework for each is the same — find the geography, identify the crop's critical phenology window, measure weather z-scores against history, look for forward-return effects — but the variables and the lags are different.

Cocoa drought in West Africa

About 60% of the world's cocoa comes from a narrow strip across Côte d'Ivoire and Ghana. The pre-crop window — when the next main harvest's pod set is being determined — runs September through December. We scan eight weather variables across this window using ERA5 reanalysis and ask which predict three-month forward cocoa futures returns. One wins clearly: soil moisture. When the seasonally-windowed z-score sits at −0.66 or lower (roughly the bottom third of history), three-month forward returns were substantially positive; in the placebo set, near zero.

Soil moisture z ≤ −0.66· event +22.7%· placebo +0.8%· spread +21.9 pp· n=17, p=0.052

The 2023–24 cocoa tripling is the canonical example of this chain firing. It is also a warning. p=0.052 on seventeen drought events over 25 years is borderline. The model we'd actually deploy applies multi-comparison correction across the variable scan, restricts to the pre-registered phenology window, and uses the signal as an alerting layer rather than a continuous regression.

Coffee frost and heat in Brazil

Arabica coffee has two independent weather channels. The dominant tail risk is frost: a step-function shock that kills branches outright. Brazil's coffee belt is just far enough south to occasionally freeze. 1975, 1994, and 2021 are the modern reference events, each followed by a multi-quarter rally. The signal is frost-degree-days summed over the Brazilian winter — June through August. It fires roughly once a decade and is mechanically interpretable: dead plants take three to five years to replace.

In the years frost does not fire, the dominant channel is heat stress during cherry development. The signal is a four-month rolling z-score of January Tmax. A +1.5σ month doesn't kill plants; it just makes the cherries developing right then a few percent lighter. That harvest reaches port six to nine months later, certified stocks tighten over the next three to six months, and the twelve-month forward return window catches the full pass-through.

Robusta is mostly drought-driven. Vietnam's Central Highlands rarely freeze and never get hot enough to step-function fail. The dry-season rainfall anomaly during the March–April flowering window is the channel that matters there.

Sugar the cane growing season

Brazil's center-south drives global sugar; India and Thailand are the next-largest producers. The cane growing season runs roughly April through October in Brazil. The variables are familiar from the other two crops, with one wrinkle. Drought during cane growth lowers yield per hectare. Heat during ripening reduces sugar content per ton of cane (the cane is still there; the sucrose in it is lower). Winter frost on cane is rare but devastating, like the coffee frost story one state north.

The wrinkle is ENSO. Brazilian center-south rainfall is strongly conditioned on the Niño 3.4 SST index — El Niño years tend to be drier, La Niña wetter — so we condition the signal on the prevailing ENSO state rather than looking at raw rainfall anomalies in isolation. The Indian monsoon adds a second-order signal on global sugar balance, but at a longer lag and with more policy noise (export bans).

The sugar analysis is less mature than cocoa or coffee. The framework is identical; the in-sample event count is smaller, and we have not yet locked a single-variable signal that survives the same multi-comparison discipline we apply to the other two.

Plot 04 · Phenology calendar
When weather matters for each crop — by month
JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC Cocoa Coffee Sugar W. Africa Brazil + VN Brazil C-S DRYNESS · PRE-CROP HEAT FROST · BR WINTER FLOWER RAIN CANE GROWING · DROUGHT & HEAT
Drought / rain Frost (step-function) Heat stress (integrative)
Schematic. Each crop has a different time-of-year sensitivity dictated by its phenology. Cocoa's signal lives in late-year pre-crop dryness in West Africa. Coffee has three windows — Brazilian frost in winter, Brazilian heat during cherry development in January, flowering rain in September–October — operating on different timescales. Sugar's broad cane-growing window in Brazil's center-south is drought- and heat-sensitive throughout, with ENSO conditioning on top.

Three crops, three calendars, one framework. The signals come from the same playbook — narrow geography, phenology window, weather z-score, forward returns — but the variables, the lags, and the sample sizes vary. Each signal is small-sample by nature, because shock events are rare. Multi-comparison correction matters more than the headline number.

The framework is portable. The implementation is per-crop. The next ten years of work in this space is engineering, not invention.

None of these signals is yet a live trade. The cocoa rule clears out-of-sample but has not been paper-traded. The coffee rules have a locked cell that we have committed to in writing but not yet deployed at any size. The sugar work is earlier. We will say so until that changes.


Causal Systems  ·  CS/RES/04  ·  Data: ERA5-Land reanalysis · ICE cocoa, KC coffee, sugar #11 futures · 1995–2025
Push back, point out something we missed, or just say hi → hello@causalsystems.co
Continue reading
CS/RES/01
Fertilizer to food.
CS/RES/02
Weather as a price driver.
CS/RES/03
News sensitivity by asset class.