A2 · Past
German Perfekt: haben, sein and Partizip II
Form the Perfekt with haben or sein, learn regular and irregular participles and avoid auxiliary mistakes with examples and exercises.
Dilelang · Updated on
How to talk about something that already happened
For many everyday stories in the past, German uses the Perfekt. In a basic main clause, conjugate haben or sein and put the Partizip II on the right-hand side of the verb bracket: Ich habe gestern gekocht. (“I cooked yesterday”) and Wir sind früh angekommen. (“We arrived early”).
The auxiliary agrees with the subject. The participle doesn’t change with the person: ich habe gekocht, du hast gekocht, wir haben gekocht. Although it looks like the English present perfect, the German Perfekt is the normal spoken past: gestern (“yesterday”) fits perfectly, so it often translates as “I cooked”.
Forming the Partizip II
| Type | Infinitive | Participle |
|---|---|---|
| Regular | lernen | gelernt |
| Regular, stem in -t | warten | gewartet |
| Strong | schreiben | geschrieben |
| Mixed | bringen | gebracht |
| Separable | abholen | abgeholt |
| Inseparable | erzählen | erzählt |
| Ending in -ieren | studieren | studiert |
Regular verbs usually form ge- + stem + -(e)t. Many strong verbs end in -en and may change their vowel; mixed verbs combine a stem change with -t. Memorise the irregular forms together with the infinitive.
Common inseparable prefixes and verbs in -ieren, like the examples in the table, don’t take ge-. With common separable verbs, it appears inside the verb. Review separable verbs to tell the present and the participle apart.
Choosing haben or sein
Haben is usual with activities and transitive verbs: Wir haben einen Kuchen gebacken. (“We baked a cake”).
Sein appears with many verbs where the subject moves somewhere or changes state: Mira ist nach Bonn gefahren. (“Mira went to Bonn”) and Das Kind ist eingeschlafen. (“The child fell asleep”). Also learn sein → ist gewesen, bleiben → ist geblieben and werden → ist geworden.
The specific use matters: Mira hat den Lieferwagen gefahren. (“Mira drove the van”) has an Akkusativ object and uses haben. Don’t choose sein just because a verb suggests movement. Some verbs, such as sitzen or stehen, vary regionally between haben and sein.
Three mistakes you can check
- Have you conjugated the auxiliary for the subject? Wir sind, not wir ist.
- Have you remembered the full participle? geschrieben, not an invented regular form.
- Have you put the participle at the end of the verb bracket? Gestern habe ich einen Brief geschrieben. (“Yesterday I wrote a letter”).
This guide starts with simple constructions. Combinations with modal verbs and another infinitive follow special patterns that need a separate explanation. To practise, describe three real things you did yesterday and save each verb with its auxiliary: lernen – hat gelernt, ankommen – ist angekommen.
Exercises with answers
Answer before opening the solutions. Each answer explains the reason for the form:
- Ich ___ gestern Deutsch gelernt.
- Wir ___ spät angekommen.
- Sie hat eine Nachricht ___. (schreiben).
- Ben hat in Hamburg ___. (studieren).
- Das Baby ___ eingeschlafen.
- Nora ___ den Bus gefahren. She drove the bus.
Show answers and explanations
- habe: lernen forms the Perfekt with haben here, conjugated for ich.
- sind: ankommen uses sein; wir needs sind.
- geschrieben: a strong participle with a stem change and -en.
- studiert: a verb in -ieren; no ge- is added.
- ist: einschlafen expresses a change of state and uses sein.
- hat: fahren is used transitively with den Bus, an Akkusativ object.
Further reading
The explanations and exercises in this guide are by Dilelang. You can consult these grammar references in German: