Deutsch — haben vs sein in the Perfekt
German forms the Perfekt with an auxiliary plus a past participle. The auxiliary is either haben or sein: ich habe gearbeitet but ich bin gegangen. Choosing the right one follows a clear rule.
How it works
Use sein when the verb shows a movement from one place to another (gehen, fahren, kommen) or a change of state (aufstehen, einschlafen, wachsen), and with sein, bleiben and werden themselves: ich bin gefahren, er ist eingeschlafen, wir sind geblieben. Use haben with all other verbs, including every verb that takes a direct object: ich habe das Auto gefahren, ich habe gegessen.
Examples
| Infinitive | Perfekt | Why this auxiliary |
|---|---|---|
| gehen | er ist gegangen | sein — movement to another place |
| fahren | sie ist gefahren | sein — movement (no object) |
| aufstehen | ich bin aufgestanden | sein — change of state |
| einschlafen | das Kind ist eingeschlafen | sein — change of state |
| bleiben | wir sind geblieben | sein — one of the fixed sein-verbs |
| werden | er ist Arzt geworden | sein — one of the fixed sein-verbs |
| essen | ich habe gegessen | haben — action, not motion |
| kaufen | sie hat ein Buch gekauft | haben — verb with a direct object |
Good to know
A few verbs switch auxiliary with meaning. Verbs like fahren, fliegen or reiten take sein when used intransitively (movement) but haben when they have a direct object: ich bin nach Berlin gefahren, but ich habe das Auto gefahren. Southern German and Austrian usage extends sein to some verbs that standard German keeps with haben (e.g. ich bin gestanden vs. ich habe gestanden).