AP Spanish Perfect Tenses: Practice Test & Review

By SpanishGram

◄ Back to AP Grammar Hub

The perfect tenses report an action completed before a reference point. The present perfect (he hecho) reports an action completed before now, in a time frame that includes the present. The pluperfect (había hecho) reports an action completed before another past action. The future perfect (habrá hecho) reports an action completed before a future point, and the conditional perfect (habría hecho) reports a past action that would have been completed under a condition. The AP exam tests these in reading passages that report events, and in the written free-response tasks, where a clean sequence of past actions is part of what the rater scores.

This page gives you a five-part practice quiz: an evaluation set to see where you stand, three practice sets to drill the contrast, and a challenge set to confirm mastery. Every question is built around a cue that forces exactly one perfect form: a time frame that includes the present, a past reference point, a future reference point, a hypothetical past condition, or an irregular participle. If you get stuck, scroll down for the full grammar guide.

Ready? Start with the evaluation set below.

Grammar Guide

This guide explains the four perfect tenses in Spanish. The quiz above drills the contrast. The guide is for review and reference.

The Rule

The perfect tenses report an action completed before a reference point. Each form uses a conjugated auxiliary — haber in the required tense — plus a past participle. The present perfect (he hecho) reports an action completed before now. The pluperfect (había hecho) reports an action completed before another past action. The future perfect (habrá hecho) reports an action completed before a future point. The conditional perfect (habría hecho) reports a past action that would have been completed under a condition. The past participle stays invariant except for a few irregular forms, which must be memorized.

Present Perfect: Before Now

Time Frame Example Translation
Hoy Hoy he tomado tres cafés. Today I have had three coffees.
Esta semana Esta semana hemos trabajado mucho. This week we have worked a lot.
Últimamente Últimamente he estado muy cansado. Lately I have been very tired.
Ya Ya has hecho la tarea. You have already done the homework.
Todavía no Todavía no he escrito la carta. I have not written the letter yet.
Nunca Nunca he viajado a Japón. I have never traveled to Japan.

Pluperfect: Before Another Past Action

Structure Example Translation
Cuando llegamos, ya… Cuando llegamos, la película ya había empezado. When we arrived, the movie had already started.
Ellos ya… cuando… Ellos ya habían salido cuando los llamé. They had already left when I called them.
Antes de + reference Antes de los veinte años, ya había vivido en tres países. Before I was twenty, I had already lived in three countries.
Reported past action Ella me dijo que ya había enviado la carta. She told me that she had already sent the letter.

Future Perfect: Before a Future Point

Structure Example Translation
Para + time Para el viernes, habré terminado el proyecto. By Friday, I will have finished the project.
Cuando + subjunctive Para cuando llegues, ya habré salido. By the time you arrive, I will have already left.
Para el año que viene Para el año que viene, habrán pagado la casa. By next year, they will have paid for the house.

Conditional Perfect: Hypothetical Past

Structure Example Translation
Si + pluperfect subjunctive Si hubiera estudiado, habría aprobado. If I had studied, I would have passed.
Si hubiera sabido… Si hubiera sabido, habría hecho otra cosa. If I had known, I would have done something else.
Si hubiéramos salido antes… Si hubiéramos salido antes, no habríamos encontrado el tráfico. If we had left earlier, we would not have hit traffic.

Irregular Past Participles

Verb Participle Example
hacer hecho he hecho
decir dicho he dicho
ver visto he visto
escribir escrito he escrito
poner puesto he puesto
volver vuelto he vuelto
abrir abierto he abierto
romper roto he roto

Fixed Expressions

Expression Meaning Tense
ya already Present perfect or pluperfect
todavía no not yet Present perfect
nunca never Present perfect
para cuando… by the time… Future perfect
si hubiera… if I had… Conditional perfect in the main clause

Common Mistakes

1. Using the preterite with a time frame that includes the present.
✗ Hoy tomé tres cafés.
✓ Hoy he tomado tres cafés.
Hoy includes the present, so the present perfect is required.

2. Using the present perfect for an action before another past action.
✗ Cuando llegamos, la película ya ha empezado.
✓ Cuando llegamos, la película ya había empezado.
An action completed before another past action requires the pluperfect.

3. Using the future perfect for a hypothetical past condition.
✗ Si hubiera estudiado, habré aprobado.
✓ Si hubiera estudiado, habría aprobado.
The pluperfect subjunctive in the si clause forces the conditional perfect in the main clause.

4. Using a regular participle for an irregular verb.
✗ He hacido la tarea.
✓ He hecho la tarea.
Hacer has an irregular participle: hecho.

Quick Decision Chart

Ask yourself Answer Form
Is the time frame open to the present? Hoy, esta semana, últimamente, ya, todavía no Present perfect
Is the action before another past action? Cuando llegué, ya… Pluperfect
Is the action before a future point? Para el viernes, para cuando llegues Future perfect
Is there a si + pluperfect subjunctive? Si hubiera… Conditional perfect
Is the verb hacer, decir, ver, escribir, poner, volver, abrir, or romper? Yes Use the irregular participle

Two Sentences That Show the Difference

Cuando llegamos, la película ya había empezado.
When we arrived, the movie had already started.
The action of starting happened before the past action of arriving, so the pluperfect había empezado is required.

La película ya ha empezado; no podemos entrar.
The movie has already started; we cannot go in.
The action of starting is complete as of now, so the present perfect ha empezado is required.