Miller Indices Calculator
Find the spacing between crystal planes from Miller indices and a lattice constant.
Ten tabulated cubic materials, four exact length scales, and reverse solves from a measured spacing.
Updated October 19, 2026
Introduction
A Miller index is a label for one family of parallel planes in a crystal, and the interplanar spacing is how far apart those planes sit. Give this page a material and three indices and it returns that spacing. Give it a spacing you measured and it works back the other way — to the indices that produced it, or to the cell edge of the crystal it came from.
The spacing is the quantity X-ray diffraction actually measures. A peak in a powder pattern sits at an angle set by the wavelength and by , so the spacing is the bridge between what you recorded and which planes produced it. That is why the reverse direction earns its place: you rarely know the indices of a peak before you look them up, and you often have the spacing first.
The page covers cubic crystals. That is a wider set than it sounds, because the spacing relation depends on the cubic cell edge alone: face-centred metals such as copper, silver, gold, nickel, palladium, platinum and lead, body-centred iron, the diamond structure of the carbon entry and the zinc-blende structure of aluminium arsenide all follow it. What changes between those structures is which reflections appear in a pattern, not the arithmetic here.
10 materials + Custom
Tabulated room-temperature cell edges, or your own
Å · pm · nm · μm
Four length scales with exact factors
Both directions
Spacing from the indices, or indices and cell edge from a measured spacing
Quick start
Choose the material
The menu holds ten cubic elements and compounds, and the page opens on carbon in its diamond structure with a cell edge of 3.567 Å. Choosing an entry fills that constant in and holds it there, because the cell edge is a property of the substance rather than a number the page is free to invent. Pick Custom when the value has to be your own — an alloy, a measurement, or the same crystal at a temperature where its cell has grown.
Type the three Miller indices
h, k and l are whole numbers. Each is the reciprocal of where the plane cuts the corresponding cell edge, cleared of fractions, so (111) cuts all three edges at one cell length while (200) cuts the a edge at half a cell and misses the other two. Zero is allowed and means the plane runs parallel to that edge. Negative indices are allowed too: the bar over a number that a textbook prints as is typed here as −1.
Read the spacing
For carbon in its diamond structure, a cell edge of 3.567 Å and the (111) plane give the value the page shows on the result row:
2.05941 Å is the repeat distance of the (111) planes of diamond — exactly the spacing a measured (111) reflection would report back. Higher index sums pack the planes closer: the (100) planes of the same crystal repeat at 3.567 Å and the (200) planes at half of that, 1.7835 Å.
Start from a measured spacing instead
Put the number you measured into the spacing box and leave the quantity you want open. With a tabulated material selected the page solves for the spacing or for an index; choose Custom and type the cell edge, and it will also solve for that edge from the spacing. Both reverse paths are walked through in the examples below.
How the spacing is calculated
One relation ties five quantities together: the three indices, the cell edge a, and the spacing d. Any four of them fix the fifth, and the page solves for whichever one you have not supplied.
The denominator is the length of the normal to the plane measured in cell edges, which is why the spacing shrinks as the indices grow. Nothing else enters the relation: temperature, wavelength and the number of atoms in the cell all sit outside it.
Where the indices come from
Read the intercepts the plane makes with the three cell edges, take the reciprocal of each one, and multiply by the common denominator to clear the fractions. A plane that crosses the a and b edges two cells out and runs parallel to c is written as follows.
An intercept at infinity becomes a zero index, and a negative intercept — a plane on the far side of the origin — becomes a negative index.
Solving the relation backwards
Which of those directions you get depends on who owns the cell edge. With one of the ten materials selected, the edge is a fixed property, so the page solves only for the spacing or for an index — the tabulated constant cannot drift while you type. Switch the menu to Custom and the cell edge becomes an input, which is what lets a measured spacing give back the size of the cell it came from.
Units, and the exact factors
Both lengths read in ångströms and can be read in picometres, nanometres or micrometres. The factors are exact definitions rather than rounded conversions: 1 pm = 0.01 Å, 1 nm = 10 Å and 1 μm = 10 000 Å. The conversion happens before the relation runs, so 356.7 pm, 0.3567 nm and 3.567 Å are one and the same cell edge.
Every cubic structure, one relation
The relation is written on the conventional cubic cell edge, so it is identical for the simple cubic, body-centred, face-centred and diamond arrangements — all four kinds appear in the material list. Two different cubic structures can therefore share a spacing for the same indices; only the reflections that actually appear tell them apart.
Three checks the page applies to your input
- Miller indices must be whole numbers. An index the page has to compute is flagged when it does not land exactly on a whole number, rather than being rounded for you.
- The cell edge must be positive, and a value outside 1–20 Å is treated as a mistyped number: the digits stay on screen with a warning, because the usual cause is a nanometre value in an ångström box.
- All three indices at zero describe no plane at all — there is no normal to measure — so the spacing stays blank with that explanation instead of returning a division by zero.
Worked examples
Which plane produced this peak?
Situation: A copper sample gives its first reflection at a measured spacing of 2.088 Å. Working back from a spacing needs the cell edge as an input rather than a tabulated constant, so the material menu goes to Custom and copper's 3.615 Å is typed in.
Inputs
Result
The index box goes red because 0.998737 is not a whole number, and that flag is the answer rather than a failure: the index is one and the 0.0013 gap is the measurement error in the 2.088 Å you recorded, together with the precision of the 3.615 Å you typed. The peak is (111). Turn the question around and let the page solve for the cell edge, with (111) and the same measured spacing:
3.61652 Å is 0.04% above the tabulated 3.615 Å for copper, which is the agreement you want from a good measurement of a pure sample.
In practice: Two independent checks agree, so the assignment stands. Had you assumed (110) instead, the recovered h would have been 1.41332 — nowhere near a whole number, and that gap is how the page tells you the guessed plane is wrong.
Predicting where the peaks should be
Situation: You have a copper powder pattern in front of you and want to know which spacings to look for before you start matching peaks.
Inputs
Result
| Plane | Index sum | Spacing d (Å) | Face-centred pattern |
|---|---|---|---|
| (100) | 3.615 | absent | |
| (110) | 2.55619 | absent | |
| (111) | 2.08712 | shown | |
| (200) | 1.8075 | shown | |
| (220) | 1.2781 | shown | |
| (311) | 1.08996 | shown | |
| (222) | 1.04356 | shown | |
| (400) | 0.90375 | shown |
The two absent rows are the useful ones. A face-centred lattice only shows reflections whose three indices are all even or all odd, so (100) and (110) never appear in a copper pattern however firmly the page can compute their spacing, while (111), (200), (220) and (311) line up with real peaks. A body-centred metal such as iron follows a different rule — its reflections need h + k + l to be even — which is a quick way to tell the two structures apart from a pattern.
In practice: Match your measured spacings against the allowed rows only, and quote the indices the pattern gives rather than reducing them: (222) is a different reflection from (111) and sits at exactly half its spacing.
What the spacing is for
The page stops at the spacing because that is the quantity the geometry fixes. Two standard steps take it further.
Turning a spacing into a peak position
Bragg's law carries the spacing to the angle at which the reflection appears, given the wavelength of your source. That is the comparison you make when matching a pattern, checking a diffractometer, or working out whether a film and a substrate will line up. The page never needs the wavelength to give you the spacing, and it deliberately stops before the angle.
Turning a cell edge into an interatomic distance
For an ionic solid the cell edge is the easiest route to the distance between neighbouring ions. In the rock-salt arrangement that distance is half the cell edge; in the caesium-chloride arrangement, where the ions sit on a body diagonal, it is.
A rock-salt cell edge of 5.640 Å therefore puts neighbouring ions 2.820 Å apart. With that distance in hand, the lattice energy calculator estimates how much energy the ionic lattice releases from the two charges, the structure and the distance you just derived.
Getting a number you can trust
Keep both lengths in the same unit
The tabulated cell edges are ångströms and the spacing is read in ångströms too. The factor of ten between nanometres and ångströms is exactly the size of the slip that turns 3.567 Å into 0.3567 — a cell edge no crystal has, and the page says so when it sees one. Read a measured spacing in the unit your instrument printed, and keep the cell edge in that same unit.
Tabulated values are room-temperature values
Alloying, strain and heating all move a cell edge, and a few tenths of a per cent is ordinary — already visible in the third decimal of a spacing. When that matters, put your own cell edge in through Custom instead of leaning on the tabulated number.
A spacing cannot tell you the sign of an index
and (100) are parallel planes on opposite sides of the origin and repeat at the same spacing, so a measured spacing can only ever return the size of each index. Take the sign from the structure you are describing, not from this page.
Sanity-check the ratio, not just the number
Every non-zero index adds to the denominator, so a spacing can never be larger than the cell edge: a d above a means one of the two numbers is wrong. Dividing a spacing by the cell edge should land on 1, 1/√2, 1/√3, 1/2 and so on — if it lands somewhere else, the material or the assumed plane is off.
Questions
Can I use it for a crystal that is not in the list?
Yes, as long as the crystal is cubic: choose Custom and type the cell edge from your own reference, or recover it from a measured spacing whose indices you know. What the page cannot do is a non-cubic cell. In a tetragonal or hexagonal crystal the spacing also depends on the second cell edge and on the angles between the axes, so a single constant is not enough information.
Does it work for body-centred and face-centred crystals, or only simple cubic?
It works for every cubic structure. The relation is built on the cubic cell edge alone, so the simple cubic, body-centred, face-centred and diamond arrangements in the list all use it. The structure decides which of those spacings you will actually see: a face-centred lattice shows only the reflections whose indices are all even or all odd, and a body-centred one only those whose three indices add up to an even number.
Why does the index box go red when I solve for an index?
Because the index that reproduces your measured spacing is not an exact whole number, and Miller indices are whole numbers — so the page flags the box rather than quietly rounding it. Read that flag as a consistency check rather than an error: something like 0.9987 means the plane you assumed is right and the measurement is a fraction of a per cent out, while 1.41 or 2.6 means the assumed plane, the material and the spacing do not belong together.
The page also refuses a spacing for which no real index exists. If is smaller than the sum of the two other squared indices, the square root has no real answer, and the box stays empty with an explanation instead of inventing a number.
Is the spacing the same as the distance between atoms?
No, and the two are easy to confuse. The spacing is the repeat distance between parallel planes of one family; the distance between neighbouring atoms is a different length. In a face-centred metal the nearest neighbours sit apart — 2.55619 Å in copper — while its (111) planes repeat every 2.08712 Å. In that same structure the (110) spacing happens to equal , so one number can describe a plane spacing and an atom spacing in different contexts.
Limits and checks
- Cubic symmetry only. The relation assumes three equal cell edges meeting at right angles. Tetragonal, orthorhombic, hexagonal and lower-symmetry crystals need their extra cell parameters, and for those this page is the wrong tool.
- Ideal geometry, not a diffraction pattern. The page returns spacings and nothing else: it cannot tell you whether a reflection will be strong, weak or absent for a particular sample, and real patterns shift with strain, solid solution, temperature and instrument zero error as well as with the cell edge.
- The tabulated cell edges are fixed values. They are room-temperature values of the pure substances and are not adjusted for alloying, strain, non-stoichiometry or temperature. Where the third decimal of a spacing matters, check the constant for your own phase and enter it through Custom.
- What it deliberately leaves out. It stops at the spacing: it does not convert to a diffraction angle, it does not index a whole unknown pattern, and it does not compute density, which needs the number of formula units per cell and a molar mass.
- An analysis aid, not a substitute for your own data. Phase identification, publishable indexing, thin-film matching and any decision where a fraction of a per cent matters should be confirmed against your measured pattern and a crystallographic reference, and reviewed by whoever owns that analysis.
Related Calculators
Chemical Equation Balancer
Balance a chemical reaction and get the smallest whole-number coefficients. Supports bracketed groups such as Fe(OH)3, user-supplied coefficients, and unicode subscripts.
Net Ionic Equation Calculator
Reduce a molecular equation to its net ionic form. Balances the reaction, splits soluble compounds into ions, and names the spectator ions that cancel out.
Cubic Cell Calculator
Convert an atomic radius into the edge of a cubic unit cell, or measure a cell edge back to the atomic radius. Simple, body centered and face centered packing are each solved in both directions.
Atom Calculator
Calculate atomic properties including protons, neutrons, electrons, atomic number and mass number
Electron Configuration Calculator
Get the electron configuration for any element from the periodic table. View atomic number, atomic mass, and valence electrons.
Atomic Mass Calculator
Calculate atomic mass from protons and neutrons. Get atomic mass in various units including atomic mass units (u), kilograms, and more.