Modern Iranian Persian uses ک for kaf and ی for yeh. Arabic keyboards and copied Arabic text can supply ك, ي, or ى instead. Some fonts make these characters look almost identical, but computers store them under different Unicode numbers. This is therefore not decorative typography: using the Persian characters is part of spelling Persian correctly and making digital text reliable.
The sound values of ی receive fuller treatment on the Yeh as y, i, or ey page. Here the problem is recognition and input: which character belongs in Iranian Persian, how it joins, and why the choice matters in search.
Two letters, several visual shapes
Persian script is cursive. A letter's displayed shape responds to its neighbors, but you still type one base character, not a separate initial or final glyph. Both ک and ی join on both sides when the adjacent letters permit it.
| Letter | Isolated | Initial | Medial | Final | Usual values |
|---|---|---|---|---|---|
| Persian kaf | ک | کـ | ـکـ | ـک | k |
| Persian yeh | ی | یـ | ـیـ | ـی | y, long i, or ey |
The labels “initial,” “medial,” and “final” describe joining position, not necessarily the beginning or end of a grammatical word. A letter after a non-connector can have an initial-looking shape inside a word. Conversely, a final-looking form does not create a space.
کتاب
ketâb
book
کودک
kudak
child
In کتاب, kaf begins a joining chain. In کودک, the final kaf joins to the preceding letter but has nothing after it. The word remains a sequence of ordinary Unicode letters; the font draws the appropriate shapes.
یک
yek
one
زندگی
zendegi
life
Initial یـ has two dots below in most typefaces. The isolated and final Persian ی normally appears dotless. Crucially, that dotless appearance does not mean that a different “dotless yeh” should be typed.
Persian and Arabic code points
The visually competing characters are genuinely distinct data:
| Character | Unicode | Role in this guide | Visible clue in many fonts |
|---|---|---|---|
| ک | U+06A9 | Persian kaf — use this | Persian final/isolated form |
| ك | U+0643 | Arabic kaf — not canonical Persian input | Often carries a small internal kaf-like stroke |
| ی | U+06CC | Persian yeh — use this | Dotless when isolated or final |
| ي | U+064A | Arabic yeh — not canonical Persian input | Usually keeps two dots in final form |
| ى | U+0649 | Arabic alef maqsura — not Persian yeh | Can look exactly like final Persian ی |
That last comparison is the dangerous one: ی and ى may be visually indistinguishable in a final position. Appearance alone cannot prove that pasted text is correct. A character inspector, a Persian-aware editor, or retyping with an Iranian Persian keyboard can reveal the stored value.
Unicode's ordinary normalization forms do not automatically turn Arabic ك into Persian ک, or Arabic ي/ى into Persian ی. A website may add its own Persian-specific normalization, but you cannot assume that every search box, database, filename, or username does so.
این کتاب فارسی است.
in ketâb-e fârsi ast.
This book is in Persian.
This short sentence contains Persian yeh in این and فارسی, and Persian kaf in کتاب. It also demonstrates a larger principle: the displayed line omits short vowels, while the pronunciation line can reveal them without changing the underlying letters.
Why the difference affects search
Exact string matching compares code points. A record stored as کتاب need not match a query containing Arabic kaf, even if the two versions look alike on screen. Sorting, deduplication, spell-checking, and search highlighting can also split one apparent word into separate entries. Persian-aware systems often normalize these variants before comparison; less careful systems do not.
This is why canonical input matters at the moment of writing. Choose the Persian keyboard layout for Iranian Persian, then verify the final forms of ک and ی. Copying a Persian word from an Arabic-language page can import Arabic code points into otherwise Persian text.
کیف من کنار کتابهاست.
kif-e man kenâr-e ketâb-hâst.
My bag is beside the books.
Here کتابهاست also contains the required zero-width non-joiner between the noun and plural ها. The half-space controls a word boundary; it does not replace either kaf or yeh. See Spaces, half-spaces, and the zero-width non-joiner for the full system.
Register and scope
Using Persian ک and ی is the norm in written-standard, formal, academic, literary, and contemporary informal Iranian Persian. Arabic code points inside Persian are not a colloquial-Tehran variant; they are a legacy-input or normalization problem. Older digital documents may contain them because of historical keyboard and software limitations, but learners should not reproduce that encoding.
In Arabic quotations, Arabic letters naturally remain Arabic. That exception does not turn ك or ي into acceptable default spellings in an Iranian Persian sentence. Likewise, Nastaliq and other fonts can reshape the Persian letters dramatically without changing their code points.
Common Mistakes
1. Pasting Arabic kaf and yeh into a Persian sentence
❌ اين كتاب كهنه است.
Incorrect — this visually Persian sentence contains Arabic ي and ك code points.
✅ این کتاب کهنه است.
in ketâb kohne ast.
This book is old.
The correction may look subtle in your font, but the stored characters are now Persian.
2. Inserting spaces to imitate disconnected glyphs
❌ ک تاب روی م یز است.
Incorrect — spaces have split two words into fragments.
✅ کتاب روی میز است.
ketâb ru-ye miz ast.
The book is on the table.
Joining is produced automatically. A visual break caused by a non-connecting letter is not an invitation to type a space.
3. Reversing the stored letter order
❌ باتک اینجاست.
Incorrect — the letters of کتاب were entered in left-to-right order.
✅ کتاب اینجاست.
ketâb injâst.
The book is here.
Your cursor may behave unexpectedly in mixed English–Persian text, but the first typed letter of کتاب is still kaf.
4. Adding a yeh for an unwritten short vowel
❌ کیتاب تازه است.
Incorrect — the short e in ketâb is not written with ی.
✅ کتاب تازه است.
ketâb-e tâze ast.
The book is new.
English writes nearly every vowel; ordinary Persian does not. The missing-looking e is supplied during reading.
5. Deleting a required half-space
❌ کتابها کنار کیف است.
Incorrect — standard spelling separates the plural suffix with a ZWNJ.
✅ کتابها کنار کیف است.
ketâb-hâ kenâr-e kif ast.
The books are beside the bag.
The ZWNJ is invisible as a character but visible in the joining behavior: کتابها, not a fully joined string and not two independent words.
Key Takeaways
- Type Persian ک (U+06A9) and ی (U+06CC), even when Arabic alternatives look identical.
- Initial, medial, and final shapes are font behavior, not separately typed letters.
- Exact search can distinguish lookalike code points; canonical Persian input prevents avoidable failures.
- Omitted short vowels and ZWNJ boundaries are separate spelling facts, not defects in the letters themselves.
Now practice Farsi
Reading grammar gets you part of the way. The exercises are where it sticks — free, no signup needed.
Start learning Farsi →Related Topics
- Joining Forms: Isolated, Initial, Medial, FinalA1 — Learn why one Persian letter changes shape according to its cursive connections and how fonts choose each form.
- Typing Persian on a Standard KeyboardA2 — Set up a Persian layout and type letters, digits, punctuation, and ZWNJ in correct logical and Unicode form.
- Ye as y, i, or eyA1 — Learn how Persian yeh represents the glide y, the long vowel i, and the diphthong ey in modern Iranian pronunciation.
- Using Arabic ك and ي instead of Persian ک and یA1 — Diagnose visually similar Arabic and Persian Unicode letters, repair mixed text, and prevent search, grading, sorting, and ZWNJ failures.