The most comprehensive live agricultural dataset in East Africa 27 datasets and 251 declared fields on Kenya, Tanzania, Uganda and Rwanda, all behind 1 API key: county prices from the official market system and the auctions, cropland vegetation read against each district's own seasonal normal, customs flows, the legal record, the daily press, and readings from stations already standing in the field. No field reaches an account until it was declared in code and approved by hand.
The catalogue Create a free account
A live snapshot, read 2026-11-02 Every row and chart below came off the platform on that date, through the exact call printed on its own dataset page. Run the same call today and the numbers will have moved.
DAP retail, official market table, KES per kg Blank wholesale means the market reported retail only. 7 counties carried a fertilizer price fresher than a month at the snapshot.
Latest high-trust news signal Gakui cooperative in Murang'a sold coffee in the just-ended season at an average of $306 per bag (about Ksh 121/kg cherry), below county and national averages.
"In the season just ended, Gakui sold 52,979 kg of coffee at an average of $306 per bag, about Ksh 121 per kilo of cherry."
Kilimo News , 2026-11-02. Type price_level, commodity coffee, confidence 0.9. Direction is left as unknown when the article does not support a causal claim.
Latest legal signal Ukraine amends list of non-animal food and feed subject to enhanced import controls
G/SPS/N/UKR/275/Add.1, Uganda, status in_force, comment deadline . Regulatory and legal signals
243 counties and districts, each against its own normal Turkana, Kenya · -0.09 vs own seasonal normal Marsabit, Kenya · -0.02 vs own seasonal normal Mandera, Kenya · 0.00 vs own seasonal normal Wajir, Kenya · 0.00 vs own seasonal normal West Pokot, Kenya · -0.18 vs own seasonal normal Samburu, Kenya · -0.10 vs own seasonal normal Isiolo, Kenya · -0.02 vs own seasonal normal Baringo, Kenya · -0.18 vs own seasonal normal Elgeyo-Marakwet, Kenya · -0.11 vs own seasonal normal Trans Nzoia, Kenya · -0.05 vs own seasonal normal Bungoma, Kenya · 0.00 vs own seasonal normal Garissa, Kenya · 0.00 vs own seasonal normal Uasin Gishu, Kenya · -0.06 vs own seasonal normal Kakamega, Kenya · 0.00 vs own seasonal normal Laikipia, Kenya · -0.18 vs own seasonal normal Busia, Kenya · +0.04 vs own seasonal normal Meru, Kenya · -0.04 vs own seasonal normal Nandi, Kenya · 0.00 vs own seasonal normal Siaya, Kenya · 0.00 vs own seasonal normal Nakuru, Kenya · -0.09 vs own seasonal normal Vihiga, Kenya · +0.03 vs own seasonal normal Nyandarua, Kenya · -0.06 vs own seasonal normal Tharaka, Kenya · -0.01 vs own seasonal normal Kericho, Kenya · -0.03 vs own seasonal normal Kisumu, Kenya · -0.02 vs own seasonal normal Nyeri, Kenya · -0.07 vs own seasonal normal Tana River, Kenya · 0.00 vs own seasonal normal Kitui, Kenya · -0.01 vs own seasonal normal Kirinyaga, Kenya · -0.02 vs own seasonal normal Embu, Kenya · -0.01 vs own seasonal normal Homa Bay, Kenya · -0.02 vs own seasonal normal Bomet, Kenya · -0.03 vs own seasonal normal Nyamira, Kenya · 0.00 vs own seasonal normal Narok, Kenya · -0.07 vs own seasonal normal Kisii, Kenya · 0.00 vs own seasonal normal Murang'a, Kenya · -0.02 vs own seasonal normal Migori, Kenya · -0.01 vs own seasonal normal Kiambu, Kenya · -0.02 vs own seasonal normal Machakos, Kenya · -0.01 vs own seasonal normal Kajiado, Kenya · -0.01 vs own seasonal normal Nairobi, Kenya · -0.03 vs own seasonal normal Makueni, Kenya · +0.01 vs own seasonal normal Lamu, Kenya · 0.00 vs own seasonal normal Kilifi, Kenya · +0.02 vs own seasonal normal Taita Taveta, Kenya · 0.00 vs own seasonal normal Kwale, Kenya · +0.01 vs own seasonal normal Mombasa, Kenya · +0.02 vs own seasonal normal Dodoma, Tanzania · 0.00 vs own seasonal normal Arusha, Tanzania · 0.00 vs own seasonal normal Kilimanjaro, Tanzania · 0.00 vs own seasonal normal Tanga, Tanzania · 0.00 vs own seasonal normal Morogoro, Tanzania · -0.01 vs own seasonal normal Pwani, Tanzania · -0.01 vs own seasonal normal Dar-es-salaam, Tanzania · -0.01 vs own seasonal normal Lindi, Tanzania · -0.02 vs own seasonal normal Mtwara, Tanzania · -0.02 vs own seasonal normal Ruvuma, Tanzania · -0.01 vs own seasonal normal Iringa, Tanzania · 0.00 vs own seasonal normal Mbeya, Tanzania · 0.00 vs own seasonal normal Singida, Tanzania · 0.00 vs own seasonal normal Tabora, Tanzania · 0.00 vs own seasonal normal Rukwa, Tanzania · 0.00 vs own seasonal normal Kigoma, Tanzania · 0.00 vs own seasonal normal Shinyanga, Tanzania · -0.01 vs own seasonal normal Kagera, Tanzania · -0.03 vs own seasonal normal Mwanza, Tanzania · -0.02 vs own seasonal normal Mara, Tanzania · -0.01 vs own seasonal normal Manyara, Tanzania · 0.00 vs own seasonal normal Njombe, Tanzania · -0.01 vs own seasonal normal Katavi, Tanzania · 0.00 vs own seasonal normal Simiyu, Tanzania · -0.02 vs own seasonal normal Geita, Tanzania · -0.03 vs own seasonal normal Songwe, Tanzania · 0.00 vs own seasonal normal Kaskazini Unguja, Tanzania · 0.00 vs own seasonal normal Kusini Unguja, Tanzania · -0.01 vs own seasonal normal Mjini Magharibi, Tanzania · 0.00 vs own seasonal normal Kaskazini Pemba, Tanzania · 0.00 vs own seasonal normal Kusini Pemba, Tanzania · -0.03 vs own seasonal normal Buikwe, Uganda · -0.01 vs own seasonal normal Bukomansimbi, Uganda · no live value in this window Butambala, Uganda · no live value in this window Buvuma, Uganda · no live value in this window Gomba, Uganda · no live value in this window Kalangala, Uganda · -0.04 vs own seasonal normal Kalungu, Uganda · no live value in this window Kampala, Uganda · no live value in this window Kassanda, Uganda · -0.01 vs own seasonal normal Kayunga, Uganda · no live value in this window Kiboga, Uganda · no live value in this window Kyankwanzi, Uganda · no live value in this window Kyotera, Uganda · no live value in this window Luwero, Uganda · no live value in this window Lwengo, Uganda · no live value in this window Lyantonde, Uganda · no live value in this window Masaka, Uganda · no live value in this window Mityana, Uganda · +0.02 vs own seasonal normal Mpigi, Uganda · no live value in this window Mubende, Uganda · no live value in this window Mukono, Uganda · 0.00 vs own seasonal normal Nakaseke, Uganda · no live value in this window Nakasongola, Uganda · no live value in this window Rakai, Uganda · no live value in this window Ssembabule, Uganda · no live value in this window Wakiso, Uganda · 0.00 vs own seasonal normal Amuria, Uganda · no live value in this window Budaka, Uganda · no live value in this window Bududa, Uganda · -0.02 vs own seasonal normal Bugiri, Uganda · -0.01 vs own seasonal normal Bugweri, Uganda · -0.01 vs own seasonal normal Bukedea, Uganda · no live value in this window Bukwo, Uganda · no live value in this window Bulambuli, Uganda · no live value in this window Busia, Uganda · 0.00 vs own seasonal normal Butaleja, Uganda · no live value in this window Butebo, Uganda · no live value in this window Buyende, Uganda · no live value in this window Iganga, Uganda · 0.00 vs own seasonal normal Jinja, Uganda · -0.01 vs own seasonal normal Kaberamaido, Uganda · +0.02 vs own seasonal normal Kalaki, Uganda · 0.00 vs own seasonal normal Kaliro, Uganda · no live value in this window Kamuli, Uganda · -0.02 vs own seasonal normal Kapchorwa, Uganda · -0.03 vs own seasonal normal Kapelebyong, Uganda · no live value in this window Katakwi, Uganda · no live value in this window Kibuku, Uganda · no live value in this window Kumi, Uganda · no live value in this window Kween, Uganda · no live value in this window Luuka, Uganda · -0.01 vs own seasonal normal Manafwa, Uganda · no live value in this window Mayuge, Uganda · no live value in this window Mbale, Uganda · no live value in this window Namayingo, Uganda · +0.03 vs own seasonal normal Namisindwa, Uganda · 0.00 vs own seasonal normal Namutumba, Uganda · no live value in this window Ngora, Uganda · no live value in this window Pallisa, Uganda · no live value in this window Serere, Uganda · no live value in this window Sironko, Uganda · -0.01 vs own seasonal normal Soroti, Uganda · no live value in this window Tororo, Uganda · 0.00 vs own seasonal normal Abim, Uganda · no live value in this window Adjumani, Uganda · -0.06 vs own seasonal normal Agago, Uganda · no live value in this window Alebtong, Uganda · no live value in this window Amolatar, Uganda · no live value in this window Amudat, Uganda · no live value in this window Amuru, Uganda · no live value in this window Apac, Uganda · -0.03 vs own seasonal normal Arua, Uganda · 0.00 vs own seasonal normal Dokolo, Uganda · -0.02 vs own seasonal normal Gulu, Uganda · no live value in this window Kaabong, Uganda · no live value in this window Karenga, Uganda · no live value in this window Kitgum, Uganda · no live value in this window Koboko, Uganda · -0.01 vs own seasonal normal Kole, Uganda · -0.02 vs own seasonal normal Kotido, Uganda · no live value in this window Kwania, Uganda · no live value in this window Lamwo, Uganda · no live value in this window Lira, Uganda · -0.02 vs own seasonal normal Madi Okollo, Uganda · -0.02 vs own seasonal normal Maracha, Uganda · -0.01 vs own seasonal normal Moroto, Uganda · no live value in this window Moyo, Uganda · no live value in this window Nabilatuk, Uganda · no live value in this window Nakapiripirit, Uganda · no live value in this window Napak, Uganda · no live value in this window Nebbi, Uganda · no live value in this window Nwoya, Uganda · -0.02 vs own seasonal normal Obongi, Uganda · no live value in this window Omoro, Uganda · no live value in this window Otuke, Uganda · no live value in this window Oyam, Uganda · no live value in this window Pader, Uganda · no live value in this window Pakwach, Uganda · no live value in this window Yumbe, Uganda · -0.04 vs own seasonal normal Zombo, Uganda · -0.02 vs own seasonal normal Buhweju, Uganda · no live value in this window Buliisa, Uganda · +0.03 vs own seasonal normal Bundibugyo, Uganda · -0.02 vs own seasonal normal Bunyangabu, Uganda · -0.01 vs own seasonal normal Bushenyi, Uganda · -0.05 vs own seasonal normal Hoima, Uganda · -0.02 vs own seasonal normal Ibanda, Uganda · no live value in this window Isingiro, Uganda · no live value in this window Kabale, Uganda · no live value in this window Kabarole, Uganda · -0.01 vs own seasonal normal Kagadi, Uganda · no live value in this window Kakumiro, Uganda · no live value in this window Kamwenge, Uganda · no live value in this window Kanungu, Uganda · 0.00 vs own seasonal normal Kasese, Uganda · 0.00 vs own seasonal normal Kazo, Uganda · no live value in this window Kibaale, Uganda · no live value in this window Kikuube, Uganda · no live value in this window Kiruhura, Uganda · no live value in this window Kiryandongo, Uganda · -0.05 vs own seasonal normal Kisoro, Uganda · 0.00 vs own seasonal normal Kitagwenda, Uganda · +0.01 vs own seasonal normal Kyegegwa, Uganda · no live value in this window Kyenjojo, Uganda · -0.03 vs own seasonal normal Masindi, Uganda · 0.00 vs own seasonal normal Mbarara, Uganda · no live value in this window Mitooma, Uganda · no live value in this window Ntoroko, Uganda · no live value in this window Ntungamo, Uganda · no live value in this window Rubanda, Uganda · no live value in this window Rubirizi, Uganda · -0.02 vs own seasonal normal Rukiga, Uganda · no live value in this window Rukungiri, Uganda · no live value in this window Rwampara, Uganda · no live value in this window Sheema, Uganda · no live value in this window Nyarugenge, Rwanda · -0.04 vs own seasonal normal Gasabo, Rwanda · -0.02 vs own seasonal normal Kicukiro, Rwanda · -0.04 vs own seasonal normal Nyanza, Rwanda · -0.04 vs own seasonal normal Gisagara, Rwanda · -0.02 vs own seasonal normal Nyaruguru, Rwanda · +0.01 vs own seasonal normal Huye, Rwanda · -0.05 vs own seasonal normal Nyamagabe, Rwanda · -0.04 vs own seasonal normal Ruhango, Rwanda · -0.02 vs own seasonal normal Muhanga, Rwanda · -0.04 vs own seasonal normal Kamonyi, Rwanda · -0.03 vs own seasonal normal Karongi, Rwanda · -0.02 vs own seasonal normal Rutsiro, Rwanda · -0.04 vs own seasonal normal Rubavu, Rwanda · -0.01 vs own seasonal normal Nyabihu, Rwanda · -0.03 vs own seasonal normal Ngororero, Rwanda · -0.04 vs own seasonal normal Rusizi, Rwanda · 0.00 vs own seasonal normal Nyamasheke, Rwanda · -0.02 vs own seasonal normal Rulindo, Rwanda · -0.03 vs own seasonal normal Gakenke, Rwanda · -0.05 vs own seasonal normal Musanze, Rwanda · 0.00 vs own seasonal normal Burera, Rwanda · -0.03 vs own seasonal normal Gicumbi, Rwanda · -0.02 vs own seasonal normal Rwamagana, Rwanda · -0.03 vs own seasonal normal Nyagatare, Rwanda · -0.03 vs own seasonal normal Gatsibo, Rwanda · -0.06 vs own seasonal normal Kayonza, Rwanda · -0.04 vs own seasonal normal Kirehe, Rwanda · -0.04 vs own seasonal normal Ngoma, Rwanda · -0.01 vs own seasonal normal Bugesera, Rwanda · -0.03 vs own seasonal normal ≤ −0.10 −0.10 to −0.04 near normal +0.02 to +0.05 ≥ +0.05
Cropland NDVI minus each unit's own seasonal baseline: a 10 m composite calibrated onto an eight-year 300 m climatology. 243 units: 47 Kenyan counties, 31 Tanzanian regions, 135 Ugandan districts, 30 Rwandan districts. Snapshot 2026-11-02.
No unit on this map is compared with its neighbour. Each is compared with itself: this dekad's cropland vegetation against what the same weeks looked like over the 8 years before. A county that is always greener than everyone around it only counts as above normal once it beats its own history.
At this snapshot 8 of the 243 units read at or above normal, and most of the region was still climbing out of a dry July. The story is the same across 3 independent sources: the July early-warning bulletin named Kakamega, Bungoma, Uasin Gishu, Elgeyo Marakwet and Trans Nzoia as a hotspot; the rainfall anomaly of 26 August put Bungoma at 26 % and Kakamega at 39 % of normal for the long rains; the press signals a week later named the same 5 counties. 4 datasets, 1 shared county vocabulary, 1 answer.
The fresh reading is a 10 m optical product, cloud-masked and cropland-masked, calibrated per unit against an 8-year 300 m climatology. Where the 2 disagree past a fixed tolerance, the platform falls back to the lagged product and says so in the response rather than guessing.
Demand and crop stress
Sensor data from your own weather station and soil nodes A farmer's sensor readings, and everything the platform computes on them, go to the account that owns the hardware and nowhere else. They sit on this public site only so a station owner can see what the hardware delivers; the stations and soil nodes themselves are described at nuasense.com/products . Below: 48 hours of spray quality at the Naivasha station, 1 cell per hour, straight from the derived variables dataset.
ideal good marginal poor unsuitable
Nights unsuitable for inversion risk, afternoons limited by delta-T, the usable windows in the hours after sunrise and before sunset. Derived weather variables , Disease and pest risk , Root-zone water balance The agriculture dataset catalogue: 9 groups, 27 datasets 9 groups, 27 datasets, 251 fields. Every dataset with its fields and filters
API access and pricing for East Africa agriculture data The full rate card, the error codes and how the platform is built