Spanish has a parallel series of compound tenses — one for each simple tense. Every compound tense is built the same way: a conjugated form of the auxiliary verb haber followed by the past participle of the main verb. Mastering the compound tenses therefore reduces to two things: knowing how to conjugate haber, and knowing how to form past participles.
This page is a single-location reference for every compound tense in the system, including the rare preterite perfect. For the simple tenses on which these are built, see Tenses Overview.
The Building Blocks
Haber as Auxiliary
Haber is the universal perfect auxiliary in Spanish. It is never replaced by ser or tener in this role, unlike French (avoir/être) or Italian (avere/essere). Every compound tense uses haber.
| Person | Present | Imperfect | Preterite | Future | Conditional | Subjunctive | Imperfect subjunctive |
|---|---|---|---|---|---|---|---|
| yo | he | había | hube | habré | habría | haya | hubiera |
| tú | has | habías | hubiste | habrás | habrías | hayas | hubieras |
| él/ella/ud. | ha | había | hubo | habrá | habría | haya | hubiera |
| nosotros | hemos | habíamos | hubimos | habremos | habríamos | hayamos | hubiéramos |
| ellos/uds. | han | habían | hubieron | habrán | habrían | hayan | hubieran |
See Auxiliary Verbs for the semantic details of haber.
The Past Participle
The past participle is formed by replacing the infinitive ending with -ado (for -ar verbs) or -ido (for -er and -ir verbs).
| Infinitive | Past participle |
|---|---|
| hablar | hablado |
| trabajar | trabajado |
| cantar | cantado |
| comer | comido |
| beber | bebido |
| vivir | vivido |
| salir | salido |
Irregular Participles
A small number of common verbs have irregular past participles. Memorize them — they appear in every compound tense.
| Infinitive | Past participle | Meaning |
|---|---|---|
| abrir | abierto | opened |
| cubrir | cubierto | covered |
| descubrir | descubierto | discovered |
| decir | dicho | said |
| escribir | escrito | written |
| describir | descrito | described |
| hacer | hecho | done, made |
| deshacer | deshecho | undone |
| morir | muerto | died |
| poner | puesto | put |
| componer | compuesto | composed |
| resolver | resuelto | resolved |
| romper | roto | broken |
| ver | visto | seen |
| volver | vuelto | returned |
| devolver | devuelto | given back |
| ir | ido | gone |
| ser | sido | been |
Some verbs have both a regular and an irregular participle (e.g., freír → freído / frito, imprimir → imprimido / impreso). In compound tenses the regular form is traditionally preferred, although usage varies.
For a deeper look, see Past Participle Formation and Irregular Participles.
Present Perfect — Pretérito Perfecto Compuesto
Present of haber + past participle. This tense expresses a past action whose effects or timeframe reach into the present, or a past action within a still-open time frame (today, this week, this year).
| Person | Form |
|---|---|
| yo | he hablado |
| tú | has hablado |
| él/ella/ud. | ha hablado |
| nosotros | hemos hablado |
| ellos/uds. | han hablado |
He terminado la tarea.
I have finished the homework.
See Present Perfect: Formation for usage details.
Pluperfect — Pretérito Pluscuamperfecto
Imperfect of haber + past participle. Expresses an action that happened before another past action — the Spanish equivalent of English had done.
| Person | Form |
|---|---|
| yo | había comido |
| tú | habías comido |
| él/ella/ud. | había comido |
| nosotros | habíamos comido |
| ellos/uds. | habían comido |
Nunca había visto algo así.
I had never seen anything like that.
Me dijo que había vivido en México tres años.
She told me she had lived in Mexico for three years.
Preterite Perfect — Pretérito Anterior
Preterite of haber + past participle. This is the most literary and least frequent of the compound tenses. You will almost never produce it yourself, but you will see it in nineteenth-century novels and formal historiography. It expresses an action that happened immediately before another past action, introduced by expressions like apenas, cuando, en cuanto, no bien, tan pronto como.
| Person | Form |
|---|---|
| yo | hube llegado |
| tú | hubiste llegado |
| él/ella/ud. | hubo llegado |
| nosotros | hubimos llegado |
| ellos/uds. | hubieron llegado |
Apenas hubo salido el sol, partimos.
As soon as the sun had risen, we set off.
En cuanto hubieron terminado, se retiraron.
As soon as they had finished, they withdrew.
Future Perfect — Futuro Perfecto
Future of haber + past participle. Expresses an action that will be completed before a reference point in the future. It is also used to make a conjecture about the recent past.
| Person | Form |
|---|---|
| yo | habré terminado |
| tú | habrás terminado |
| él/ella/ud. | habrá terminado |
| nosotros | habremos terminado |
| ellos/uds. | habrán terminado |
Para el viernes habré terminado el informe.
By Friday I will have finished the report.
Cuando llegues, ya me habré ido.
When you arrive, I will have already left.
Habrá perdido el tren — nunca llega tarde.
He must have missed the train — he's never late.
The third example shows the conjectural use: the speaker is guessing about the present-past cause of a current situation.
Conditional Perfect — Condicional Perfecto
Conditional of haber + past participle. Expresses would have done — an action that would have occurred under some condition. It is the most common tense in the main clause of a past contrary-to-fact conditional.
| Person | Form |
|---|---|
| yo | habría dicho |
| tú | habrías dicho |
| él/ella/ud. | habría dicho |
| nosotros | habríamos dicho |
| ellos/uds. | habrían dicho |
Yo habría hecho lo mismo.
I would have done the same.
Si hubiera sabido, te habría llamado.
If I had known, I would have called you.
Habríamos llegado antes, pero hubo un accidente.
We would have arrived earlier, but there was an accident.
Notice in the second example how the conditional perfect pairs with the pluperfect subjunctive (hubiera sabido) to form a past contrary-to-fact conditional. This is one of the most important compound-tense patterns in the language.
Present Perfect Subjunctive — Pretérito Perfecto de Subjuntivo
Present subjunctive of haber + past participle. Used in subordinate clauses that require the subjunctive when the main verb expresses a reaction, evaluation, or doubt about a recently completed action.
| Person | Form |
|---|---|
| yo | haya hablado |
| tú | hayas hablado |
| él/ella/ud. | haya hablado |
| nosotros | hayamos hablado |
| ellos/uds. | hayan hablado |
Me alegra que hayas venido.
I'm glad you came.
Espero que no hayan tenido problemas.
I hope they haven't had problems.
Es posible que ya haya llegado.
It's possible that he has already arrived.
See Present Perfect Subjunctive.
Pluperfect Subjunctive — Pretérito Pluscuamperfecto de Subjuntivo
Imperfect subjunctive of haber + past participle. Used for past contrary-to-fact conditions and in subordinate clauses requiring the subjunctive when the main verb is in a past tense and refers to something anterior.
There are two sets of forms — hubiera and hubiese — completely interchangeable. The hubiera series is more common in Latin America.
| Person | -ra form | -se form |
|---|---|---|
| yo | hubiera hablado | hubiese hablado |
| tú | hubieras hablado | hubieses hablado |
| él/ella/ud. | hubiera hablado | hubiese hablado |
| nosotros | hubiéramos hablado | hubiésemos hablado |
| ellos/uds. | hubieran hablado | hubiesen hablado |
Si hubiera estudiado más, habría aprobado.
If I had studied more, I would have passed.
No creía que hubiera dicho eso.
I didn't believe she had said that.
Ojalá hubiéramos ido juntos.
I wish we had gone together.
Word Order: Nothing Between Haber and the Participle
This is perhaps the most important formal rule of compound tenses, and the place where learners coming from English or French most often go wrong.
Nothing may come between haber and the past participle. No subject, no adverb, no object pronoun, no negation word — nothing.
| Wrong | Right |
|---|---|
| *he siempre comido aquí | siempre he comido aquí |
| *han ellos llegado | han llegado ellos / ellos han llegado |
| *he lo visto | lo he visto |
| *no he lo visto | no lo he visto |
| *habría ya terminado | ya habría terminado |
Siempre hemos vivido aquí.
We have always lived here.
Nunca lo he visto tan contento.
I have never seen him so happy.
¿Ya has comido?
Have you eaten yet?
Note how siempre, nunca, and ya all stand before haber, not between haber and the participle. In English the adverb often slots between have and done (I have always lived), but this is ungrammatical in Spanish.
Object and reflexive pronouns follow the same rule: they attach to haber or move to the front of the verb phrase, but never between the auxiliary and the participle.
Me he lavado las manos.
I have washed my hands.
No te he dicho todo todavía.
I haven't told you everything yet.
Participle Agreement: Not With Haber
Here is a surprisingly clean rule: the past participle never agrees with anything when it follows haber. It is always the masculine singular form.
| Wrong | Right |
|---|---|
| *María ha hablada | María ha hablado |
| *Las cartas las he escritas | Las cartas las he escrito |
| *Los niños se han dormidos | Los niños se han dormido |
This contrasts sharply with French (Marie a parlé / les lettres que j'ai écrites) and Italian (le lettere le ho scritte). Spanish does not agree.
However, the past participle does agree in two other constructions:
- With ser in the true passive: Las cartas fueron *escritas por el presidente.*
- As an adjective or with estar: Las ventanas están *abiertas.*
These are not compound tenses. The distinction is crucial.
Hemos escrito tres cartas.
We have written three letters.
Tres cartas fueron escritas.
Three letters were written.
Las cartas están escritas.
The letters are written.
Same verb, three different constructions. Only the first is a compound tense, and only the first has an invariant -o ending.
Summary Table of All Compound Tenses
| Compound tense | Haber in… | Example (yo, hablar) |
|---|---|---|
| Present perfect | Present | he hablado |
| Pluperfect | Imperfect | había hablado |
| Preterite perfect | Preterite | hube hablado |
| Future perfect | Future | habré hablado |
| Conditional perfect | Conditional | habría hablado |
| Present perfect subjunctive | Present subjunctive | haya hablado |
| Pluperfect subjunctive | Imperfect subjunctive | hubiera hablado |
There is no future perfect subjunctive in modern Spanish; the archaic hubiere hablado exists only in legal language.
Putting It All Together
Siempre he querido aprender italiano.
I have always wanted to learn Italian.
Cuando me llamaste, ya había salido.
When you called me, I had already left.
Para diciembre habremos terminado el proyecto.
By December we will have finished the project.
Habríamos ido, pero no teníamos tiempo.
We would have gone, but we didn't have time.
Dudo que hayan llegado a tiempo.
I doubt they arrived on time.
Si me lo hubieras dicho antes, habría hecho algo.
If you had told me earlier, I would have done something.
These six sentences use six of the seven compound tenses. Once you recognize the haber + participle pattern, the entire system unlocks at once.
Key Takeaways
- Every compound tense = haber (in some tense/mood) + past participle.
- The participle is formed with -ado or -ido; about twenty common verbs are irregular (abierto, dicho, escrito, hecho, puesto, roto, visto, vuelto, etc.).
- The participle never agrees with anything when it follows haber. It is always -o.
- Participle agreement occurs with ser passive and with estar as adjective — not in compound tenses.
- Nothing comes between haber and the participle — adverbs, pronouns, and negations move to the front of the auxiliary.
- The preterite perfect (hube hablado) is literary; use the preterite or pluperfect in its place.
- The conditional perfect pairs with the pluperfect subjunctive in past contrary-to-fact conditions (Si hubiera sabido, habría venido).
For more on the individual tenses, see Present Perfect, Pluperfect, and Past Participle.
Related Topics
- Auxiliary Verbs (Haber, Estar, Ser)A2 — The three main auxiliary verbs and their roles in compound tenses
- Overview of All TensesA2 — A map of every Spanish verb tense, simple and compound, indicative and subjunctive
- Past Participle FormationA2 — Regular past participles end in -ado for -ar verbs and -ido for -er and -ir verbs, with twelve common irregulars and accented -ído for vowel stems.
- Irregular Past ParticiplesB1 — The dozen or so common verbs whose past participles do not follow the regular -ado/-ido pattern.
- Formation (Haber + Past Participle)A2 — The present perfect in Spanish is built from the present tense of haber plus the past participle of the main verb.
- Pluperfect: Formation (Había + Past Participle)B1 — Learn how to form the Spanish pluperfect tense using the imperfect of haber plus the past participle.
- Present Perfect SubjunctiveB2 — Forming and using the present perfect subjunctive in Spanish to talk about completed actions after present-tense triggers.