Ionic vs. covalent: which rules apply
A compound's naming rules depend on what kind of bond holds it together. Ionic compounds form between a metal and a nonmetal (or a metal and a polyatomic ion) — atoms transfer electrons to become charged ions that attract each other. Covalent (molecular) compounds form between two nonmetals — atoms share electrons instead of transferring them. The first question to ask about any formula or name is: metal + nonmetal (ionic), or nonmetal + nonmetal (covalent)? Everything else follows from that answer.
| Clue | Ionic | Covalent |
|---|---|---|
| Elements involved | Metal + nonmetal (or metal + polyatomic ion) | Nonmetal + nonmetal |
| Particles formed | Ions (charged) held in a repeating lattice | Molecules (neutral, discrete units) |
| Formula shows | The lowest whole-number ratio of ions (empirical formula) | The actual number of each atom in one molecule |
| Naming uses | Ion names + Roman numerals for variable-charge metals | Greek number prefixes (mono-, di-, tri-, ...) |
| Example | NaCl (sodium chloride) | CO₂ (carbon dioxide) |
Metals vs. nonmetals, fast
On the periodic table, metals are everything left of the bold zig-zag staircase (plus most of the middle block); nonmetals are to the right of it, including hydrogen. Elements touching the staircase (B, Si, Ge, As, Sb, Te, ...) are metalloids and get treated case-by-case, but for naming purposes almost every compound you'll see is a clean metal-nonmetal or nonmetal-nonmetal pair.
Monatomic ions
A monatomic ion is a single atom that has gained or lost electrons to become charged. Metals lose electrons to form positive ions (cations); nonmetals gain electrons to form negative ions (anions). For many main-group elements, the charge is predictable from the element's group number on the periodic table.
| Group | Typical charge | Example cation/anion |
|---|---|---|
| 1 (alkali metals) | 1+ | Na⁺, K⁺, Li⁺ |
| 2 (alkaline earth metals) | 2+ | Mg²⁺, Ca²⁺, Ba²⁺ |
| 13 | 3+ | Al³⁺ |
| 15 (nonmetals) | 3− | N³⁻, P³⁻ |
| 16 (nonmetals) | 2− | O²⁻, S²⁻ |
| 17 (halogens) | 1− | F⁻, Cl⁻, Br⁻, I⁻ |
| 18 (noble gases) | 0 (do not form ions) | — |
Naming a monatomic anion: drop the ending of the element name and add -ide. Chlorine → chloride. Oxygen → oxide. Nitrogen → nitride. Cations from main-group metals just keep the element's name: sodium ion, magnesium ion, aluminum ion.
Polyatomic ions
A polyatomic ion is a group of covalently bonded atoms that carries an overall charge and moves as a single unit in reactions and formulas. These names must be memorized — they don't follow the group-number pattern. The ones below cover the large majority of formulas you'll see in an intro chemistry course.
| Ion | Formula | Charge |
|---|---|---|
| Ammonium | NH₄⁺ | 1+ |
| Hydroxide | OH⁻ | 1− |
| Nitrate | NO₃⁻ | 1− |
| Nitrite | NO₂⁻ | 1− |
| Acetate | C₂H₃O₂⁻ | 1− |
| Cyanide | CN⁻ | 1− |
| Permanganate | MnO₄⁻ | 1− |
| Bicarbonate (hydrogen carbonate) | HCO₃⁻ | 1− |
| Carbonate | CO₃²⁻ | 2− |
| Sulfate | SO₄²⁻ | 2− |
| Sulfite | SO₃²⁻ | 2− |
| Chromate | CrO₄²⁻ | 2− |
| Dichromate | Cr₂O₇²⁻ | 2− |
| Phosphate | PO₄³⁻ | 3− |
| Phosphite | PO₃³⁻ | 3− |
The -ate / -ite pattern
When two polyatomic ions contain the same elements but a different number of oxygens, the one with more oxygen ends in -ate and the one with less ends in -ite: sulfate SO₄²⁻ vs. sulfite SO₃²⁻; nitrate NO₃⁻ vs. nitrite NO₂⁻. The charge stays the same across the pair.
Ammonium is not a metal
NH₄⁺ acts like a metal cation in ionic formulas (it pairs with anions the same way Na⁺ does) even though it's built from nonmetals. Ammonium chloride is NH₄Cl, named exactly like an ionic compound.
Naming and writing formulas for ionic compounds
An ionic compound's name is simply cation name + anion name (drop the word "ion"). Ionic compounds are always electrically neutral overall — the positive and negative charges must cancel out. Use that fact to write the formula: find the smallest whole-number ratio of cations to anions that makes the total charge zero.
The criss-cross method for writing a formula from a name: write the cation's charge as a number, write the anion's charge as a number, then swap them down as subscripts (drop signs, drop any 1s, reduce the ratio if it shares a common factor).
| Name | Cation | Anion | Criss-cross | Formula |
|---|---|---|---|---|
| Sodium chloride | Na⁺ (charge 1) | Cl⁻ (charge 1) | Na₁Cl₁ → drop 1s | NaCl |
| Magnesium oxide | Mg²⁺ (charge 2) | O²⁻ (charge 2) | Mg₂O₂ → reduce | MgO |
| Calcium chloride | Ca²⁺ (charge 2) | Cl⁻ (charge 1) | Ca₁Cl₂ → drop the 1 | CaCl₂ |
| Aluminum oxide | Al³⁺ (charge 3) | O²⁻ (charge 2) | Al₂O₃ | Al₂O₃ |
| Calcium phosphate | Ca²⁺ (charge 2) | PO₄³⁻ (charge 3) | Ca₃(PO₄)₂ | Ca₃(PO₄)₂ |
Bracket a polyatomic ion before adding a subscript
If more than one of a polyatomic ion is needed, wrap it in parentheses before adding the subscript: Ca₃(PO₄)₂ means 3 calcium ions and 2 whole phosphate ions (2 P atoms, 8 O atoms total) — not Ca₃PO₄₂, which would be read as a single badly-formed unit.
Transition metals: Roman numerals
Most transition metals (and a few main-group metals like tin, lead, and bismuth) can form more than one possible charge. A name like "iron chloride" is ambiguous — it could be FeCl₂ or FeCl₃. To resolve this, the metal's charge for that specific compound is written as a Roman numeral in parentheses right after the metal's name. This system is called the Stock system.
| Metal | Common charges | Example ion names |
|---|---|---|
| Iron (Fe) | 2+, 3+ | Iron(II), Iron(III) |
| Copper (Cu) | 1+, 2+ | Copper(I), Copper(II) |
| Tin (Sn) | 2+, 4+ | Tin(II), Tin(IV) |
| Lead (Pb) | 2+, 4+ | Lead(II), Lead(IV) |
| Chromium (Cr) | 2+, 3+, 6+ | Chromium(II), Chromium(III) |
| Zinc (Zn) | 2+ only | Zinc (no Roman numeral needed) |
| Silver (Ag) | 1+ only | Silver (no Roman numeral needed) |
Finding the Roman numeral from a formula: work backward from the known anion charge. In FeCl₃, each chloride is 1−, and there are 3 of them, so the total negative charge is 3−. For the compound to be neutral, iron must be 3+, so this is iron(III) chloride. In FeCl₂, the same logic gives iron a 2+ charge, so it's iron(II) chloride.
Going the other direction (name → formula): the Roman numeral IS the cation's charge, so criss-cross it against the anion's charge exactly as before. Copper(II) oxide: Cu²⁺ and O²⁻ → CuO. Copper(I) oxide: Cu⁺ and O²⁻ → Cu₂O.
Zinc and silver never need a Roman numeral
Zn is always 2+ and Ag is always 1+ in ordinary compounds, so "zinc(II) chloride" and "silver(I) nitrate" are technically fine but unnecessary — plain "zinc chloride" and "silver nitrate" are the standard names.
Covalent (molecular) compound naming
Covalent compounds form between two nonmetals sharing electrons, so there's no ion charge to balance — instead, the name spells out the exact number of each atom using Greek prefixes. The first element keeps its full name; the second element gets the -ide ending, same as an anion.
| Prefix | Number | Prefix | Number |
|---|---|---|---|
| mono- | 1 | hexa- | 6 |
| di- | 2 | hepta- | 7 |
| tri- | 3 | octa- | 8 |
| tetra- | 4 | nona- | 9 |
| penta- | 5 | deca- | 10 |
| Formula | Name |
|---|---|
| CO | Carbon monoxide |
| CO₂ | Carbon dioxide |
| N₂O | Dinitrogen monoxide |
| NO₂ | Nitrogen dioxide |
| SO₃ | Sulfur trioxide |
| P₂O₅ | Diphosphorus pentoxide |
| CCl₄ | Carbon tetrachloride |
Drop the "mono-" on the first element, and vowel-drop before oxide
The prefix "mono-" is never used on the first element (it's "carbon monoxide," not "monocarbon monoxide") but IS used on the second when there's only one, e.g. carbon monoxide CO. When a prefix ending in a vowel meets "oxide," drop the prefix's final vowel: mono + oxide → monoxide, not "monooxide"; penta + oxide → pentoxide, not "pentaoxide."
Common acids
An acid is a compound that releases H⁺ ions when dissolved in water, and acids get their own naming pattern based on the anion that pairs with the hydrogen. Binary acids (H + one nonmetal, no oxygen) use hydro- ... -ic acid. Oxyacids (H + a polyatomic ion containing oxygen) follow the -ate/-ite pattern: -ate → -ic acid, -ite → -ous acid, with no "hydro-" prefix.
| Formula | Ion involved | Name |
|---|---|---|
| HCl | Chloride (binary) | Hydrochloric acid |
| HBr | Bromide (binary) | Hydrobromic acid |
| HF | Fluoride (binary) | Hydrofluoric acid |
| H₂S | Sulfide (binary) | Hydrosulfuric acid |
| HNO₃ | Nitrate (-ate) | Nitric acid |
| HNO₂ | Nitrite (-ite) | Nitrous acid |
| H₂SO₄ | Sulfate (-ate) | Sulfuric acid |
| H₂SO₃ | Sulfite (-ite) | Sulfurous acid |
| H₃PO₄ | Phosphate (-ate) | Phosphoric acid |
| HC₂H₃O₂ | Acetate (-ate) | Acetic acid |
| H₂CO₃ | Carbonate (-ate) | Carbonic acid |
Same formula, two names depending on context
HCl as a pure gas is named as a binary covalent compound, hydrogen chloride. Dissolved in water, that exact same formula is named as an acid, hydrochloric acid. The "(aq)" subscript in a chemical equation is the signal to use the acid name.
Try it yourself
1. Write the formula for iron(III) sulfate. (Fe³⁺ and SO₄²⁻ → criss-cross and reduce: Fe₂(SO₄)₃) 2. Name the compound N₂O₅. (Two nitrogens, five oxygens → dinitrogen pentoxide) 3. Name the acid H₂SO₄(aq). (Sulfate ends in -ate → drop "-ate," add "-ic acid," no hydro- prefix since it contains oxygen → sulfuric acid)
nomenclature-practice.csvDownload nomenclature-practice.csv: https://restedteacher.com/practice-files/chemistry/nomenclature-practice.csv
Twelve items: some give a formula and ask you to name it, others give a name and ask you to write the formula. A mix of ionic (including transition-metal and polyatomic-ion) and covalent compounds, plus two acids.
Open it in Google Sheets or Excel
The given_type column tells you which direction to work: formula means write the name, name means write the formula. Use the metal-vs-nonmetal check from the first section of this sheet to decide whether ionic or covalent rules apply before you start.
Using nomenclature-practice.csv:
4. For each item where given_type is "formula," write the compound's name.
5. For each item where given_type is "name," write the compound's formula.
6. For every ionic item involving a transition metal or a metal with more than one possible charge (N2, N3, N4, N5, N11), show the charge-balancing work you used to find the Roman numeral or the ion's charge.