Civ 6 District Adjacency Calculator
16 districts supportedEvery district with adjacency rules — set the six neighbouring tiles and compare two spots side by side.
Center tile — district to place
All playable civilization–leader pairs are listed. Those under “Changes adjacency” have a unique ability that affects these calculations.
All districts that have adjacency rules are supported, including unique districts. Districts without adjacency rules (Aqueduct, Neighborhood, …) are shown as unsupported.
Plan A
Set at least one neighbor tile (or the river) to see this plan's bonus.
Plan B
Set at least one neighbor tile (or the river) to see this plan's bonus.
How this calculator works
Pick the district you want to place on the center tile, then describe the six neighboring tiles. The calculator evaluates every adjacency rule that applies to that district and shows the total bonus for two candidate placements side by side, so you can decide where the district actually earns more.
Every number is traceable: expand “Why these numbers?” to see which rule fired, how many tiles matched, and the rule ID from the game data. Rules are not hand-typed — they are extracted from the Gathering Storm gameplay database (final patch, all official DLC, optional game modes off) and versioned as a data snapshot.
Districts without adjacency rules (Aqueduct, Neighborhood, …) are marked as unsupported instead of being silently miscalculated.
Known limitations
- Adjacency changes from civilization abilities are included for Japan, the Netherlands, Brazil, Indonesia, Gaul and Mali, and from leader abilities for Jadwiga, Jayavarman and Theodora. Unique districts (Seowon, Lavra, …) can be placed on the center tile and also count as neighbors.
- Policy cards and buildings that multiply adjacency bonuses are not included; the result is the base adjacency yield.
- Adjacency rules were confirmed against the game data on 2026-07-20. One case remains open — whether the City Center counts toward the “per 2 adjacent districts” bonus depends on engine behaviour that the data does not define. Results affected by it are flagged inline.