The Persian past perfect places a completed event before another past reference point: وقتی رسیدم، جلسه شروع شده بود “When I arrived, the meeting had started.” It is formed with a past participle followed by an inflected past form of بودن: رفته بودم، دیده بودی، تمام شده بود.
English calls the same tense the past perfect or pluperfect and uses had + participle. Persian reverses the auxiliary order familiar to an English learner: the lexical participle comes first, then بود carries person and number.
Formation: participle plus past بودن
The participle remains unchanged. The past auxiliary agrees with the subject:
| Person | Auxiliary | رفتن: past perfect | Meaning |
|---|---|---|---|
| I | بودم | رفته بودم | I had gone |
| you (singular) | بودی | رفته بودی | you had gone |
| he/she/it | بود | رفته بود | he/she/it had gone |
| we | بودیم | رفته بودیم | we had gone |
| you (plural/polite) | بودید | رفته بودید | you had gone |
| they | بودند | رفته بودند | they had gone |
تا آن روز هرگز سوار هواپیما نشده بودم.
tâ ân ruz hargaz savâr-e havâpeymâ nashode budam.
Until that day, I had never been on an airplane. (neutral standard; first singular)
شما پیش از جلسه این گزارش را خوانده بودید؟
shomâ pish az jalase in gozâresh râ khânde budid?
Had you read this report before the meeting? (polite standard)
آنها مسیر دیگری را انتخاب کرده بودند.
ân-hâ masir-e digari râ entekhâb karde budand.
They had chosen another route. (neutral standard; third plural)
The auxiliary, not the participle, changes for person. خوانده remains identical in خوانده بودم and خوانده بودند.
If these forms are not yet transparent, review Past Participle in ه before adding the بود paradigm.
An event before a past reference point
The reference point may be another event, a clock time, or a situation already established in the story. وقتی “when,” پیش از آن “before that,” تا آن زمان “by that time,” and هنوز “yet/still” often make the ordering visible.
وقتی به فرودگاه رسیدیم، هواپیما بلند شده بود.
vaqti be forudgâh residim, havâpeymâ boland shode bud.
When we reached the airport, the plane had taken off. (earlier departure, later arrival)
ساعت ده فروشگاه بسته بود، چون کارکنان زودتر رفته بودند.
sâ'at-e dah forushgâh baste bud, chun kârkonân zud-tar rafte budand.
At ten the shop was closed because the staff had left earlier. (past result explained by an earlier event)
تا آن زمان جواب هیچکدام از نامهها نرسیده بود.
tâ ân zamân javâb-e hich-kodâm az nâme-hâ naraside bud.
By that time, the answer to none of the letters had arrived. (formal-neutral)
Only one finite clause needs to state the later past point if discourse already supplies it. After a narrator says “I opened the office at eight,” کارکنان هنوز نیامده بودند naturally means “the employees had not arrived yet” relative to eight.
The crucial contrast with simple past
The simple past advances the main timeline. The past perfect looks backward from that timeline.
وقتی وارد اتاق شدیم، سخنرانی شروع شد.
vaqti vâred-e otâq shodim, sokhanrâni shoru' shod.
When we entered the room, the talk began. (simple past; beginning at or after our entrance)
وقتی وارد سالن شدیم، سخنرانی شروع شده بود.
vaqti vâred-e sâlon shodim, sokhanrâni shoru' shode bud.
When we entered the hall, the talk had begun. (past perfect; beginning before our entrance)
The contrast is not merely “long ago” versus “recent.” Both events may be minutes apart. What matters is their ordering relative to a chosen past viewpoint.
Persian, like English, can sometimes use two simple past forms when قبل از اینکه or world knowledge already makes the order unmistakable. Use the past perfect when the backward step matters, when ambiguity is possible, or when the earlier result explains the later scene.
Narrative sequencing and explanation
Writers use the past perfect to supply background causes without losing the main narrative position. The story reaches a past scene, looks farther back for an explanation, then returns to the main line.
باران بند آمده بود، اما خیابانها هنوز خیس بودند. تاکسی گرفتم و به خانه برگشتم.
bârân band âmade bud, ammâ khiyâbân-hâ hanuz khis budand. tâksi gereftam-o be khâne bar-gashtam.
The rain had stopped, but the streets were still wet. I took a taxi and returned home. (connected narrative: prior result, then main events)
مریم ناراحت بود، چون کسی خبر تغییر برنامه را به او نداده بود.
maryam nârâhat bud, chun kasi khabar-e taghyir-e barnâme râ be u nadâde bud.
Maryam was upset because nobody had told her about the schedule change. (earlier cause of a past state)
The connected example does not repeat قبلا “already.” The past perfect itself places the rain's stopping before the wet-street scene.
Negation
The ordinary negative past perfect places نـ inside the participle: نرفته بودم، ندیده بودی، شروع نشده بود، پاسخ نداده بودند. The auxiliary remains affirmative because negation targets the earlier event.
پیش از آن شب برف سنگینی ندیده بودیم.
pish az ân shab barf-e sangini nadide budim.
Before that night, we had not seen heavy snow. (neutral standard)
هنوز غذا را سفارش نداده بودم که دوستم رسید.
hanuz ghazâ râ sefâresh nadâde budam ke dust-am resid.
I had not yet ordered the food when my friend arrived. (earlier noncompletion interrupted by later event)
رفته نبودم can occur when the speaker contrastively denies a resulting state, but it is not the neutral negative of the past perfect. For ordinary anterior-event negation, learn نرفته بودم.
Compound verbs and word order
Only the light verb becomes participial: کار کرده بودم، تماس گرفته بود، تصمیم نگرفته بودند. The inflected بودن follows the complete participial predicate.
پیش از مهاجرت پنج سال در آن شرکت کار کرده بودم.
pish az mohâjerat panj sâl dar ân sherkat kâr karde budam.
Before emigrating, I had worked at that company for five years. (neutral standard)
تا پایان هفته هنوز تصمیم نهایی را نگرفته بودند.
tâ pâyân-e hafte hanuz tasmim-e nahâyi râ nagerefte budand.
By the end of the week, they still had not made the final decision. (formal-neutral)
Colloquial Tehran forms
Everyday Tehran speech (informal, regional: Tehran) keeps the participle plus بود structure but reduces plural endings: standard رفته بودید/رفته بودند correspond to رفته بودین/رفته بودن. These are natural conversation forms, not spellings for formal prose.
وقتی ما رسیدیم، اونا رفته بودن.
vaqti mâ residim, unâ rafte budan.
When we arrived, they had left. (informal, regional: Tehran)
شما قبل از این هم اینجا کار کرده بودین؟
shomâ qabl az in ham injâ kâr karde budin?
Had you worked here before too? (informal, regional: Tehran; polite/plural)
A short exchange
چرا آنقدر دیر رسیدی که جلسه تمام شده بود؟
cherâ ân-qadr dir residi ke jalase tamâm shode bud?
Why did you arrive so late that the meeting had already ended? (careful spoken standard)
چون ساعت شروع را اشتباه نوشته بودم و دیر رسیدم.
chun sâ'at-e shoru' râ eshtebâh neveshte budam-o dir residam.
Because I had written down the start time incorrectly and arrived late. (careful spoken standard)
Common Mistakes
1. Copying English auxiliary-first order
❌ من بودم رفته به خانه.
Incorrect — Persian places the participle before the inflected auxiliary.
✅ من پیش از تاریکی به خانه رفته بودم.
man pish az târiki be khâne rafte budam.
I had gone home before dark.
2. Using the present perfect for past-before-past
❌ وقتی رسیدی، من رفتهام.
Incorrect time anchoring for the intended earlier past event — رفتهام is anchored to the present.
✅ وقتی رسیدی، من از دفتر رفته بودم.
vaqti residi, man az daftar rafte budam.
When you arrived, I had left the office.
3. Separating the negative prefix
❌ تا آن روز ن رفته بودم.
Incorrect spelling — نـ attaches directly inside the participle نرفته.
✅ تا آن روز به جنوب ایران نرفته بودم.
tâ ân ruz be jonub-e irân narafte budam.
Until that day I had not traveled to southern Iran.
4. Building the participle from the present stem
❌ پیش از جلسه گزارش را بینه بودم.
Incorrect — the participle of دیدن is دیده, built from past stem دید.
✅ پیش از جلسه نمودارها را دیده بودم.
pish az jalase nemudâr-hâ râ dide budam.
I had seen the charts before the meeting.
5. Mismatching the auxiliary with the subject
❌ ما پیش از شما رسیده بودند.
Incorrect — first-plural ما requires بودیم, not بودند.
✅ ما نیم ساعت پیش از شما رسیده بودیم.
mâ nim sâ'at pish az shomâ reside budim.
We had arrived half an hour before you.
Key Takeaways
- Form the past perfect with past participle + بودم/بودی/بود/بودیم/بودید/بودند.
- It places an event before another past event, time, or discourse viewpoint.
- Use simple past for the main narrative line and past perfect for a backward step.
- Negate the participle: نرفته بودم، جواب نداده بودند.
- Tehran بودین/بودن correspond to standard بودید/بودند in informal conversation.
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
- Simple Past FormationA1 — Build the Persian simple past from the past stem and personal endings, including the zero third-person singular and completed-event reading.
- Past Participle in هA2 — Build Persian past participles by adding ه to the past stem, then use them in perfect forms, compound predicates, and adjectival result descriptions.
- Present Perfect FormationA2 — Form the Persian present perfect with a past participle and present copula, including six standard spellings, negation, compound verbs, and Tehran reductions.
- Present Perfect UsesA2 — Choose the Persian present perfect for current relevance, present results, life experience, and recent reporting, and contrast it with simple-past narration.
- Past Continuous with میA2 — Form the Persian past imperfective with می plus the past stem for background actions, repeated past events, and developing counterfactual meanings.
- Simple Past or Present Perfect?A2 — Choose the Persian simple past for a completed narrative event and the present perfect for current relevance, experience, fresh evidence, or a continuing result.