Every compound tense in Spanish is built from exactly two pieces: a conjugated form of the auxiliary verb haber, followed by the past participle of the main verb. Once you know how haber conjugates in a given tense and mood, you know how the corresponding compound tense behaves — only the auxiliary moves. That makes this one of the most economical corners of Spanish grammar: seven living compound tenses, one shape, one auxiliary, one participle that never agrees with anything. This page is the master reference. Use the model verb hablar throughout; substitute any participle (regular or irregular) on the right of haber to get any verb's compound forms.
The architecture
| Compound tense | Auxiliary tense | Sample (yo) | CEFR |
|---|---|---|---|
| Pretérito perfecto compuesto | present indicative | he hablado | A2 |
| Pretérito pluscuamperfecto | imperfect indicative | había hablado | B1 |
| Pretérito anterior | preterite indicative | hube hablado | C1 (literary) |
| Futuro compuesto | future indicative | habré hablado | B1 |
| Condicional compuesto | conditional | habría hablado | B1 |
| Pretérito perfecto de subjuntivo | present subjunctive | haya hablado | B1 |
| Pluscuamperfecto de subjuntivo | imperfect subjunctive | hubiera/hubiese hablado | B2 |
There are two further forms — the future perfect subjunctive (hubiere hablado) and infinitive perfect (haber hablado) — but the first is archaic and the second is a non-finite form covered elsewhere. The list above is what you actually use.
Pretérito perfecto compuesto — the workhorse of peninsular Spanish
| yo | tú | él/ella/usted | nosotros | vosotros | ellos/ellas/ustedes |
|---|---|---|---|---|---|
| he hablado | has hablado | ha hablado | hemos hablado | habéis hablado | han hablado |
In Spain, this is the default past tense for any event the speaker mentally locates in a still-open time frame: today, this week, this month, this year, in my life so far. Latin-American Spanish often uses the simple preterite in the same contexts — hoy hablé con ella is normal in Mexico City, but in Madrid you say hoy he hablado con ella.
Esta semana he ido al cine tres veces.
I've been to the cinema three times this week.
¿Has comido ya? — Sí, he comido en casa de mi madre.
Have you eaten yet? — Yes, I ate at my mum's.
Nunca he estado en Japón, pero me encantaría ir.
I've never been to Japan, but I'd love to go.
The temporal connectors that lock in the present perfect in Spain are clear: hoy, esta mañana, esta semana, este mes, este año, últimamente, ya, todavía no, nunca, alguna vez.
Pretérito pluscuamperfecto — the past of the past
| yo | tú | él | nosotros | vosotros | ellos |
|---|---|---|---|---|---|
| había hablado | habías hablado | había hablado | habíamos hablado | habíais hablado | habían hablado |
When two past events line up in sequence, Spanish uses the pluperfect to mark the earlier one. The reference point is a past event named in the sentence or implied by context.
Cuando llegué al cine, la película ya había empezado.
When I got to the cinema, the film had already started.
Me dijo que nunca había probado el gazpacho.
He told me he'd never tried gazpacho.
Antes de mudarme a Madrid, había vivido cinco años en Bilbao.
Before moving to Madrid, I had lived in Bilbao for five years.
This is the safest of all compound tenses to use — its meaning maps almost perfectly onto English "had + past participle."
Pretérito anterior — the literary fossil
| yo | tú | él | nosotros | vosotros | ellos |
|---|---|---|---|---|---|
| hube hablado | hubiste hablado | hubo hablado | hubimos hablado | hubisteis hablado | hubieron hablado |
The preterite anterior names an action completed immediately before another past action, typically after time conjunctions like cuando, apenas, después de que, en cuanto, una vez que. In modern speech it has been completely replaced by the pluperfect (había hablado) or simply the preterite. You will encounter it in 19th-century novels, legal documents, and old academic prose — produce it only when consciously imitating that register.
Apenas hubo terminado de hablar, todos se levantaron. (literary)
As soon as he had finished speaking, everyone stood up.
Futuro compuesto — future-in-the-future and recent-past conjecture
| yo | tú | él | nosotros | vosotros | ellos |
|---|---|---|---|---|---|
| habré hablado | habrás hablado | habrá hablado | habremos hablado | habréis hablado | habrán hablado |
Two distinct uses, both common.
Use 1 — Future completion before a future point:
Para el viernes ya habré terminado el informe.
By Friday I'll have finished the report.
Cuando llegues, los niños ya se habrán dormido.
By the time you arrive, the kids will have fallen asleep.
Use 2 — Conjecture about a recent past event (very common in Spain, almost invisible to learners):
¿Dónde está Marta? — No sé, habrá salido a por pan.
Where's Marta? — I don't know, she must have gone out for bread.
Le ha dado un cólico — habrá comido demasiado.
She's got a stomach ache — she must have eaten too much.
The conjectural future perfect is one of the markers of fluent, native-sounding Spanish. Beginners almost never produce it; once you do, your Spanish jumps a register.
Condicional compuesto — the hypothetical past
| yo | tú | él | nosotros | vosotros | ellos |
|---|---|---|---|---|---|
| habría hablado | habrías hablado | habría hablado | habríamos hablado | habríais hablado | habrían hablado |
The conditional perfect is the natural pair for past counterfactuals: it names what would have happened under conditions that did not hold.
Yo habría llamado a la policía, pero ellos no quisieron.
I would have called the police, but they didn't want to.
Si me lo hubieras dicho antes, no habría comprado los billetes.
If you'd told me earlier, I wouldn't have bought the tickets.
It also serves as a past conjecture, parallel to the future perfect:
Ya serían las once cuando llegaron. Habrían cenado por el camino.
It must have been eleven by the time they arrived. They'd probably had dinner on the way.
Pretérito perfecto de subjuntivo — the subjunctive sibling of he hablado
| yo | tú | él | nosotros | vosotros | ellos |
|---|---|---|---|---|---|
| haya hablado | hayas hablado | haya hablado | hayamos hablado | hayáis hablado | hayan hablado |
Use it whenever the trigger is in the present, future, or imperative, and the event being talked about is completed before or by the moment of speaking (or by a future reference point).
Me alegro mucho de que hayas aprobado el examen.
I'm really glad you passed the exam.
No creo que haya salido todavía — su coche sigue en el garaje.
I don't think she's left yet — her car is still in the garage.
En cuanto hayas terminado, me avisas.
As soon as you've finished, let me know.
The third example is worth a moment of attention: en cuanto + future event in the subordinate clause requires the subjunctive, and when that future event is completed by the time of the main verb, you use the perfect subjunctive. This is one of the most native-sounding constructions in everyday Spanish.
Pluscuamperfecto de subjuntivo — counterfactual past and embedded past-of-past
| yo | tú | él | nosotros | vosotros | ellos |
|---|---|---|---|---|---|
| hubiera/hubiese hablado | hubieras/hubieses hablado | hubiera/hubiese hablado | hubiéramos/hubiésemos hablado | hubierais/hubieseis hablado | hubieran/hubiesen hablado |
This is the workhorse of past counterfactual conditions — si + pluperfect subjunctive in the protasis, conditional perfect (or pluperfect subjunctive itself) in the apodosis.
Si hubiera estudiado más, habría aprobado.
If I'd studied more, I would have passed.
Si me lo hubieses dicho, te habría ayudado.
If you had told me, I would have helped you.
It also appears after past triggers when the embedded event precedes the trigger:
Me alegré mucho de que hubieras venido a la fiesta.
I was really glad you'd come to the party.
Era una pena que no nos hubiéramos conocido antes.
It was a shame we hadn't met sooner.
As with the imperfect subjunctive, -ra and -se are interchangeable; -ra dominates in spoken Spain, -se sounds more formal or literary.
Irregular past participles — the closed list
The participle never agrees, but a small set of high-frequency verbs have irregular participles. These shapes are non-negotiable — you must memorize them.
| Infinitive | Participle | Translation |
|---|---|---|
| abrir | abierto | opened |
| cubrir | cubierto | covered |
| decir | dicho | said |
| escribir | escrito | written |
| hacer | hecho | done, made |
| morir | muerto | died |
| poner | puesto | put |
| resolver | resuelto | resolved |
| romper | roto | broken |
| ver | visto | seen |
| volver | vuelto | returned |
| imprimir | impreso (or imprimido) | printed |
| freír | frito (or freído) | fried |
Verbs derived from these inherit the same irregularity: describir → descrito, descubrir → descubierto, devolver → devuelto, deshacer → deshecho, suponer → supuesto.
Word order: nothing comes between haber and the participle
In modern Spanish, the auxiliary and participle are inseparable. Adverbs, object pronouns, negation — they all go before haber.
Nunca he visto nada así. (adverb before haber)
I've never seen anything like it.
Ya me lo ha dicho. (pronouns before haber)
She's already told me.
No te he llamado. (negation before haber)
I haven't called you.
In older Spanish you find things like Hecho lo he or Visto te he, but in modern usage these are archaic or poetic only.
Common Mistakes
❌ La carta está escribida.
*Escribir* has an irregular participle — *escrita*, not *escribida*.
✅ La carta está escrita.
The letter is written.
❌ Hoy yo hablé con ella.
In peninsular Spanish, *hoy* triggers the present perfect, not the preterite.
✅ Hoy he hablado con ella.
I spoke with her today.
❌ He ya comido.
Adverbs never come between the auxiliary and the participle.
✅ Ya he comido. / He comido ya.
I've already eaten.
❌ Si hubiera sabido, lo dije.
A past counterfactual requires the conditional perfect (or pluperfect subjunctive) in the main clause, not the preterite.
✅ Si hubiera sabido, lo habría dicho. / Si hubiera sabido, lo hubiera dicho.
If I had known, I would have said it.
❌ Me alegro de que has venido.
An emotion trigger requires the subjunctive in the subordinate clause — *haya venido*, not *has venido*.
✅ Me alegro de que hayas venido.
I'm glad you've come.
Key Takeaways
- All compound tenses share one architecture: a conjugated form of haber
- an invariant past participle.
- Peninsular Spanish leans heavily on the present perfect (he hablado) for events the speaker frames as connected to the present.
- The future perfect and conditional perfect both have a conjectural reading (must have / would have) — learning these unlocks a register native speakers use constantly.
- Past counterfactuals pair the pluperfect subjunctive with the conditional perfect (or another pluperfect subjunctive) — si hubiera sabido, habría / hubiera dicho.
- The pretérito anterior is alive only in literary and legal registers.
Now practice Spanish
Reading grammar gets you part of the way. The exercises are where it sticks — free, no signup needed.
Start learning Spanish→Related Topics
- Pretérito perfecto: formaciónA2 — How Spanish builds the present perfect: haber in the present indicative plus the past participle, with the peninsular vosotros form habéis at the centre and the construction rules that govern pronoun placement and adverb position.
- Pluscuamperfecto: formaciónB1 — How to form the Spanish pluperfect — imperfect of haber (había, habías, había, habíamos, habíais, habían) plus the past participle — with the obligatory accent on había, the peninsular vosotros form habíais, and the participle agreement rules you can ignore.
- Futuro compuesto: formaciónB1 — How to form the future perfect (habré comido, habrás llegado) in peninsular Spanish, plus an introduction to its core uses.
- Condicional compuesto: formaciónB2 — How to form the conditional perfect: habría + past participle. Full paradigm including vosotros, accents, and irregular participles.
- Todos los tiempos de un vistazoA2 — A single-page master reference of every Spanish tense and mood, with a sample regular verb fully conjugated, the name in English and Spanish, the CEFR level it appears at, and what each tense is for.