For every upazila in Bangladesh and each of fifteen crops, the national land resource inventory grades the land into five suitability classes and reports how many hectares fall into each. It also assigns each upazila to a numbered crop zone — a contiguous production belt for that crop.
That is a survey of the land, not of the harvest. It says where a crop can grow well given soil, drainage, flooding depth and the length of the growing season. It does not say where the crop is grown, what yields are achieved, or whether growing it there would be profitable. Those depend on irrigation, markets, labour and price, none of which are in this dataset.
| Class | Meaning | Index weight |
|---|---|---|
| Very suitable | No significant limitation; the crop performs to its potential. | 100 |
| Suitable | Minor limitations that are easily managed. | 75 |
| Moderately suitable | Moderate limitations; noticeably reduced performance, still viable. | 50 |
| Marginally suitable | Severe limitations; only worth cultivating under favourable conditions. | 25 |
| Not suitable | Limitations cannot be overcome at a sensible cost. | 0 |
The ordering follows the FAO Framework for Land Evaluation (S1 → S2 → S3 → N), split into five grades as in Bangladesh's own Land Resource Inventory.
Five hectare figures per place per crop cannot colour a map, and no single one of them is a fair summary. Very suitable hectares makes every large upazila look good and every small one look bad, because it is an area pretending to be a quality measure. Percent very suitable throws away the difference between land that is merely suitable and land that is outright unusable.
CSI keeps all five classes and collapses them into one 0–100 grade by weighting each class by the area it covers:
So a CSI of 75 means the average hectare in this region sits at the "suitable" grade. 100 means every hectare is very suitable; 0 means none of it can grow the crop at all. Because it is a ratio, it is size-independent: a 6,000 ha upazila and a 60,000 ha district are directly comparable.
The bands below are set on the meaning of the score, not on how Bangladesh happens to be distributed. Anchoring them to the national spread would make the colours drift every time the inventory is re-surveyed and — worse — would force half the country to look "below average" for a crop that in fact grows well almost everywhere. With fixed bands, one colour means one thing in every crop, every region and every zoom level.
| CSI | Band | What it means on the ground |
|---|---|---|
| 80–100 | Highly suitable | Prime land — the great majority is very suitable. |
| 65–80 | Suitable | Most of the region reaches the suitable grade or better. |
| 50–65 | Moderate | Land here averages the moderately-suitable grade. |
| 35–50 | Limited | A minority of the land reaches the moderate grade. |
| 20–35 | Marginal | Only scattered patches are worth cultivating. |
| 0–20 | Not suitable | Almost all land here is graded unsuitable. |
A district's figure is produced by summing the five class areas of its upazilas and recomputing CSI — never by averaging the upazila indices. Averaging would give a 4,000 ha city thana the same say as a 60,000 ha upazila, and would produce a number that describes no actual piece of land. A district's crop zone, by contrast, is reported as the zone covering most of its area, because zones are categories and cannot be averaged at all.
The inventory files identify places by name, not by code:
District Name and Upazila Name. They were also transliterated
before the 2018 official renamings, so they say
BARISAL, CHITTAGONG, COMILLA, JESSORE
and BOGRA where the census boundaries now say
Barishal, Chattogram, Cumilla, Jashore and Bogura. Sadar upazilas appear as the bare
district name, and spellings drift (Chandanais / Chandanaish,
Sarsa / Sharsha, Netrokona / Netrakona).
A plain text join would therefore lose roughly a fifth of the country — silently, as blank polygons. Instead each row goes through a four-stage match, stopping at the first stage that gives exactly one answer:
brsl.Upazilas are matched inside their already-resolved district, so the fuzzy stages only ever choose between the handful of upazilas in one district. That is what makes a fuzzy step safe here when it would be reckless against all 500 at once — and it also disambiguates the duplicated names (four Kaliganj, three Nawabganj, two Sherpur, two Companiganj) for free. Finally, an upazila whose name matches its own district is sent to that district's "… Sadar" polygon.
CropAtlasMatchReport() in the browser console on the main page.
The inventory covers 466 upazilas. The boundary file has around 495, so roughly thirty are absent — city corporation thanas (Dhaka Metro, Khulna Metro, Patenga, Panchlaish, Boalia) which have no rural land to grade, plus a few hill and char thanas. Those are drawn with a diagonal hatch rather than a grey fill, because a flat grey still reads as a value on a colour scale and the eye files it near "very low" — which is the opposite of the truth for land that was simply never surveyed.
| Coverage flag | Meaning |
|---|---|
| Fully surveyed | At least 90% of the region's upazilas are in the inventory. |
| Partly surveyed | 50–89% covered — the figures describe the surveyed part only. |
| Thin coverage | Under half covered; treat percentages with real caution. |
| Not surveyed | No inventory data for this crop here. |
A region with partial coverage is outlined with a dashed border on the map as well, so the caveat travels with the shape rather than living only in a tooltip.
Alongside the five classes, each source file assigns every upazila a zone number for that crop. Zones group upazilas into contiguous production belts: a low number is a core growing area, a high one is peripheral. Zone definitions differ slightly from crop to crop, so this atlas labels them generically (Zone 1 — core belt, … Zone 5 — outside the belt) rather than inventing crop-specific names the data does not support.
Zone and CSI are related but not the same. A zone reflects an official planning decision about where a crop belongs; CSI reflects the graded land itself. Where the two disagree — high-CSI land outside the core zone, or low-CSI land inside it — that disagreement is usually the interesting part.
Press Esc to close the compare panel, or to return to the whole country.
Clicking any region on the map drills into it; the breadcrumb walks back out.
Land suitability and crop zoning: Bangladesh land resource inventory, distributed as
one CSV per crop (<Crop>-zone(Zone-En).csv) with columns
District Name, Upazila Name, the five class areas in hectares,
Total Area, and a crop-specific zone column.
Administrative boundaries: the same division / district / upazila GeoJSON used by the
BDHS Health Atlas and the Bangladesh Air Quality Atlas, keyed on the 8-digit
GEO_CODE (2 digits division + 2 district + 2 upazila). Sharing the boundary
files is deliberate — it means a place picked in one atlas is exactly the same place in
the other two.
The CSVs are served unmodified beside this page, so any figure on screen can be traced back to its source row without a conversion step in between.