Skip to content
A2Verbs

Das Perfekt

The German perfect tense (haben & sein)

How to talk about the past in everyday German with the perfect tense: choosing haben or sein, forming the past participle, and where the two parts go in the sentence.

Try one first — then read

Gestern war ich sehr müde.

Ich ___ früh nach Hause gegangen.

Pick one. The rule is right below, either way.

Watch the lesson

5:48

How to talk about yesterday in German, and the one question that tells you whether a verb takes haben or sein in the perfect.

Watch on YouTube ↗

The perfect (Perfekt) is how Germans normally talk about the past in conversation. It's built from two pieces: a helper verb (haben or sein) conjugated in position two, and the past participle at the end of the sentence.

haben or sein?

Treat haben as the default rather than as one of two equal options. Almost every German verb takes it, so the real job is recognising the small group that doesn't — and that group has exactly two reasons plus three verbs you simply learn.

  • haben is the default: “Ich habe gegessen,” “Wir haben gespielt.” Any verb with a direct object takes haben, and so do most verbs without one.
  • sein, reason 1 — movement from one place to another: gehen, fahren, kommen, fliegen, laufen, reisen. The test: does somebody end up somewhere they weren't?
  • sein, reason 2 — a change of state: einschlafen (awake → asleep), aufwachen (asleep → awake), wachsen (small → bigger), sterben.
  • Plus three that just take sein and have to be learned: sein itself (ich bin gewesen), bleiben (ich bin geblieben) and werden (er ist Arzt geworden).

The pair that shows the rule is a rule

schlafen and einschlafen come from the same root, and they take different helpers. That looks unfair until you see why: schlafen describes a state you were in — you were asleep for eight hours and nothing changed — so it takes haben. einschlafen describes the moment the state changed, so it takes sein. Four letters on the front turn a state into a change, and the helper follows.

Forming the past participle

Participle patterns
TypePatternExample
Regular (weak)ge- + stem + -tspielen → gespielt
Irregular (strong)ge- + stem + -en (often new vowel)sprechen → gesprochen
-ieren verbsno ge-, + -tstudieren → studiert
Separableprefix + ge + stemeinkaufen → eingekauft
  • Ich habe einen Film gesehen.

    I watched a film.

    haben + gesehen

  • Sie ist nach Hause gegangen.

    She went home.

    gehen = movement → sein

  • Wir sind früh aufgestanden.

    We got up early.

    change of state → sein

  • Ich habe acht Stunden geschlafen.

    I slept for eight hours.

    a state, nothing changed → haben

  • Ich bin um elf eingeschlafen.

    I fell asleep at eleven.

    the moment the state changed → sein

  • Es ist ein schöner Tag gewesen.

    It was a lovely day.

    sein forms its own perfect with sein

  • Ich habe nach Berlin gefahren.

    Ich bin nach Berlin gefahren.

    fahren is movement from A to B → sein.

  • Er hat gegeht.

    Er ist gegangen.

    gehen is strong and takes sein: gegangen.

  • Ich habe eingeschlafen.

    Ich bin eingeschlafen.

    einschlafen is a change of state → sein. Compare “ich habe geschlafen”, which is a state and keeps haben.

Tipp · Learn strong participles as a trio — gehen – ging – gegangen — because the third form is the one the perfect needs. And when you're unsure of the helper, don't ask which verb it is; ask whether anything actually changed. No change → haben.

Now practice it

Sets that put this grammar to work:

Or open a whole shelf: A2 listening

Reading about it is the easy half

The rule sticks when you get it wrong a few times and someone explains why. This set drills exactly what you just read:

Practise this rule now

Wie war Hamburg? · A2 · Free with a free account.