Skip to content

“Ich bin gegangen” not “ich habe gegangen”: which verbs take sein in the past.

Motion is the wrong test on its own. What decides it is whether the verb has an object, and then a short list you learn.

Rodrigo · · 7 min

You ask why ich habe nach Hause gegangen is wrong and the answer is one word long: verbs of motion take sein. It repairs that sentence, and ich bin gekommen, ich bin angekommen and ich bin abgefahren with it. Then the same rule produces ich bin das Auto gefahren, chosen exactly as instructed and still wrong. Nothing in the rule was false. What nobody mentioned was the condition it had been standing on all along.

The condition is the object. A German verb takes haben when the sentence can put an accusative object after it, a thing the verb is done to, whatever the verb is doing: ich habe das Buch gelesen, ich habe das Auto gefahren, and it takes haben as well when there is no object anywhere in sight and nothing has moved or changed: ich habe geschlafen, ich habe gearbeitet, ich habe gewartet, which is true of that whole kind of verb apart from a group met further down. A verb takes sein when it cannot take an object at all and it either moves its subject from one place to another or changes its subject’s state: ich bin nach Hause gegangen, ich bin nach Berlin gefahren, ich bin eingeschlafen, ich bin müde geworden.

So “motion” is not the test, it is one of the two things the test looks at second. Say it in the other order and both of the sentences at the top come out right: can this verb, in this sentence, take an object? If yes, haben, and it does not matter how far anybody travelled. If no, then ask whether the subject moved or changed, and if it did, sein.

Ich bin nach Hause gegangen.
I went home.
No object available, and it moves you from one place to another, so sein.
Ich habe das Auto gefahren.
I drove the car.
The same verb with an object after it, so haben. This is the sentence the motion rule gets wrong.
Ich bin nach Berlin gefahren.
I travelled to Berlin.
Fahren with no object, so sein. One verb, two auxiliaries, decided by the rest of the sentence.
Ich habe gut geschlafen.
I slept well.
Nothing moved and nothing changed, so haben, although there is no object in sight.
Ich bin um sieben eingeschlafen.
I fell asleep at seven.
Falling asleep is a change of state, so sein, next to schlafen, which takes haben.

Schlafen and einschlafen are the pair to keep. Schlafen is a state you are in and it takes haben; einschlafen is the moment you enter it and it takes sein. The same split runs through a row of verbs where a prefix turns a state into the crossing into it: stehen against aufstehen, ich habe gestanden in standard German against ich bin aufgestanden. That choice is also what a sentence like vor drei Jahren bin ich hierher gezogen needs before it can finish, which is why the post on seit and vor hands the question over to this one.

The edge that trips people up

Some verbs take both auxiliaries and say something different with each, and the object is what switches them. Fahren and fliegen take haben with an object (ich habe den Wagen gefahren, er hat die Maschine geflogen) and sein without one (ich bin nach Berlin gefahren, sie ist nach Rom geflogen). Fahren has one form to watch here: ich bin Auto gefahren, with no article, is correct German and means you did some driving, because Auto fahren behaves as one activity rather than as a verb with an object. Put a real object in (das Auto, einen Lastwagen) and the sentence wants haben.

Ich bin Auto gefahren, und danach habe ich den Wagen meiner Mutter gefahren.
I did some driving, and afterwards I drove my mother’s car.
Auto fahren with no article takes sein. The moment a real object arrives, the same verb takes haben.

A length or a route can stand in the accusative after a sein verb without being an object, and it leaves the auxiliary where it was: ich bin zehn Kilometer gelaufen, ich bin einen Umweg gefahren. That is a class of phrase rather than a handful of sentences, because any distance covered or route taken can sit in that slot. Asking what the verb was done to gets an answer in those sentences, and the answer is an amount of ground rather than a thing.

Tanzen takes haben on its own (wir haben getanzt) and sein when the sentence names a direction (wir sind durch den Saal getanzt). Schwimmen is met with both auxiliaries, and a sentence that gives a direction takes sein: sie ist über den See geschwommen. Both auxiliaries are current on these verbs.

Wir haben getanzt, und dann sind wir durch den Saal getanzt.
We danced, and then we danced across the hall.
The activity takes haben. Give it a route through a room and it takes sein.

A residue is left, and no version of the rule above reaches it. Sein, bleiben and passieren take sein while nothing moves, nothing changes and no accusative object is possible: ich bin in Rom gewesen, ich bin zu Hause geblieben, das ist gestern passiert. Staying put is the opposite of a change of place, and bleiben takes sein anyway. The honest description of them is that they are words to learn rather than a rule to apply, and any principle that appeared to cover them would be a story invented after the fact to make the rule look complete. Gelingen, geschehen and begegnen belong to the same group, and it is met a few verbs at a time rather than learned at once.

How to hear it

The test is was?, put after the verb, and what matters is whether the sentence has a thing to answer it with rather than an amount. Ich habe gelesen, was? Das Buch. The question makes sense, so the verb is in the haben family, and it stays there on the days you leave the answer out: ich habe den ganzen Abend gelesen. Run it on the driving sentence and it answers before you have finished asking, because das Auto is sitting there ready to be the answer. Now try ich bin gegangen, was? and there is nothing the sentence could put there, because gehen has no object to give. That is sein, provided the going takes you somewhere, and it does.

The test runs in one direction, like most useful tests. A verb that can answer was? with a thing takes haben. A verb that cannot has told you only that haben is not settled, and schlafen, warten and arbeiten all fail to answer it and take haben regardless. Italian puts the same question to its own auxiliaries, with the same one-way result, and the post on sono andato against ho andato runs it there.

The sein verbs are a list. Sein goes with a verb that has no object and takes its subject somewhere (gehen, kommen, fahren, fliegen, reisen, steigen, fallen). It goes with a verb that has no object and changes its subject’s state (einschlafen, aufwachen, aufstehen, werden, sterben, wachsen). And it goes with sein, bleiben, passieren and the group they belong to, which answers to neither of those descriptions and takes sein anyway, arriving a few verbs at a time as you meet them. That makes the list a working set rather than a count of the language. The haben verbs are not a list at all, and there is not one of them you have to remember.

Hannes

Hamburg

läuft ganz gut heute, kann man nicht meckern. und wie läuft's bei dir?

Going pretty well today, can't complain. And how's it going with you?

Knowing the rule is the easy part. Using it without thinking takes someone to talk to.

Someone to talk to every day, in the language you want to keep.

  • Texts with you on Telegram, in Italian, German, Spanish, English and French.
  • Corrects you inside the answer, the way a friend would.
  • Writes you a letter every Sunday about how you're doing.

Free for 7 days, no card. Then €14 a month or €99 a year, VAT included.

The companions are AI and say so in their first message.

Talk to Hannes

We write when the letters start. Nothing else, and you can ask us to remove it at any time. What we do with your address .