Home / Learn German / Grammar / haben or sein in the Perfekt
📐 German grammar · A2

haben or sein in the Perfekt

Most German verbs build the Perfekt with haben, but a small and very common group needs sein. Three simple questions tell you which one to use.

The basic rule

The Perfekt is haben or sein + past participle. About nine out of ten verbs use haben. Use sein only when one of these is true:

  1. The verb describes a movement from one place to another: gehen, fahren, fliegen, kommen, laufen, reisen, umziehen, einsteigen.
  2. The verb describes a change of state: aufstehen, aufwachen, einschlafen, werden, wachsen, sterben.
  3. The verb is one of a few special verbs: sein, bleiben, passieren, geschehen, begegnen.
  • Ich bin mit dem Flugzeug nach Frankfurt geflogen. – I flew to Frankfurt.
  • Das Baby ist endlich eingeschlafen. – The baby has finally fallen asleep.
  • Wir sind am Sonntag zu Hause geblieben. – We stayed at home on Sunday.
  • Was ist passiert? – What happened?

Overview: haben and sein verbs

GroupVerbsExample
sein: movementgehen, fahren, fliegen, kommen, umziehenSie ist 2022 nach Köln umgezogen.
sein: change of stateaufstehen, einschlafen, werden, wachsenEr ist Ingenieur geworden.
sein: special verbssein, bleiben, passieren, begegnenIch bin noch nie in Wien gewesen.
haben: accusative objectessen, kaufen, sehen, lesenWir haben einen Film gesehen.
haben: reflexive verbssich freuen, sich waschen, sich beeilenIch habe mich beeilt.
haben: no movement, no changearbeiten, schlafen, wohnen, wartenSie hat lange geschlafen.

Note that schlafen takes haben but einschlafen takes sein: sleeping is a state, falling asleep is a change.

Special cases

fahren with an object. When you drive something or someone, there is an accusative object, so you use haben: Ich habe das Auto meines Vaters gefahren. – I drove my father's car. But: Ich bin nach Stuttgart gefahren. – I drove to Stuttgart.

Reflexive verbs always take haben, even when they describe movement: Ich habe mich auf das Sofa gesetzt. – I sat down on the sofa.

Regional differences. In southern Germany, Austria and Switzerland people say Ich bin gesessen / gestanden / gelegen. In the north and in most textbooks it is Ich habe gesessen / gestanden / gelegen. Both are standard in their regions; for exams in Germany, use haben.

Swimming and walking. schwimmen, laufen and wandern usually take sein, even without a goal: Wir sind im See geschwommen. – We swam in the lake.

Tips for remembering

  • Ask yourself: Does the subject move from A to B, or does its state change? If yes, take sein.
  • Learn sein verbs with ist in front: ist gegangen, ist geblieben, ist geworden.
  • If there is an accusative object, it is almost always haben.
  • Practise with your daily routine: Ich bin um sechs aufgewacht, ich habe geduscht, ich habe gefrühstückt und ich bin mit der S-Bahn zur Arbeit gefahren.

Common mistakes

Not quiteCorrectWhy
Ich habe nach München geflogen.Ich bin nach München geflogen.Flying to a place is movement from A to B, so it takes sein.
Er hat Arzt geworden.Er ist Arzt geworden.werden is a change of state and always takes sein.
Ich bin mich gestern beeilt.Ich habe mich gestern beeilt.Reflexive verbs always build the Perfekt with haben.
Wir haben zu Hause geblieben.Wir sind zu Hause geblieben.bleiben is one of the special verbs that take sein, even though nobody moves.

Practice questions

1. Ich ___ heute sehr früh aufgewacht.

aufwachen is a change of state (from asleep to awake), so it takes sein: ich bin.

2. Wir ___ drei Jahre in Pune gewohnt.

wohnen describes no movement and no change, so it takes haben.

3. Was ___ passiert?

passieren is a special verb with sein; the subject was is singular.

4. Meine Schwester ___ zwei Wochen in Indien geblieben.

bleiben takes sein, and meine Schwester is third person singular.

5. Gestern ___ ich meinen Kollegen zum Flughafen gefahren.

Here fahren has an accusative object (meinen Kollegen), so it takes haben.

6. Mein Sohn ___ in einem Jahr zehn Zentimeter gewachsen.

wachsen is a change of state and takes sein.

7. Ich ___ mich sehr über dein Geschenk gefreut.

sich freuen is reflexive, and reflexive verbs take haben.

8. Wann ___ ihr in Frankfurt angekommen?

ankommen is movement and takes sein; with ihr the form is seid.

Practise it in the course

Related grammar: The perfect tense (Perfekt), Past participles, Reflexive verbs.

Back to the grammar reference or to the A2 lessons.

Sources

Original practice questions written by the Desi European Tales editorial team; they are not the official exam questions. Checked 1 November 2026.

Related: German grammar reference · German A2 lessons · The perfect tense (Perfekt)

🏠
🔍
Type to search across 700+ pages.