Dutch Fluency
Find my levelLevel
Login

Level A2

Hebben or zijn in the perfect tense

Most Dutch verbs form the perfect tense (a helper verb plus a form like gewerkt or gegaan) with hebben: ik heb gewerkt. You use zijn for verbs that describe a change of place or state, as in ik ben vertrokken or hij is ziek geworden, and for the verbs zijn and blijven themselves. Movement verbs like fietsen take zijn when you say where you went and hebben when you mean the activity.

The pattern

Most verbs take hebben in the perfect tense. Use zijn for verbs that describe a change of place or state, and for zijn and blijven.

  • hebben: most verbs, such as werken, eten, kopen and slapen (ik heb geslapen)
  • zijn for a change of place: gaan, komen, vertrekken (ze is vertrokken)
  • zijn for a change of state: worden, sterven, beginnen (het is begonnen)
  • zijn for the verbs zijn and blijven: ik ben ziek geweest, ik ben gebleven
  • movement verbs (fietsen, lopen, rijden, zwemmen): zijn with a destination, hebben for the activity

Examples

Ik heb gisteren tot zes uur gewerkt.I worked until six yesterday.
Sanne is om acht uur vertrokken.Sanne left at eight.
Mijn moeder is gisteren op bezoek gekomen.My mother came to visit yesterday.
Mijn buurvrouw is vorige week oma geworden.My neighbour became a grandmother last week.
De cursus is in september begonnen.The course started in September.
Mijn opa is in 2015 gestorven.My grandfather died in 2015.
Ik ben vorige week ziek geweest.I was ill last week.
Emma is de hele dag in bed gebleven.Emma stayed in bed all day.
Ik ben naar huis gefietst.I cycled home.
Ik heb vandaag veel gefietst.I cycled a lot today.

Why it works this way

Think about what each helper puts in the spotlight. With hebben, the sentence is about something you did: Ik heb gewerkt. With zijn, the sentence usually describes a change: the subject moved to another place or became something else. Sanne is vertrokken means Sanne left. Mijn buurvrouw is oma geworden means she became a grandmother. Often the new situation still holds, but the tense does not promise that: Sanne may well be back home by now.

Movement verbs show this best. Ik ben naar huis gefietst tells you where I went. Ik heb vandaag veel gefietst only tells you what I did. A place where the activity happened is not a destination, so Mei heeft in het park gewandeld takes hebben.

Remember: zijn is for moving to another place or turning into something else. If you just did something, use hebben. The verbs zijn and blijven do not fit this picture, so learn them as a pair: ik ben geweest, ik ben gebleven.

Treat the change idea as a strong tendency rather than a law. Some change verbs switch to hebben when they have an object: Het glas is gebroken (the glass broke), but Daan heeft het glas gebroken (Daan broke the glass). The safest habit is to learn each zijn verb together with its helper.

English uses have with every verb, and Spanish also has one helper for everything, so speakers of both tend to use hebben everywhere. German splits its verbs in a similar way, which helps, but German often uses its word for "be" with swimming or cycling even without a destination, where Dutch wants hebben.

Watch out

  • NotIk heb ziek geweest.

    SayIk ben ziek geweest.

    zijn takes zijn as its helper, even though English says have been

  • NotWe hebben naar de markt gegaan.

    SayWe zijn naar de markt gegaan.

    gaan takes zijn

  • NotIk heb een week in Utrecht gebleven.

    SayIk ben een week in Utrecht gebleven.

    blijven takes zijn

  • NotHet heeft koud geworden.

    SayHet is koud geworden.

    worden is a change of state

  • NotLotte is de hele middag gezwommen.

    SayLotte heeft de hele middag gezwommen.

    no destination, just the activity

Quick check

  1. Fill in is or heeft: Daan ... gisteren naar Amsterdam gefietst.
  2. Fill in is or heeft: Yara ... zondag twee uur in het bos gewandeld.
  3. Fix the sentence: De les heeft om negen uur begonnen.
  4. Fill in is or heeft: Joris ... vorige maand naar Rotterdam verhuisd.
Show the answers
  1. is (a destination: Daan cycled to Amsterdam)
  2. heeft (no destination, just the activity)
  3. De les is om negen uur begonnen. (beginnen takes zijn)
  4. is (verhuizen is a change of place)

Use it today

This weekend, send a friend a short Dutch message with three sentences: one with a destination (Ik ben naar de markt gefietst), one about an activity (Ik heb veel gewandeld), and one with geweest or gebleven.

Questions learners ask

When do you use zijn instead of hebben in the Dutch perfect tense?

Use zijn with verbs that describe a change of place or state, such as gaan, komen, vertrekken, worden, sterven and beginnen, and with the verbs zijn and blijven themselves. Most other verbs use hebben.

Is it "ik heb gefietst" or "ik ben gefietst" in Dutch?

It depends on what you want to say. With a destination you use zijn: "Ik ben naar het werk gefietst." When you mean the activity itself, you use hebben: "Ik heb vandaag veel gefietst."

Why do you say "ik ben ziek geweest" and not "ik heb ziek geweest"?

In Dutch, the verb zijn (to be) takes zijn as its helper verb in the perfect tense, so the correct form is "ik ben ziek geweest". English says "I have been", which is why "ik heb geweest" is such a common mistake. The same goes for blijven: "ik ben gebleven".

Is this rule at your level?

The free level test shows where you are, so you know which rules to learn next.

Updated 2026-10-08. Free to share and adapt under CC BY-SA 4.0, with credit to Dutch Fluency.