Langrit Start your free trial

← All German grammar lessons

The perfect tense (Perfekt)

Free German grammar lesson · A2

The normal past tense in speech

In spoken German, the Perfekt is the standard way to talk about the past. It combines freely with past time words: Ich habe gestern Pizza gegessen. — I ate pizza yesterday.

It has two parts: haben or sein in position 2, and the Partizip II (past participle) at the end of the clause.

Position 1 haben / sein Middle Partizip II
Ich habe am Wochenende viel gearbeitet.
Wir sind im Sommer nach Italien gefahren.
Gestern hat sie ihre Oma besucht.

Forming the Partizip II

Verb type Pattern Examples
regular (weak) ge- + stem + -t machen → gemacht, kaufen → gekauft, arbeiten → gearbeitet
irregular (strong) ge- + stem (often changed) + -en fahren → gefahren, sehen → gesehen, trinken → getrunken, schreiben → geschrieben
mixed ge- + changed stem + -t bringen → gebracht, denken → gedacht, wissen → gewusst
separable prefix + ge + verb aufstehen → aufgestanden, einkaufen → eingekauft, anrufen → angerufen
inseparable (be-, ver-, er-, ent- ...) no ge- besuchen → besucht, verstehen → verstanden, bekommen → bekommen
verbs in -ieren no ge- studieren → studiert, telefonieren → telefoniert

Strong participles must be learned with the verb, just like English "drink, drank, drunk".

haben or sein?

Most verbs use haben. sein is used with verbs that have no accusative object and express:

  • movement from A to B: gehen, fahren, kommen, fliegen, laufen, reisen, umziehen
  • change of state: aufstehen, einschlafen, aufwachen, werden, sterben, wachsen
  • and also: sein (ich bin gewesen), bleiben (ich bin geblieben), passieren (was ist passiert?)
With haben With sein
Ich habe gut geschlafen. Ich bin früh eingeschlafen.
Er hat ein Buch gelesen. Er ist nach Hause gegangen.
Wir haben Deutsch gelernt. Wir sind zu Hause geblieben.

Watch out as an English speaker

  • English uses the simple past with "yesterday", German uses the Perfekt. The participle must still go to the end: ✗ Ich habe gesehen den Film gestern. / ✓ Ich habe den Film gestern gesehen.
  • Movement verbs need sein; "have" is a direct translation trap: ✗ Ich habe nach Berlin gefahren. / ✓ Ich bin nach Berlin gefahren.
  • English "have been living for five years" is the present with seit in German, not the Perfekt: ✗ Ich habe seit fünf Jahren in Köln gewohnt. (if you still live there) / ✓ Ich wohne seit fünf Jahren in Köln.
  • -ieren verbs and inseparable verbs take no ge-: ✗ Ich habe Medizin gestudiert. / ✓ Ich habe Medizin studiert.

Example dialogue

Was hast du am Wochenende gemacht? — What did you do at the weekend?
Ich bin am Samstag nach Leipzig gefahren und habe eine Freundin besucht. — On Saturday I went to Leipzig and visited a friend.
Und am Sonntag? — And on Sunday?
Da bin ich lange im Bett geblieben und habe nur ferngesehen. — I stayed in bed for a long time and just watched TV.

Ready to make it stick? Take the interactive quiz and drill this structure with spaced repetition.

Practice this topic free

More German grammar