
Evidence-based answer · Last updated · How it’s made
Your pattern — strong comprehension but weak speaking — is extremely common among heritage speakers, and research on Persian and other heritage languages suggests it comes from lopsided childhood exposure (lots of hearing, less speaking/reading) rather than a lack of ability. The fix isn't more grammar study in the abstract; it's deliberately shifting toward the production side you skipped: structured speaking practice, reading/writing (which heritage speakers often never got), and possibly formal instruction aimed specifically at heritage learners rather than beginners or monolingual natives.
Asked as someone learning Persian (beta). Findings drawn from Persian-specific research are framed for Persian learners and may not hold for other languages; where the evidence is general second-language research, the report says so.
Studies of heritage speakers across several languages (including a study of Labrador Inuttitut) describe a specific group called 'receptive bilinguals' — people who understand a great deal but produce little or no speech — and show that these speakers still hold real grammatical knowledge, just less accessible for output than for understanding.2,9
In plain terms
A study comparing thirty Persian-English heritage speakers in New Zealand to matched monolingual Persian speakers in Iran found the heritage speakers had smaller vocabularies and less varied, less sophisticated word choice in their spoken narratives, though the heritage speakers were far from having no ability in Persian.1,3,6,7
Among Persian heritage speakers, how old someone was when they moved away from a Persian-speaking environment (or how much sustained childhood exposure they had) predicted vocabulary and fluency better than how positively their family felt about keeping up Persian. Speakers who had more Persian-only childhood exposure, and later exposure to the English-dominant environment, tended to retain stronger Persian skills.1,6,7
Research on Iranian immigrant families found that parents were often satisfied once their children could hold a conversation in Persian, and rarely pushed for reading and writing skills — partly because of a lack of Persian community schools. This means many heritage speakers' gap isn't really 'speaking vs understanding' but literacy skills never being built at all.1,3,13
A study of Persian heritage speakers in the US found their spoken and written Persian follows consistent, predictable patterns (in plural forms, compound-verb usage, and subject-verb agreement) that sometimes differ from standard monolingual Persian but are not random errors — the heritage speakers had internally consistent grammar, including innovations not found in either monolingual Persian or English.4
A comprehensive handbook on second-language and heritage teaching of Persian devotes dedicated chapters to teaching speaking, listening, reading, and writing to Persian learners, and specifically distinguishes 'linguistic competence of Persian heritage vs second language speakers,' indicating that Persian-specific teaching methods (not generic language-learning advice) do exist and treat heritage learners as a different case from adult beginners.5
A survey of over 160 university students of Persian in the US found that many students, especially those with heritage backgrounds, favored 'compensation' strategies (working around gaps in knowledge, e.g. guessing or paraphrasing) and 'social' strategies (interacting with others) over strategies like flashcard-style memorization.8
In plain terms
Findings from heritage speakers of Russian, Spanish, Arabic, Korean, and Chinese show a recurring theme: production skills (speaking, complex grammar output) lag behind comprehension, and the size of that gap depends heavily on how much a person used the heritage language actively as a child, not on innate aptitude.10,11,12,14,15
Now pick something to do it with
Each of these opens an overview of the apps, courses and immersion material worth a look for that — filtered to exactly what the advice above points you at: