G14 · Grammar

Present Perfect — Pretérito Perfecto

He hablado, has comido, ha vivido — the recent past

What Is the Pretérito Perfecto?

The pretérito perfecto is the Spanish present perfect: haber (present) + past participle. It mirrors English "I have spoken, she has eaten".

He hablado con el jefe. (I have spoken to the boss.)

¿Has comido ya? (Have you eaten yet?)

Hemos vivido aquí dos años. (We have lived here for two years.)

Use it for the recent past and for life experiences — especially with hoy, esta semana, este año, ya, todavía no, alguna vez.

Step 1: Haber in the Present

The helper verb — never translated as "to have possessions"

yoheI have
hasyou have
él / ella / ustedhahe / she has
nosotroshemoswe have
vosotroshabéisyou all have
ellos / ellas / ustedeshanthey have

Key contrast: "to have" as in possession is tener. The auxiliary "have" of the perfect tense is haber — they are never interchangeable.

Step 2: Regular Participles

-ar → -ado · -er / -ir → -ido

hablar → hablado: He hablado con María. (I have spoken to María.)

comer → comido: Has comido mucho. (You have eaten a lot.)

vivir → vivido: Han vivido en Londres. (They have lived in London.)

The participle never changes in this tense — no gender, no plural: Ella ha hablado. Ellos han hablado.

Irregular Participles

The most common ones — learn these by heart

hacerhechodone / made
vervistoseen
escribirescritowritten
decirdichosaid
ponerpuestoput
volvervueltoreturned
abrirabiertoopened
romperrotobroken

When to Use It

Recent past and experiences — vs the indefinido

Hoy he trabajado mucho. (Today I have worked a lot.)

¿Has estado alguna vez en México? (Have you ever been to Mexico?)

Ya hemos terminado. (We have already finished.)

Todavía no he visto esa película. (I have not seen that film yet.)

Perfecto markers: hoy, esta semana, este mes, este año, ya, todavía no, alguna vez.
Indefinido markers: ayer, anoche, la semana pasada, en 2020.

Esta semana he trabajado mucho — but — La semana pasada trabajé mucho.

Common Mistakes

Traps for English speakers

These are the classic English-speaker errors with the pretérito perfecto.

Tengo comido en ese restaurante.
He comido en ese restaurante.
The auxiliary "have" is haber, never tener — tener means to possess
Ha escribido una carta.
Ha escrito una carta.
Escribir has an irregular participle: escrito
He visto a Juan ayer.
Vi a Juan ayer.
Ayer belongs to the finished past → indefinido, not perfecto
He ya terminado.
Ya he terminado.
Haber and the participle never separate — ya goes before he
Ella ha hablada con su madre.
Ella ha hablado con su madre.
The participle is invariable in this tense — always -o, even for ella

Recap: Pretérito Perfecto

Form
haber (present) + participio
He hablado.
Haber
he, has, ha, hemos, habéis, han
¿Has comido ya?
Participles
-ar → -ado · -er/-ir → -ido
hablado, comido, vivido
Irregulars
hecho, visto, escrito, dicho, puesto, vuelto
Ha hecho los deberes.
Markers
hoy, esta semana, ya, todavía no, alguna vez
Hoy he trabajado mucho.
Not with
ayer, anoche, la semana pasada → indefinido
Ayer vi a Juan.
Practice now →