Jarana Spanish

The Spanish past perfect: había + participle

Short answer

The past perfect is haber in the imperfect — había, habías, había, habíamos, habían — plus a past participle. It marks an action that happened before another past action: cuando llegué, ya se habían ido. If your sentence has only one past event in it, you do not need this tense at all.

Course · Unit: The past CEFR B2 Reviewed by Jhoslyn Updated 2026-09-12

Draft copy. Every claim needs a native-speaker check before publishing — the byline is what makes this citable, so it has to be earned.

The past before the past

This tense does one job: it puts two past events in order.

Cuando llegué al aeropuerto, el avión ya había despegado. When I got to the airport, the plane had already taken off.

Two things happened. The plane took off first, so the plane gets había despegado. I arrived second, so I get the plain pretérito, llegué.

That is the whole rule, and it is more useful than “the past perfect is for the distant past”. Distance has nothing to do with it. Hace dos minutos ya se habían ido is fine — two minutes is not distant, but it is still earlier than the moment you are telling the story from.

The test: is there a second past moment in the sentence, spoken or implied? If not, use the pretérito and stop.

Building it

Haber in the imperfect, then the participle. The participle never changes — no agreement, ever.

haber+ participle
yohabíahablado
habíascomido
él / ella / ustedhabíavivido
nosotroshabíamossalido
ustedes / elloshabíanllegado

Participles: -ar verbs take -ado, -er and -ir verbs take -ido. hablar → hablado, comer → comido, vivir → vivido.

The irregulars are the same eight you already met with the present perfect:

Nothing goes between había and the participle. Not a pronoun, not no, not ya. Those all go in front: no me había dado cuenta, ya lo habían vendido.

The words that pull it in

Certain markers almost force the tense, because they are themselves about ordering two moments:

MarkerExample
yaYa había pagado la cuenta cuando llegaste.
todavía noA las nueve todavía no había empezado a estudiar.
cuandoÉl había terminado el pastel cuando tú llegaste.
antes deAntes de venir a Lima, nunca había comido ceviche.
nuncaNunca había visto tanta gente en el Centro.
para entoncesEl vuelo llegó a las tres; para entonces habíamos esperado cuatro horas.

Where learners overuse it

English lets you say “I had a great time yesterday, I had never been there”. In Spanish, if there is no second past reference point, the pretérito does the job:

Reach for había only when you can point at the later event.

The one you will hear in Peru

In Peru — strongly in the Andes, and widely in Lima too — había + participle does an extra job that no textbook prints. It reports surprise at something you have just found out:

There is no “past before the past” here at all. The speaker is marking new information: I did not know this a second ago. It comes from contact with Quechua, which marks that distinction grammatically. You do not need to produce it, but you will hear it constantly, and hearing it as a normal past perfect will confuse you.

Try it

Fill each blank with the past perfect or the pretérito:

  1. Cuando llamé, mi hermano ya ___ (salir).
  2. Ayer ___ (yo, comer) anticuchos por primera vez.
  3. Nunca ___ (nosotros, ver) tanta neblina hasta ese invierno.
  4. El lunes ___ (ellos, cancelar) la clase.

→ 1 había salido · 2 comí · 3 habíamos visto · 4 cancelaron (one past event, so no había).

Next

The subjunctive has its own version of this tense, and in Peru it does more work than the textbook version does.

Hubiera and hubiese: the pluperfect subjunctiveThe present perfect, and why Peru uses it less

Topics The pastPeruvian Spanish

Había, or just the pretérito?

Seven sentences about ordering two past moments — including the one Peruvian use of había that has nothing to do with ordering anything.

  1. 1Cuando llegué al aeropuerto, el avión ya ___.

    Answer

    había despegado — Two past events, so the earlier one takes the past perfect. *Despegó* would put the take-off and the arrival at the same moment, which is not what happened.

  2. 2Ayer ___ anticuchos por primera vez.

    Answer

    comí — There is only one past event here, so the pretérito is enough. *Había comido* needs a second, later past moment for it to sit before.

  3. 3Nunca habíamos ___ a ese restaurante.

    Answer

    vuelto — *Volver* has the irregular participle *vuelto*. The participle after *haber* never agrees with anything either — it is *habíamos vuelto*, not *vueltos*.

  4. 4Which sentence means “I hadn't realised”?

    Answer

    No me había dado cuenta. — Pronouns go in front of *había*, never between *había* and the participle. *No me he dado cuenta* is the present perfect: I haven't realised, as of now.

  5. 5A las nueve de la noche todavía no ___ a estudiar.

    Answer

    había empezado — *Todavía no* points at a later reference moment — nine o'clock — so the non-event before it takes *había*. This marker almost always pulls the past perfect in.

  6. 6You finally try a dish a friend recommended and it turns out delicious. In Peru you might hear:

    Answer

    ¡Había sido bien rico! — In Peruvian Spanish *había sido* can mark surprise at something just discovered, with no past-before-a-past in sight. It comes from contact with Quechua and you will hear it constantly.

  7. 7¿Cuál oración está en pasado perfecto?

    Answer

    Había usado el carro de mi hermano. — The tense is *había* plus a participle. *Había* on its own is just “there was”, and the last option is the present perfect — a different thing.