Findings
Six readings of 8479 pages of Nigerian agricultural discourse, in the order they are worth reading. Each one states the denominator it used and links every claim back to the post it came from.
What this evidence can and cannot support
Who is in this corpus, and who is not. Nairaland is a web forum, so its agriculture section is written by people who are literate in English, have a data connection, and choose to post publicly. That skews urban-adjacent, commercially minded and male. The farmer this research was commissioned to serve — intermittent connectivity, for whom SMS outlives data — is disproportionately absent from it. Treat this as strong evidence about the trading, input-dealing and service-provider layer of Nigerian agriculture, and as weak evidence about the smallholder. Where a finding below concerns smallholders, it is inference from what others say about them, not testimony.
Most of this corpus is advertising. Around 58% of pages are promotional listings. That is not a defect — a promo corpus is itself a record of what is sold, at what price, by whom, and it is where the price data comes from — but it means findings about discussion rest on roughly 1,800 pages, not 8,479. Every table below prints the denominator it actually used.
Instances, pages, threads and authors are four different numbers. One page can emit a label several times; one thread runs to hundreds of pages. Counting label emissions lets a single megathread outvote a hundred separate conversations. Headline figures here are counted per thread, and where the ranking changes depending on which you count — it does, for pain points — both are shown rather than the flattering one.
Prices are never pooled across time. The corpus spans years in which the naira went from roughly ₦400 to ₦1,500 against the dollar. An average price across that window describes nothing that ever happened. Prices are reported by period, and each is dated by the timestamp of the individual post that stated it.
A mentioned place is not the poster's place. A Lagos trader discussing Benue yams tags Benue. Location fields record what was discussed, not where anyone was, which matters most for the locality question and is why that page triangulates three independent signals instead of counting mentions.
The coding is a local language model's reading, checked mechanically. Every page was read by Qwen3.5-9B against a frozen vocabulary, with the vocabulary enforced during generation so an invented label is structurally impossible. Quotes are verified character-for-character against the specific post cited: 96% match. Labels citing a post that is not on the page were dropped at write time rather than displayed. What none of that checks is whether the model understood a page — only that it did not fabricate.
The six
Farmers do try to organise -- and then leave for WhatsApp to do it. What the forum can and cannot host.
What is actually hurting people, ranked three ways, with the post behind every claim.
What things cost, by commodity and period -- never averaged across a currency collapse.
Where trade actually happens, triangulated from three independent signals rather than counting mentions.
How people prove they really farm -- and what that implies for verifying them.
What the vocabulary failed to describe. Deliberately published.
How to read a number on this site
Every aggregate states its basis in the column header — threads, pages, authors or instances. Cells resting on very few threads are marked, because a number that comes from two conversations is a different kind of thing from the same number drawn from two hundred. Where a gate excluded data, the count excluded is printed rather than quietly applied.