Polish has four spelling decisions that cannot be made by ear, because each involves two spellings for one sound (or one spelling for a sound that splits apart in speech). The pairs are ó/u, rz/ż, ch/h, and the nasals ą/ę versus their split spellings om/on/em/en. Native children spend years drilling exactly these, and they still slip — so as a learner you are not at a disadvantage, you simply need the rules native kids memorise. English speakers, trained to "sound out" spelling, must replace that instinct with alternation tests and a short list of after-consonant rules. This page is the master overview; each pair has its own deep-dive page linked below.
ó versus u — the alternation ó↔o
ó and u are both pronounced [u]; there is no audible difference. The decisive test: if a related form of the word shows a plain o, write ó. If no related form ever shows an o, it is almost always u.
stół → stołu → na stole
table → of the table → on the table (the [u] becomes o, so it's ó)
Bóg → Boga → Bogiem
God → of God → with God (alternates with o → ó). Contrast 'bug', a software bug, with u.
So Bóg (God) and bug (a software bug, borrowed) sound the same but split on the alternation test: Boga shows the o, bug never does. Write ó in the genitive-plural ending -ów (domów, stołów) and the suffix -ówka (gotówka, klasówka); write u in the verb ending -uję (pracuję, dziękuję) and in basic words with no o-alternation (kura "hen", mur "wall", but "shoe"). Full treatment on the ó versus u page.
Mamy dużo nowych domów w tej okolicy.
We have lots of new houses in this area. (-ów genitive plural → ó)
Codziennie kupuję świeży chleb.
I buy fresh bread every day. (-uję → u)
rz versus ż — the alternation rz↔r and the after-consonant rule
rz and ż are both pronounced [ʐ] (like the s in "pleasure"). Two tools decide between them.
Tool 1 — the alternation rz↔r. Write rz when the sound alternates with a plain r in a related form, because rz is historically a softened r.
morze → morski
sea → maritime (rz alternates with r → rz). So 'morze' (sea) ≠ 'może' (maybe), which has no r-form.
rzeka → rzeczny
river → riverine (the rz stays; from the same r-family)
This resolves the famous może / morze pair: morze "sea" relates to morski, morza — it belongs to a root that shows up elsewhere, and crucially it is spelled rz; może "maybe / he can" has no r anywhere in its family and is spelled ż.
Tool 2 — the after-consonant rule. After the consonants p, b, t, d, k, g, ch, j, w, the sound is spelled rz (with rare exceptions). Mnemonic groups of these letters help: przez, brzeg, trzy, drzewo, krzak, grzyb, chrzan, wrzesień.
Przepraszam, przejdę przez ulicę.
Excuse me, I'll cross the street. (rz after p)
Na brzegu rośnie wielkie drzewo.
A huge tree grows on the bank. (rz after b and after d)
Write ż where the sound alternates with g, dz, z, ź, h, s (móc → może [g↔ż], drużyna → druh [h↔ż], każe → kazać [z↔ż]) or simply has no rz-justification. The full rules, including the ż↔g/z alternations, are on the rz versus ż page.
ch versus h — ch is the default
ch and h are both pronounced (a soft "kh") in standard Polish — identical for most speakers. The practical rule: ch is the default, far more common, so when in doubt write ch. Write ch when it alternates with sz (mucha → muszka, suchy → susza) and at the end of a word (na nogach, w lasach — always -ch, never -h). Write h mainly in loanwords and a fixed learnable set (herbata "tea", hotel, historia, humor, bohater "hero", huragan), and where it alternates with g, z, ż (wahać → waga).
Wczoraj piłem herbatę w hotelowej restauracji.
Yesterday I drank tea in the hotel restaurant. (loanwords herbata, hotel → h)
Schowaj chleb do chlebaka.
Put the bread away in the bread bag. (native words → ch; note 'schować' too)
So chleb is wrong — it is chleb "bread," with ch. Detail and the full h-word list on the ch versus h page.
ą/ę versus om/on/em/en — the nasal split
This trap is different in kind: ą and ę are nasal vowels, but before certain consonants they are pronounced as a vowel plus a nasal consonant — so you hear "om," "on," "em," "en," yet you must still write the single nasal letter. The classic example: ząb "tooth" is pronounced roughly "zomp," but it is spelled with ą, not om.
ząb (pronounced ~'zomp') → zęby
tooth → teeth. Write ą/ę, not om/em, even though you hear a consonant.
dąb → dęby
oak → oaks. The nasal letter is written; the ą↔ę alternation marks the family.
The rule of thumb: a native Polish word with this nasal-plus-stop sound is spelled with ą or ę (kąt "corner", gęba "gob", piętro "floor", zęby "teeth"). The split spellings om/on/em/en appear chiefly in loanwords and across morpheme boundaries (kompot, kontakt, temperatura, sens, romans). A useful secondary cue: if the word alternates between ą and ę in its forms (ząb/zęby, dąb/dęby, ręka/rąk), it is a true nasal-vowel word and takes ą/ę.
Boli mnie ząb, muszę iść do dentysty.
My tooth hurts, I have to go to the dentist. (native word → ą, not 'zomb')
Na deser był kompot z owoców.
For dessert there was fruit compote. (loanword → om, written out)
The deep treatment, including the position rules for when ę/ą denasalise, is on the nasal vs om/on/em/en page.
A quick spelling-decision drill
Run each word through the right test. The answer and the reasoning:
| Hear | Test | Write |
|---|---|---|
| [u] in "g_ra" (mountain) | alternation? related forms all keep [u]; it's a must-know ó word | góra |
| [u] in "k_ra" (hen) | no o-alternation anywhere | kura (u) |
| [ʐ] in "mo_e" (sea) | alternates with r: morski | morze (rz) |
| [ʐ] in "mo_e" (maybe) | no r in the family | może (ż) |
| in "_leb" (bread) | native word, default | chleb (ch) |
| in "_erbata" (tea) | loanword | herbata (h) |
| "zomp" (tooth) | native, alternates ząb/zęby | ząb (ą) |
| "kompot" | loanword, no ą/ę alternation | kompot (om) |
Common Mistakes
❌ Ta gora jest bardzo wysoka.
Incorrect — 'góra' is a must-know ó word; the kreska is mandatory
✅ Ta góra jest bardzo wysoka.
This mountain is very high.
❌ Latem jeżdżę nad żeka.
Incorrect — 'rzeka' takes rz (related to rzeczny), and it's 'nad rzekę' for motion
✅ Latem jeżdżę nad rzekę.
In summer I go to the river.
❌ Na śniadanie jem hleb z masłem.
Incorrect — 'chleb' is a native word with ch, not h
✅ Na śniadanie jem chleb z masłem.
For breakfast I eat bread with butter.
❌ Wierzę w Buga. (meaning God)
Incorrect — 'Bóg' has ó (Boga/Bogiem); 'bug' is a different word
✅ Wierzę w Boga.
I believe in God.
❌ Boli mnie zomb.
Incorrect — write the nasal letter ą; 'ząb' alternates with 'zęby'
✅ Boli mnie ząb.
My tooth hurts.
Key Takeaways
- Four sounds, two spellings each: ó/u ([u]), rz/ż ([ʐ]), ch/h (), and the nasals ą/ę vs om/on/em/en. Your ear cannot decide them.
- ó when the [u] alternates with o (stół/stole); else u.
- rz when the [ʐ] alternates with r (morze/morski) or follows p b t d k g ch j w; else ż.
- ch is the default ; h mainly in loanwords (herbata, hotel, historia).
- Native nasal words take ą/ę even when you hear "om/on" (ząb, dąb); loanwords take the split spelling (kompot, sens).
- Replace "sound it out" with "find a related form and look at the letter."
Now practice Polish
Reading grammar gets you part of the way. The exercises are where it sticks — free, no signup needed.
Start learning Polish→Related Topics
- ó versus uA2 — Why Polish spells the same [u] sound two ways, and the alternation test that resolves most of it.
- rz versus żA2 — Two spellings for the [ʐ] sound — and the r-alternation test plus the after-consonant rule that crack most of them.
- ch versus hA2 — Both ch and h spell the same throaty [x] sound, so the choice is learned by etymology — ch is the native default, h the rarer borrowed spelling.
- ą/ę versus om/on/em/enB1 — When a nasal sound should be written with the ogonek letters ą/ę and when with the two-letter sequences om/on/em/en — a morphological and etymological choice, not a phonetic one.
- Diacritics and How to Type ThemA1 — The nine Polish diacritic letters, the AltGr keyboard layout that produces them, and why dropping a mark changes the word.
- The Nasal Vowels ą and ęA2 — How Polish ą and ę are really pronounced — nasal, decomposed into vowel + nasal consonant, denasalized, or reduced — depending on what follows.