Present perfect

A2 El pretérito perfecto 25 / 49

In short

The present perfect = the present of haber (he, has, ha…) + a past participle (hablado, comido): He comido. It reports a past action still connected to now - recent, within a time frame that includes today, or a life experience up to this point.

The rule

You need two pieces: the auxiliary haber and a past participle. They stay together and never swap places. Nothing goes between them: an object or reflexive pronoun sits in front of haber - Me he levantado tarde. / ¿Le has dado las llaves? A pair of pronouns moves together and keeps its order: Se me ha olvidado el paraguas.

Step 1 - Conjugate haber (present):

Personhaber
yohe
túhas
él/ella/ustedha
nosotros/-ashemos
vosotros/-ashabéis
ellos/-as/ustedeshan

Step 2 - Add the past participle:

  • -ar verbs -> -ado: hablar -> hablado
  • -er/-ir verbs -> -ido: comer -> comido, vivir -> vivido
  • If an -er/-ir stem ends in a vowel, the ending is spelled -ído: leer -> leído, traer -> traído, caer -> caído, oír -> oído (but not after u: construir -> construido)

The participle here is invariable: it always ends in -o and never agrees in gender or number - Ellas han llegado (not “llegadas”).

Irregular participles (learn as a block):

InfinitiveParticipleInfinitiveParticiple
hacerhechovolvervuelto
decirdichoromperroto
vervistoabrirabierto
escribirescritomorirmuerto
ponerpuestocubrircubierto

Compounds inherit them: describir -> descrito, devolver -> devuelto.

When to use it. The perfect ties the past to the present:

  • Recent past: Ya he terminado.
  • Life experience (up to now), with alguna vez / nunca / ya / todavía no: ¿Has estado alguna vez en México? / Nunca he probado el sushi.
  • A time frame that still includes now: hoy, esta mañana, esta semana, este mes, este año, últimamente: Este año he viajado mucho.

Perfecto vs indefinido (the key contrast).

  • Perfecto = the time frame is connected to now: hoy, esta semana, este año, ya, todavía no, alguna vez. -> Hoy he comido mucho.
  • Indefinido = the time frame is finished/detached: ayer, anoche, la semana pasada, en 2010. -> Ayer comí mucho.
  • Dialect note. This split is strongest in Peninsular (Spain) Spanish. Most of Latin America prefers the indefinido even for today/recent actions: Hoy comí mucho is normal there.

Forms & patterns

Contrast the two past tenses by their time marker:

Perfecto (linked to now)Indefinido (finished time)
Hoy he trabajado mucho.Ayer trabajé mucho.
Esta semana he visto dos películas.La semana pasada vi dos películas.
He estado en París (alguna vez).Estuve en París en 2018.

Examples

EspañolEnglish
He comido demasiado hoy.I have eaten too much today.
¿Has visto mi teléfono?Have you seen my phone?
Todavía no hemos terminado.We haven’t finished yet.
¿Alguna vez has estado en España?Have you ever been to Spain?
Ella ha escrito tres libros.She has written three books.
Este año han abierto un restaurante nuevo.This year they’ve opened a new restaurant.
Nunca he roto un hueso.I’ve never broken a bone.
Ha hecho mucho frío esta semana.It has been very cold this week.

Common mistakes

  • He escribido -> He escrito - escribir has an irregular participle; so do hecho, dicho, visto, puesto, vuelto, roto, abierto.
  • He hablando -> He hablado - the participle ends in -ado/-ido, not the gerund -ando/-iendo.
  • He leido -> He leído - after a vowel the ending is spelled -ído: leído, traído, caído, oído.
  • He me levantado / He levantadome -> Me he levantado - the pronoun goes before haber, never between the two parts and never attached to the participle.
  • Ellas han llegadas -> han llegado - the participle after haber never agrees; keep it -o.
  • Yo ha comido -> he comido - haber agrees with the subject (he/has/ha/hemos/habéis/han).
  • Tengo comido -> He comido - the perfect auxiliary is haber, never tener.
  • Ayer he comido -> Ayer comí - a finished-time marker (ayer) takes the indefinido, not the perfecto.

Tips

  • Formula: haber (present) + participle - haber does all the conjugating, the participle stays frozen.
  • The participle here always ends in -o (-ado/-ido or an irregular) and never agrees in gender or number.
  • Marker test: hoy / esta semana / ya / todavía no / alguna vez / nunca -> perfecto; ayer / anoche / el año pasado -> indefinido.
  • Memorize the ~10 irregular participles together - they are all high-frequency.
  • In most of Latin America you’ll hear the indefinido where Spain uses the perfecto; match your target region.