Lingvero

Spanish Present Perfect Practice

The tense for what you have done. Drill haber plus the past participle, the regular -ado / -ido endings, and every common irregular across 30 sentences with instant explanations.

30 exercises~10 min to completeB1 – B2 level
IRead first

The rule, in plain English.

The Spanish present perfect (pretérito perfecto) describes what has happened, often in a time frame that still includes the present. It is formed with the present of the auxiliary haber followed by a past participle: he hablado, has comido, ha vivido. The participle is regular for most verbs — -ar verbs end in -ado, while -er and -ir verbs end in -ido — but a dozen frequent verbs have irregular participles you simply have to learn.

After haber the participle never changes for gender or number, and nothing may come between haber and the participle. In Spain especially, the present perfect is the default choice for recent past actions (hoy, esta semana, ya) where Latin America often uses the preterite.

30 exercises below. Read the explanation after each answer — that's where the rule sinks in.

IIQuick reference
Haber + participlehe/has/ha + participle
01
Present forms of haber
he, has, ha, hemos, habéis, han
02
-ar verbs → -ado
hablar → hablado; comprar → comprado
03
-er / -ir verbs → -ido
comer → comido; vivir → vivido
04
Participle never agrees
he comprado (not comprada); ellas han llegado
05
Keep haber next to it
Ya he terminado. (not: He ya terminado.)
Irregular participles & time markerslearn these by heart
01
hacer, decir, ver
hecho, dicho, visto
02
escribir, poner, volver
escrito, puesto, vuelto
03
abrir, romper, morir
abierto, roto, muerto
04
cubrir, resolver, descubrir
cubierto, resuelto, descubierto
05
Typical time markers
hoy, esta semana, ya, todavía no, alguna vez, nunca, últimamente
IIIPractice exercises

Practice.

Answer first, then read the explanation. Don't skip it — that's the whole point.

Exercise 01 of 30Tag: Haber: yo (-ar)
Fill in the blank

Hoy yo _____ hablado con mi jefe. (haber)

Today I have spoken with my boss.

Exercise 02 of 30Tag: Regular participle -ar
Fill in the blank

Esta semana nosotros hemos _____ mucho. (trabajar)

This week we have worked a lot.

Exercise 03 of 30Tag: Regular participle -er
Fill in the blank

¿Ya has _____ tú? (comer)

Have you already eaten?

Exercise 04 of 30Tag: Regular participle -ir
Fill in the blank

Ella ha _____ en tres países diferentes. (vivir)

She has lived in three different countries.

Exercise 05 of 30Tag: Haber: nosotros
Fill in the blank

Este año nosotros _____ viajado a Italia. (haber)

This year we have travelled to Italy.

Exercise 06 of 30Tag: Haber: vosotros
Fill in the blank

¿Vosotros _____ visto la nueva película? (haber)

Have you (all) seen the new film?

Exercise 07 of 30Tag: Irregular: hacer
Fill in the blank

¿Qué has _____ hoy? (hacer)

What have you done today?

Exercise 08 of 30Tag: Irregular: decir
Fill in the blank

Ellos nunca me han _____ la verdad. (decir)

They have never told me the truth.

Exercise 09 of 30Tag: Irregular: ver
Fill in the blank

Todavía no he _____ esa serie. (ver)

I haven't seen that series yet.

Exercise 10 of 30Tag: Irregular: escribir
Fill in the blank

Mi hermana ha _____ un libro. (escribir)

My sister has written a book.

Exercise 11 of 30Tag: Irregular: poner
Fill in the blank

¿Dónde has _____ las llaves? (poner)

Where have you put the keys?

Exercise 12 of 30Tag: Irregular: volver
Fill in the blank

Todavía no han _____ del trabajo. (volver)

They haven't come back from work yet.

Exercise 13 of 30Tag: Irregular: abrir
Fill in the blank

Alguien ha _____ la ventana. (abrir)

Someone has opened the window.

Exercise 14 of 30Tag: Irregular: romper
Fill in the blank

El niño ha _____ el jarrón. (romper)

The child has broken the vase.

Exercise 15 of 30Tag: Irregular: morir
Fill in the blank

Por desgracia, muchos árboles han _____ este verano. (morir)

Unfortunately, many trees have died this summer.

Exercise 16 of 30Tag: Irregular: cubrir
Fill in the blank

La nieve ha _____ toda la montaña. (cubrir)

The snow has covered the whole mountain.

Exercise 17 of 30Tag: Irregular: resolver
Fill in the blank

Por fin ellos _____ resuelto el problema. (haber)

They have finally solved the problem.

Exercise 18 of 30Tag: Irregular: descubrir
Fill in the blank

Los científicos han _____ una nueva especie. (descubrir)

The scientists have discovered a new species.

Exercise 19 of 30Tag: Experience: alguna vez
Fill in the blank

¿Alguna vez _____ estado en México? (haber, tú)

Have you ever been to Mexico?

Exercise 20 of 30Tag: Marker: ya
Fill in the blank

Ya _____ comprado los billetes. (haber, yo)

I have already bought the tickets.

Exercise 21 of 30Tag: Choose the participle
Choose the correct sentence

Which is the correct participle of volver in 'ellos han ___'?

Pick the correct participle of volver.

Exercise 22 of 30Tag: Spotting errors
Choose the correct sentence

Which sentence is wrong?

Spot the incorrect present perfect sentence.

Exercise 23 of 30Tag: Spotting errors
Choose the correct sentence

Which sentence has a present-perfect error?

Find the sentence with the wrong auxiliary.

Exercise 24 of 30Tag: Choose the form
Choose the correct sentence

In Spain, how would you naturally say 'This morning I have gotten up early'?

Choose the natural Peninsular Spanish sentence.

Exercise 25 of 30Tag: Reflexive: te has
Fill in the blank

¿_____ has lavado las manos antes de comer? (pronoun)

Have you washed your hands before eating?

Exercise 26 of 30Tag: Marker: últimamente
Fill in the blank

Últimamente no _____ dormido bien. (haber, yo)

Lately I haven't slept well.

Exercise 27 of 30Tag: Irregular: freír
Fill in the blank

El cocinero ha _____ el pescado. (freír)

The cook has fried the fish.

Exercise 28 of 30Tag: Reflexive: me he
Fill in the blank

Esta mañana me _____ despertado muy temprano. (haber, yo)

This morning I have woken up very early.

Exercise 29 of 30Tag: Choose the form
Choose the correct sentence

Which sentence correctly places the reflexive pronoun with 'has ducharse' meaning 'Have you showered today?'

Choose the correctly formed reflexive present perfect.

Exercise 30 of 30Tag: Spotting errors
Choose the correct sentence

Which sentence has a present-perfect error?

Spot the sentence with the wrong participle.

Every answer is explained

Not just a green check. A short paragraph telling you why.

No gamification

No streaks, no points, no leaderboards. Just questions.

No signup

Runs in your browser. Bookmark the topics you want to come back to.

More to practice

Other topics.

Questions answered

Common questions.

How do you form the present perfect in Spanish?+

Use the present tense of haber (he, has, ha, hemos, habéis, han) followed by a past participle: he hablado, has comido, ha vivido. Nothing should come between haber and the participle.

How are regular past participles formed?+

Drop the infinitive ending and add -ado to -ar verbs (hablar → hablado, comprar → comprado) or -ido to -er and -ir verbs (comer → comido, vivir → vivido).

What are the most common irregular past participles?+

The frequent irregulars include hacer → hecho, decir → dicho, ver → visto, escribir → escrito, poner → puesto, volver → vuelto, abrir → abierto, romper → roto, morir → muerto, cubrir → cubierto, resolver → resuelto, and descubrir → descubierto.

When do you use the present perfect instead of the preterite?+

Use the present perfect for actions in a time frame that still includes now (hoy, esta semana, este año) or for life experience (alguna vez, nunca). Use the preterite for finished actions in a closed past. In Spain the present perfect is preferred for recent past events, while Latin America often chooses the preterite.

Does the past participle change for gender or number?+

No. After haber the participle is fixed and always ends in -o: he comprado (never comprada), ellas han llegado, muchos árboles han muerto. It only agrees when used as an adjective, not in the perfect tense.

Are these present perfect exercises free?+

Yes. All 30 exercises run in your browser, need no signup, and explain every answer.