What it is
The present perfect (pretérito perfecto) links the past with the present. It is the present of haber + a past participle: he hablado, has comido.
It is used:
- for life experiences, with no specific time: ¿Has estado en México?
- with nunca, alguna vez and todavía no: Todavía no he terminado.
- in Spain, also for events of today and this week (see the note below).
Haber + participle
| Person | haber | Example |
|---|---|---|
| yo | he | he hablado |
| tú | has | has comido |
| él / ella / usted | ha | ha vivido |
| nosotros / nosotras | hemos | hemos hablado |
| vosotros / vosotrasSpain | habéis | habéis comido |
| ellos / ellas / ustedes | han | han vivido |
Past participle
| Infinitive | Participle |
|---|---|
| hablar | hablado |
| comer | comido |
| vivir | vivido |
| hacer | hecho |
| decir | dicho |
| ver | visto |
| escribir | escrito |
| volver | vuelto |
| poner | puesto |
| abrir | abierto |
| romper | roto |
Examples
- ¿Has estado en México alguna vez?Have you ever been to Mexico?
- Nunca he comido pulpo.I have never eaten octopus.
- Mis padres nunca han viajado en avión.My parents have never travelled by plane.
- Todavía no he terminado el libro.I haven't finished the book yet.
- Hoy he trabajado mucho.SpainI've worked a lot today.
- Hoy trabajé mucho.Latin AmericaI worked a lot today.In Latin America the preterite is usual for today.
- ¿Qué habéis hecho este fin de semana?SpainWhat have you all done this weekend?
Common mistakes
- Wrong:
Ayer he comido paella.Right: ✓ Ayer comí paella.Ayer is a finished time: preterite, in Spain too. - Wrong:
Tengo visto esa película.Right: ✓ He visto esa película.English “have” here is haber, not tener. - Wrong:
He escribido una carta.Right: ✓ He escrito una carta.Escribir has an irregular participle: escrito. - Wrong:
Ellas han comidas.Right: ✓ Ellas han comido.After haber the participle does not agree.