DELE B2 Present Perfect Subjunctive: Practice Test & Review
The present perfect subjunctive is one of the most tested B2 structures. It expresses what has happened within a subjunctive frame — wishes, doubts, emotions, or evaluations about the past that connect to the present. If you can form the imperfect subjunctive, this form builds directly on it.
This page gives you a five-part practice quiz: an evaluation set to see where you stand, three practice sets to drill the forms and uses, and a challenge set to confirm mastery. The grammar review below covers formation with haya + participle, the trigger types, and the contrast with the imperfect subjunctive.
The present perfect subjunctive appears in every B2 reading passage that involves past emotion or evaluation. Master the forms first, then the triggers. Ready? Start with the evaluation set below.
Grammar Guide
The Rule
The present perfect subjunctive is used when a subjunctive trigger appears in the present or future, but the subordinate action refers to something that has already happened. It is formed with the present subjunctive of haber (haya, hayas, haya, hayamos, hayáis, hayan) plus the past participle. It expresses wishes, doubts, emotions, or evaluations about past events that connect to the present.
Formation
The auxiliary haber takes its present subjunctive form, and the main verb becomes a past participle. The participle never changes form — it stays in the masculine singular .
| Person | Haber (present subjunctive) | + participle | Example |
|---|---|---|---|
| Yo | haya | terminado | Espero que haya terminado. |
| Tú | hayas | terminado | Dudo que hayas terminado. |
| Él/Ella/Usted | haya | terminado | Me alegra que haya terminado. |
| Nosotros | hayamos | terminado | No creemos que hayamos terminado. |
| Vosotros | hayáis | terminado | Siento que hayáis terminado. |
| Ellos/Ellas/Ustedes | hayan | terminado | Es posible que hayan terminado. |
Irregular participles follow the same rules as the present perfect indicative: dicho, hecho, visto, vuelto, escrito, puesto, roto, muerto, abierto, cubierto.
Trigger Types
The present perfect subjunctive follows the same triggers as the present subjunctive — but only when the subordinate action is in the past .
| Trigger Type | Example | Why present perfect subjunctive |
|---|---|---|
| Present wish about past | Espero que hayas terminado. | Espero is present; the action is already done |
| Present doubt about past | Dudo que haya venido. | Dudo is present; the action is past |
| Present emotion about past | Me alegra que hayas aprobado. | Me alegra is present; the action is past |
| Present evaluation about past | Es posible que haya salido. | Es posible is present; the action is past |
| Present denial about past | No es verdad que hayamos llegado tarde. | The denial is present; the action is past |
Present Perfect Subjunctive vs Pluperfect Subjunctive
The choice depends on the tense of the main clause verb, not on when the action happened .
| Main clause tense | Subjunctive form | Example |
|---|---|---|
| Present | Present perfect subjunctive (haya + participle) | Espero que hayas terminado. |
| Preterite / Imperfect | Pluperfect subjunctive (hubiera + participle) | Esperaba que hubieras terminado. |
| Conditional | Pluperfect subjunctive (hubiera + participle) | Preferiría que hubieras terminado. |
The key: if the main verb is present, use haya + participle. If the main verb is past, use hubiera + participle. The action time does not change the choice — the main verb’s tense does.
Fixed Expressions
| Expression | Meaning | Note |
|---|---|---|
| Espero que hayas… | I hope you have… | Present wish about a past action |
| Me alegra que hayas… | I’m glad you have… | Present emotion about a past action |
| Es posible que haya… | It’s possible that he has… | Present evaluation of a past event |
| Es una pena que hayas… | It’s a shame you have… | Present evaluation of a past event |
| No creo que haya… | I don’t think he has… | Present doubt about a past action |
Common Mistakes
Using indicative instead of subjunctive after a present trigger.
✗ Espero que has terminado.
✓ Espero que hayas terminado.
Esperar que always triggers the subjunctive, even when the action is past.
Using present perfect subjunctive after a past trigger.
✗ Esperaba que hayas terminado.
✓ Esperaba que hubieras terminado.
The main verb is past, so the subjunctive shifts to the pluperfect subjunctive.
Forgetting to change haber to its subjunctive form.
✗ Dudo que hemos hecho todo.
✓ Dudo que hayamos hecho todo.
The auxiliary must be in the present subjunctive, not the indicative.
Making the participle agree with the subject.
✗ Me alegra que ella haya llegada.
✓ Me alegra que ella haya llegado.
The participle after haber never changes form.
Quick Decision Chart
| Ask yourself | Answer | Form |
|---|---|---|
| Is the main clause verb in the present? | Yes | Present perfect subjunctive (haya + participle) |
| Is the main clause verb in the past? | Yes | Pluperfect subjunctive (hubiera + participle) |
| Is the action already completed? | Yes | Use a perfect form (haya/hubiera + participle) |
| Is the trigger present? | Yes | Choose present perfect subjunctive |
| Is the trigger past? | Yes | Choose pluperfect subjunctive |
| Is the trigger a wish, doubt, emotion, or evaluation? | Yes | Subjunctive, not indicative |
Two Sentences That Show the Difference
Espero que hayas terminado.
I hope you have finished.
The main verb is present, so the subjunctive is present perfect.
Esperaba que hubieras terminado.
I hoped you had finished.
The main verb is past, so the subjunctive shifts to pluperfect.
Me alegra que hayas venido.
I’m glad you have come.
Present emotion about a past event.
Me alegró que hubieras venido.
I was glad you had come.
Past emotion about a past event.
