A living cross-section of the world, drawn from the game's real worldgen odds. Drag to set your mining depth, click an ore column to inspect it.
Branch mine at Y 16 for steady iron, or strip exposed mountain stone above Y 200 where the upper batch peaks at Y 232.
Y 16 underground, Y 232 in mountains. Every figure on this page is read from the 26.2 worldgen files the game itself ships, so it reflects what actually generates rather than a community estimate.
Iron is the only ore with two genuinely separate peaks, and most guides mention just one of them. The underground batch is a triangle between Y -24 and Y 56 peaking at Y 16. The mountain batch is a much bigger triangle from Y 80 to Y 384 peaking around Y 232, and it attempts 90 veins per chunk against the underground batch's 10.
That 90 looks decisive until you consider what is actually up there. Above Y 80 most columns are open air, and a vein can only place inside stone. In a flat plains biome the mountain batch has almost nothing to generate into. Inside a tall Jagged Peaks or Stony Peaks biome it has a great deal, which is why exposed mountain stone above Y 200 can be extraordinarily rich.
For a player without a mountain nearby, Y 16 is the answer. For a player standing on one, stripping the stone near the summit will out-produce any underground tunnel by a wide margin.
Minecraft places ore in separate batches, each with its own count, height range and vein size. A discard value above zero means the game throws away veins that would touch open air, which is what decides whether caving or tunnelling is the better approach.
| Batch | Veins/chunk | Range | Vein size | Air discard |
|---|---|---|---|---|
| ore_iron_upper | 90 | triangle Y 80 to 384, peak Y 232 | 9 | none |
| ore_iron_middle | 10 | triangle Y -24 to 56, peak Y 16 | 9 | none |
| ore_iron_small | 10 | uniform Y -64 to 72 | 4 | none |
ore_iron_upper attempts 90 veins per chunk against the underground batch's 10, but it can only place inside solid stone. In flat terrain there is barely any stone above Y 80 for it to use. In a peaks biome there is, and that is where the batch pays out.
The peak level differs for each ore, and a few of them share a band closely enough to mine on one trip. The full interactive chart is on the ore distribution hub.
| Ore | Best Y level |
|---|---|
| diamonds | Y -59 |
| netherite | Y 15 |
| iron | Y 16 underground, Y 232 in mountains |
| coal | Y 96, or anything above Y 136 |
| gold | Y -16, or anywhere in a badlands |
| redstone | Y -59 |
| lapis lazuli | Y 0 |
| copper | Y 48 |
| emeralds | Y 232, mountain biomes only |
| nether quartz | Any level from Y 10 to 117 |
| nether gold | Any level from Y 10 to 117 |
Y 16 for ordinary underground mining. If you are in a mountain biome, exposed stone above Y 200 is better, because the upper batch attempts 90 veins per chunk and peaks at Y 232.
A separate generation batch, ore_iron_upper, covers Y 80 to 384 with 90 attempted veins per chunk. It only places inside stone, so it delivers almost nothing in flat terrain and a great deal inside a tall peak.
Yes. Unlike diamonds and ancient debris, iron sets discard_chance_on_air_exposure to 0, so it generates freely against open air. Cave walls are a perfectly good source.
The underground batch reaches down to Y -24, and the small batch runs to Y -64, so deepslate iron exists but at a lower rate than at Y 16.
Related ore levels: