Romanian does stack auxiliaries — but only in a few specific, real places, and far more conservatively than French or other Romance languages. This page is a recognition guide to the forms where Romanian piles one auxiliary on top of fi: the presumptive perfect (o fi fost plecat, "he must have left"), the perfect of the conditional (aș fi fost, "I would have been"), and the perfect of the subjunctive (să fi fost, "to have been"). It also makes one honest negative claim that matters: Romanian has no productive double-compound past on the French surcomposé model. Any doubly-stacked past you hear in conversation (am fost mers) is dialectal and non-standard. Read these forms; do not invent them.
The common core: fi + participle
Every genuine stacked form in Romanian uses the same engine. A mood-or-presumptive auxiliary takes the invariable infinitive fi ("to be"), and fi in turn takes a past participle. The mood auxiliary tells you which shade of unreality you are in; the fi + participle tells you the action is completed. That is the whole machine:
[mood/presumptive auxiliary] + fi + [past participle]
Note that fi never changes form here — it is the bare short infinitive, not conjugated. The participle carries the lexical meaning (plecat, fost, văzut, spus), and it usually stays in the invariable masculine singular, exactly as it does in the perfect compus.
The presumptive perfect: o fi fost plecat
The presumptive (the mood of "must / might / probably," covered fully on the presumptive overview) has its own perfect. You stack the presumptive auxiliary o (fi) onto fi + participle to guess about something already completed:
o fi + fost + [participle] = "must / might have [done]"
O fi fost plecat deja când ai sunat tu.
He must have already left when you called. (presumptive perfect — an inference about a completed past)
Nu mai era nimeni acolo — o fi fost o glumă proastă.
There was no one there anymore — it must have been a bad joke.
O fi fost obosit, că a adormit pe canapea îmbrăcat.
He must have been tired, since he fell asleep on the couch with his clothes on.
Hear the three layers: o fi = "I infer," fost = the completed "being," and (where present) a second participle = what was done. This is the most baroque form in the everyday spoken language, yet Romanians use it casually to speculate about the past. English needs a whole modal-plus-perfect string — "must have been left" — to match it.
The perfect conditional: aș fi fost
The conditional-optative (the "would" mood — see the conditional overview) has a past tense built the same way. The conditional auxiliary series (aș, ai, ar, am, ați, ar) takes fi + participle:
aș / ai / ar / am / ați / ar + fi + [participle] = "would have [done]"
| Person | Perfect conditional of a pleca | Meaning |
|---|---|---|
| eu | aș fi plecat | I would have left |
| tu | ai fi plecat | you would have left |
| el / ea | ar fi plecat | he / she would have left |
| noi | am fi plecat | we would have left |
| voi | ați fi plecat | you (pl.) would have left |
| ei / ele | ar fi plecat | they would have left |
When the participle is fost itself, you get the double "to-have-been" stack aș fi fost:
Dacă aș fi știut, aș fi venit mai devreme.
If I had known, I would have come earlier. (the classic past-counterfactual)
Ar fi fost mai bine să-i spunem de la început.
It would have been better to tell him from the start.
Fără ajutorul tău, n-am fi reușit niciodată.
Without your help, we would never have succeeded.
This is the regret-and-counterfactual tense: things that could have happened in the past but did not. Unlike English, which conjugates the auxiliary have ("I would have left"), Romanian keeps fi frozen and inflects only the little conditional word in front.
The perfect subjunctive: să fi fost
The subjunctive likewise has a perfect, treated in full on its own page. It is the most economical of the three because it is invariable across all persons — the subjunctive marker să plus the unchanging fi + participle:
să fi + [participle] = "to have [done]" / "(that) … had [done]"
Îmi pare rău să fi spus asta — n-am vrut să te supăr.
I'm sorry to have said that — I didn't mean to upset you.
Trebuie să fi plecat deja, nu mai răspunde nimeni.
He must have already left, nobody's answering anymore.
Era posibil să fi greșit adresa.
It was possible that we had got the address wrong.
Notice trebuie să fi plecat sits right next to the presumptive o fi plecat in meaning — both express "must have." The subjunctive version is a touch more neutral and writable; the presumptive is more colloquial and speculative.
How the three line up
| Form | Structure | Means | Register |
|---|---|---|---|
| o fi fost plecat | presumptive aux + fi + participle | must / might have left | colloquial, speculative |
| aș fi plecat | conditional aux + fi + participle | would have left | neutral, very common |
| să fi plecat | să + fi + participle | to have left / (that) … had left | neutral / formal |
All three share the fi + participle spine. What changes is the single word in front — and that word tells you whether you are inferring (o fi), hypothesizing (aș), or subordinating a completed wish/doubt (să).
The honest negative: Romanian has no standard surcomposé
Here is where you must resist a tempting overgeneralization. French has a genuine, if regional, double-compound past — the passé surcomposé — where the auxiliary itself is put into the compound past: j'ai eu mangé ("I had-have eaten"). A learner who knows the fi + participle trick above might expect Romanian to stack a second avut the same way and produce a "double perfect." It does not. Standard literary Romanian expresses "had done" with the synthetic pluperfect — plecasem, mersesem, văzusem — a one-word tense, not a stacked one (see the pluperfect overview).
✅ Plecasem deja când ai sunat tu.
I had already left when you called. (standard synthetic pluperfect — this is the correct 'had left')
❌ Avusesem mâncat. / Am fost mâncat. (as standard 'I had eaten')
Not standard — Romanian does not build the pluperfect by stacking a compound auxiliary; use the synthetic mâncasem.
That said, doubly-compound pasts do exist regionally, and you may hear them — which is the reason this form appears on a recognition page at all.
The dialectal double-compound (recognition only)
In the Banat and Crișana dialects of western Romania, you will encounter genuine stacked pasts that function roughly as a pluperfect: am fost mers ("I had gone"), m-am fost dus ("I had gone away"), o fost mâncat ("he had eaten," with the regional 3rd-person auxiliary o/or instead of a/au). These are real spoken forms of those dialects, not errors — but they are non-standard and entirely absent from the literary language, which would use the synthetic pluperfect (mersesem, mă dusesem, mâncase) instead.
(regional: Banat) Când am ajuns, ei se-or fost dus deja.
When I arrived, they had already left. (dialectal double-compound — standard: se duseseră deja)
(regional: Banat) Eu am fost mâncat înainte să vină ei.
I had eaten before they came. (dialectal — standard: mâncasem)
Treat these strictly as listening recognition for western-dialect speech. Producing them in standard Romanian — or, worse, mistaking them for a sanctioned grammatical paradigm you can apply nationwide — marks you out immediately.
Why Romanian stacks so sparingly
The deep reason Romanian resists the surcomposé is structural. It kept a living synthetic pluperfect (plecasem) where French and Spanish lost theirs and had to rebuild a periphrastic "had" tense. With a perfectly good one-word "had left" already in the toolbox, Romanian never needed to invent a stacked one — so the only places it stacks are where the meaning itself requires two layers of modality plus completion: an inference about a past event (o fi fost), a counterfactual about a past event (aș fi fost), or a subordinated doubt about a past event (să fi fost). Stacking in standard Romanian is semantic, never merely formal.
Common Mistakes
❌ Producing 'am fost mers' as standard Romanian for 'I had gone.'
Wrong register — that is the dialectal Banat double-compound; the standard form is the synthetic pluperfect.
✅ Mersesem deja când au sosit.
I had already gone when they arrived.
❌ Aș fost plecat. (dropping fi)
Incorrect — the perfect conditional needs the auxiliary 'fi': aș + fi + participle.
✅ Aș fi plecat mai devreme.
I would have left earlier.
❌ O fi fust plecat. (mis-spelling fost)
Incorrect — the participle of a fi is 'fost', not *fust*; mind the o.
✅ O fi fost plecat deja.
He must have already left.
❌ Să fi fiind acolo. (mixing in the gerund)
Incorrect — the perfect subjunctive is 'să fi' + PARTICIPLE, not the gerund; say 'să fi fost acolo'.
✅ E posibil să fi fost acolo.
It's possible that he was there.
❌ Inflecting fi: aș fiu plecat / aș fie plecat.
Incorrect — in all these stacked forms 'fi' is invariable; never conjugate it.
✅ Aș fi plecat, ai fi plecat, ar fi plecat …
I/you/he would have left … (fi stays frozen).
Key Takeaways
- Romanian stacks auxiliaries only in three genuine standard forms, all built on invariable fi + participle: the presumptive perfect (o fi fost plecat), the perfect conditional (aș fi plecat), and the perfect subjunctive (să fi plecat).
- The front word chooses the meaning: o fi = inference, aș/ar = counterfactual, să = subordinated doubt/wish. fi never inflects.
- Romanian has no standard French-style surcomposé; "had left" is the synthetic pluperfect (plecasem), a single word.
- The doubly-compound pasts am fost mers / o fost mâncat are dialectal (Banat/Crișana) — recognize them in western speech, but never produce them as standard Romanian.
- This is a recognition page: parse "fi + participle," identify the front auxiliary, and you can read any of these forms even when you would not produce them.
Now practice Romanian
Reading grammar gets you part of the way. The exercises are where it sticks — free, no signup needed.
Start learning Romanian→Related Topics
- The Presumptive Mood: OverviewC1 — An introduction to the Romanian prezumtiv — the mood of supposition, probability, and hearsay (must be, might be, supposedly is) built on o fi.
- Conjunctiv Perfect: să fi + participleB2 — How to form and use the past subjunctive — invariable să fi plus a participle — for past actions under a subjunctive trigger and for epistemic inference.
- The Conditional-Optative: OverviewB1 — An introduction to condițional-optativul, Romanian's 'would' mood — built from the dedicated auxiliary aș, ai, ar, am, ați, ar plus the bare short infinitive — covering polite requests, hypotheticals, and wishes, with the homograph traps spelled out.
- Disambiguating o/ar Forms: PracticeC1 — A practice page untangling Romanian's two most overloaded little words — o (the o-să future marker, the popular-future auxiliary o veni, AND the feminine clitic in am văzut-o) and ar (the conditional auxiliary AND the reportative/presumptive marker) — with a mechanical decoding rule: look at what FOLLOWS.
- Archaic and Poetic Verb Forms in ReadingC2 — A recognition guide to the verb forms 19th-century and folk Romanian uses but modern speech has shed — the perfect simplu as the everyday narrative past (zise, făcu, plecară), the synthetic pluperfect in narration, enclitic optatives (Bată-te norocul!, Facă-se voia Ta), the -ră 3pl endings, and pre-1993 spellings (sînt, romîn) — so you can read Eminescu, Creangă, and Caragiale without producing these in speech.