DELE B2 Present Perfect Subjunctive: Practice Test & Review

By SpanishGram

◄ Back to DELE B2 Hub

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 .

PersonHaber (present subjunctive)+ participleExample
YohayaterminadoEspero que haya terminado.
TúhayasterminadoDudo que hayas terminado.
Él/Ella/UstedhayaterminadoMe alegra que haya terminado.
NosotroshayamosterminadoNo creemos que hayamos terminado.
VosotroshayáisterminadoSiento que hayáis terminado.
Ellos/Ellas/UstedeshayanterminadoEs 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 TypeExampleWhy present perfect subjunctive
Present wish about pastEspero que hayas terminado.Espero is present; the action is already done
Present doubt about pastDudo que haya venido.Dudo is present; the action is past
Present emotion about pastMe alegra que hayas aprobado.Me alegra is present; the action is past
Present evaluation about pastEs posible que haya salido.Es posible is present; the action is past
Present denial about pastNo 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 tenseSubjunctive formExample
PresentPresent perfect subjunctive (haya + participle)Espero que hayas terminado.
Preterite / ImperfectPluperfect subjunctive (hubiera + participle)Esperaba que hubieras terminado.
ConditionalPluperfect 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

ExpressionMeaningNote
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 yourselfAnswerForm
Is the main clause verb in the present?YesPresent perfect subjunctive (haya + participle)
Is the main clause verb in the past?YesPluperfect subjunctive (hubiera + participle)
Is the action already completed?YesUse a perfect form (haya/hubiera + participle)
Is the trigger present?YesChoose present perfect subjunctive
Is the trigger past?YesChoose pluperfect subjunctive
Is the trigger a wish, doubt, emotion, or evaluation?YesSubjunctive, 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.