Why isn't ammonium chromate called diammonium chromate?

I have to name $\ce{(NH_4)_2CrO_4}$. I know the answer is ammonium chromate. But I don't understand why it isn't called diammonium chromate.

You don't need the prefix because you know (or rather are assumed to know) the charges on the constituent ions of an ionic compound, which this is. The ammonium ($\ce{NH4^+}$) cation has a charge of +1 and the chromate ($\ce{CrO4^{2-}}$) anion has a charge of -2. Since the formula unit has to have a net charge of zero, it follows that "ammonium chromate" must have the empirical formula of ($\ce{{(NH_4^+)}_2CrO4^{2-}}$). Similarly "ammonium nitrate" must have an empirical formula of $\ce{NH4NO3}$ because the nitrate anion has a charge of -1. In both cases, you can deduce the formula from the name and your pre-existing knowledge of the properties of the ions.

The prefixes are used much more often in simple molecular compounds because the elements in periods 2 and 3 can often be in multiple oxidation states, and you need the prefixes to figure out the actual molecular formula, the names of the elements are not enough. The most famous example is probably nitrogen and oxygen, which form at least half a dozen neutral compounds. You need prefixes so you can distinguish between $\ce{NO2}$ (nitrogen dioxide) and $\ce{N2O}$ (dinitrogen monoxide). "Nitrogen oxide" wouldn't cut it, because you wouldn't know the oxidation state of $\ce{N}$ and $\ce{O}$ and could not deduce the formula from the name.

Even when the constituents of ionic compounds can form more than one ion, e.g. for transition metals, we usually choose to write the oxidation state of the varying ion instead of using prefixes, e.g. $\ce{FeO}$ is "iron(II) oxide" instead of "iron monoxide" and $\ce{Fe2O3}$ is "iron(III) oxide" instead of "diiron trioxide."

You may observe that this is all shot through with logical inconsistency and redundancy. That is a reflection of the chaotic history of chemical nomenclature and the need to balance systematic naming conventions to make it easier for the newcomer with the ability to use the vast existing knowledge base that uses older and more ad-hoc or individually varying schemes.

• "You may observe that this is all shot through with logical inconsistency and redundancy." How so? – Anurag Jun 1 '18 at 14:41
• Well, the first that comes to mind is the fact that when naming ionic compounds we give the oxidation states explicitly in the name and ask the reader to deduce the subscripts ("iron(III) oxide" => ox states of +3,-2 => subscripts 2,3) whereas when we name molecular compounds we do the reverse, we indicate the subscripts in the name and ask the reader to deduce the oxidation states ("phosphorus trichloride" => subscripts 1,3 => oxidation states +3,-1). I can't think of any good reason for this, aside from historical accident. – Christopher Grayce Jun 2 '18 at 3:46
• As for the second, just consider the madness that is the naming patterns of hydrides. The systematic names of the Period 2 hydrides are lithium hydride, beryllium hydride, borane, methane, azane, hydrogen oxide and hydrogen fluoride. Whoa. – Christopher Grayce Jun 2 '18 at 3:48

Prefixes such as mono-, di-, tri- etc. are typically used in naming covalent/molecular compounds, and not for ionic compounds.

Ammonium chromate is an ionic compound, so the prefix is not used. The ammonium cation has only a 1+ charge and so the Stock system of Roman numerals is not required. Thus, the only correct name would be ammonium chromate.