Haben vs Sein in German: When to Use Each (Especially in Perfekt)


If you are learning German, you have probably run into this question: do I use haben or sein to form the past tense? This is one of the most important grammar topics at the A2 level, and getting it right will make your spoken and written German sound much more natural.
In this guide, we will break down the conjugations of both verbs, explain exactly when to use haben and when to use sein in the Perfekt tense, and give you a clear list of common sein verbs to memorize.
Before we talk about when to use each verb, let us make sure you know how to conjugate them. Both haben (to have) and sein (to be) are irregular, so their forms must be memorized.
| Pronoun | Conjugation |
|---|---|
| ich | habe |
| du | hast |
| er/sie/es | hat |
| wir | haben |
| ihr | habt |
| sie/Sie | haben |
| Pronoun | Conjugation |
|---|---|
| ich | bin |
| du | bist |
| er/sie/es | ist |
| wir | sind |
| ihr | seid |
| sie/Sie | sind |
In the Perfekt tense, haben and sein serve as auxiliary verbs (Hilfsverben). They pair with a past participle to form the past tense. Here are their Perfekt forms:
Notice that haben uses itself as its own auxiliary, while sein also uses itself. This is a useful detail to remember.
For a deeper look at how the Perfekt tense works overall, check out our complete guide to the German past tense Perfekt.
This is the big question every German learner faces. Here is the core rule:
Use haben as the auxiliary verb for most verbs in the Perfekt tense. This is the default.
Use sein as the auxiliary verb when the verb describes:
Let us look at each rule in detail.
If the verb describes physically moving from one location to another, use sein:
The key idea is a change of location. The subject starts in one place and ends up in another.
Verbs that describe a transformation or change of condition also take sein:
These three verbs always take sein as their auxiliary, even though bleiben (to stay) does not involve movement:
If the verb does not fit any of the rules above, use haben. This covers:
For a broader overview of verb conjugation patterns, see our German verb conjugation guide.
This is one of the most common mistakes German learners make. The correct form is:
Ich bin gegangen. (I went / I have gone.)
Why? Because gehen (to go) describes movement from one place to another. It is a classic sein verb. Saying ich habe gegangen is grammatically wrong and will immediately mark you as a beginner.
Here are more examples to compare:
| Correct (sein) | Why? |
|---|---|
| Ich bin gelaufen. | laufen = movement |
| Ich bin gekommen. | kommen = movement |
| Ich bin gefahren. | fahren = movement |
| Ich bin aufgestanden. | aufstehen = change of state |
| Correct (haben) | Why? |
|---|---|
| Ich habe gegessen. | essen = no movement |
| Ich habe getrunken. | trinken = no movement |
| Ich habe gearbeitet. | arbeiten = no movement |
| Ich habe gespielt. | spielen = no movement |
Here is a list of the most important verbs that take sein in the Perfekt. Memorize these and you will get it right most of the time:
| Verb | Meaning | Example |
|---|---|---|
| gehen | to go | Ich bin gegangen. |
| kommen | to come | Er ist gekommen. |
| fahren | to drive/travel | Wir sind gefahren. |
| fliegen | to fly | Sie ist geflogen. |
| laufen | to run/walk | Ich bin gelaufen. |
| schwimmen | to swim | Er ist geschwommen.* |
| sterben | to die | Der Mann ist gestorben. |
| werden | to become | Sie ist geworden. |
| sein | to be | Ich bin gewesen. |
| bleiben | to stay | Er ist geblieben. |
| aufstehen | to get up | Ich bin aufgestanden. |
| einschlafen | to fall asleep | Sie ist eingeschlafen. |
| wachsen | to grow | Die Pflanze ist gewachsen. |
| fallen | to fall | Das Blatt ist gefallen. |
| passieren | to happen | Was ist passiert? |
Some verbs can use either haben or sein, depending on the meaning:
The pattern is consistent: if the verb emphasizes a destination or change of location, use sein. If it emphasizes the activity itself, use haben.
This same logic applies to verbs like joggen, klettern, and reiten. When in doubt, ask yourself: is the sentence about getting somewhere, or about doing the activity?
We covered the present tense tables above, but let us also look at the simple past (Präteritum), since haben and sein are two of the few verbs where native speakers regularly use this form in everyday speech:
| Pronoun | Conjugation |
|---|---|
| ich | hatte |
| du | hattest |
| er/sie/es | hatte |
| wir | hatten |
| ihr | hattet |
| sie/Sie | hatten |
| Pronoun | Conjugation |
|---|---|
| ich | war |
| du | warst |
| er/sie/es | war |
| wir | waren |
| ihr | wart |
| sie/Sie | waren |
These forms are essential for everyday German. You will hear ich war and ich hatte far more often than ich bin gewesen and ich habe gehabt.
Understanding the rules is one thing — applying them quickly in conversation is another. Here are some ways to practice:
Ready to put your knowledge to the test? Take our grammar quiz now and see how well you know your haben vs sein!
Want to keep improving your German grammar? Explore more lessons and interactive games at Deutschwunder.