Skip to content

Dutch irregular past tense: kwam, ging, was, had, deed, zag

If a Dutch colleague says *Ik kwam net binnen* and you freeze for a second, you have run into one of the most common irregular verbs in the language. Dutch has a regular past tense, formed by adding *-de* or *-te* to the stem (*werken* becomes *werkte*). It also has a small group of irregular verbs that ignore that rule. The catch is that the irregular ones are the verbs you hear most often: *komen*, *gaan*, *zijn*, *hebben*, *doen*, *zien*. Learn these six and you can follow most everyday past-tense Dutch.

How Dutch past tense works

Dutch has two ways of talking about the past, and you need both.

The simple past (*onvoltooid verleden tijd*) is one word: *kwam*, *ging*, *was*. It is used for narration, for descriptions, and for events that fill a stretch of time in the past. *Ik woonde toen in Utrecht.* — I lived in Utrecht then.

The perfect tense (*voltooid tegenwoordige tijd*) is two words: a form of *hebben* or *zijn* plus a past participle. *Ik ben naar Utrecht verhuisd.* — I moved to Utrecht. It is used for actions completed at some point before now, and in spoken Dutch it is often the default past tense for single events. *Ik heb gisteren gebeld.* — I called yesterday.

Dutch speakers switch between the two more freely than English speakers do. A typical sentence might pair them: *Ik heb hem gezien toen hij hier woonde.* — I saw him when he lived here.

komen → kwam → gekomen

*Komen* (to come) is irregular in both tenses. The simple past is *kwam* (singular) and *kwamen* (plural). The past participle is *gekomen*, and it takes *zijn* as the auxiliary, not *hebben*.

- *Hoe laat kwam je gisteren thuis?* — What time did you get home yesterday? - *Mijn ouders kwamen op bezoek.* — My parents came to visit. - *Sorry dat ik te laat ben gekomen.* — Sorry I came late.

The *zijn* auxiliary is the part that catches English speakers out. In English you always say *I have come*; in Dutch *komen* describes a change of location, and verbs of motion in Dutch use *zijn* in the perfect: *ik ben gekomen*, never *ik heb gekomen*.

gaan → ging → gegaan

*Gaan* (to go) is the partner verb to *komen* and behaves the same way. Simple past is *ging*/*gingen*; past participle *gegaan* with *zijn*.

- *Waar ging je gisteravond naartoe?* — Where did you go last night? - *We gingen met de trein.* — We went by train. - *Ze is naar huis gegaan.* — She went home.

A useful pair to memorise together: *kwam* and *ging* sit in almost every other Dutch story. *Hij kwam binnen, ging zitten, en bestelde een koffie.* — He came in, sat down, and ordered a coffee.

zijn → was → geweest

*Zijn* (to be) is irregular everywhere, including the past. Simple past is *was* (singular) and *waren* (plural). Past participle *geweest*, with *zijn*: *ik ben geweest*.

- *Waar was je vanmorgen?* — Where were you this morning? - *We waren met z'n drieën.* — There were three of us. - *Ben je ooit in Maastricht geweest?* — Have you ever been to Maastricht?

*Was* is the single most common past-tense word in Dutch. It carries the same workload as *was* and *were* in English. The plural *waren* surprises learners who expect a *was/were* split tied to person rather than number; in Dutch the split is purely singular versus plural.

hebben → had → gehad

*Hebben* (to have) gives you *had*/*hadden* in the simple past and *gehad* in the perfect. The auxiliary in the perfect is *hebben* itself: *ik heb gehad*.

- *Had je gisteren tijd?* — Did you have time yesterday? - *We hadden geen idee.* — We had no idea. - *Ik heb het nog nooit gehad.* — I have never had it.

*Hebben* is the workhorse auxiliary in Dutch. Most past participles pair with it. The few that do not (verbs of motion or change of state like *komen*, *gaan*, *worden*, *blijven*) use *zijn* instead.

doen → deed → gedaan

*Doen* (to do) gives *deed*/*deden* and *gedaan*.

- *Wat deed je in het weekend?* — What did you do at the weekend? - *Wij deden de boodschappen samen.* — We did the shopping together. - *Ik heb het al gedaan.* — I already did it.

Watch for the spelling: *deed* keeps the long *ee* sound; *deden* drops one *e* in plural. *Gedaan* has *aa* in the participle, not *ee*.

zien → zag → gezien

*Zien* (to see) gives *zag*/*zagen* and *gezien*.

- *Zag je het bericht?* — Did you see the message? - *We zagen hem op straat.* — We saw him on the street. - *Ik heb haar nog niet gezien.* — I have not seen her yet.

The vowel shift in *zien* → *zag* is one of the bigger jumps in Dutch irregular verbs. *Ie* in the present, *a* in the past, *ie* again in the participle. The pattern looks unrelated until you have heard it a few hundred times.

Why the six worst offenders are the most common

It is not a coincidence that the six most irregular verbs are also the six most frequent. *Zijn*, *hebben*, *komen*, *gaan*, *doen*, *zien* are the verbs every speaker uses dozens of times a day, in every kind of sentence. High-frequency verbs in any Germanic language hold on to their old irregular forms longer than rare verbs do, because every generation of speakers learns them as fixed shapes rather than applying a rule. The same pattern is visible in English: *be*, *have*, *go*, *come*, *do*, *see* are all irregular too.

The practical consequence is that you cannot avoid these forms. You will hear *was*, *had*, *kwam*, *ging* in nearly every Dutch conversation about anything that happened earlier today. Memorising all of them up front is faster than meeting them one at a time.

hebben or zijn? a quick test

A common stumble for learners is choosing between *hebben* and *zijn* in the perfect tense. The rough rule:

- Verbs of motion or change of state take *zijn*: *gaan*, *komen*, *worden*, *blijven*, *vertrekken*, *aankomen*. *Ik ben gegaan.* - Most other verbs take *hebben*. *Ik heb gewerkt.* - *Zijn* itself takes *zijn*: *ik ben geweest*.

There are edge cases. Some motion verbs use *hebben* when no destination is implied (*ik heb gefietst* if you just biked around, *ik ben naar werk gefietst* if you went somewhere). But for the six core verbs above, the pairing is fixed. *Zijn*, *gaan*, *komen* take *zijn*. *Hebben*, *doen*, *zien* take *hebben*.

Why exposure beats memorisation

You can learn *kwam, ging, was, had, deed, zag* as a list and still freeze when a colleague tells a five-minute story in the past tense. The reason is the same one that makes separable verbs and modal particles hard: recognition is built by exposure, not by recall. A native speaker hears *kwam* and processes it instantly because they have heard the shape thousands of times in real sentences, not because they look it up against a chart.

Mixed practice helps: short past-tense dialogues that pair the same verb in multiple shapes (*ik kwam*, *we kwamen*, *ik ben gekomen*) until each form sounds expected rather than surprising.

Practice the past tense

TikTaal's Patterns section has an *Onregelmatige verleden tijd* family that walks through the six core verbs in short dialogues, with both the simple past and the perfect form for each. The Patterns feature is free; no account is required.

For the past tense in a complete conversation, the free huurcontract scenario uses *was*, *had*, and *kwam* across a real rental-contract conversation. Tap any word to hear it and see the meaning.



Try the free huurcontract scenario — past tense in context

Or go deeper: Drill the irregular past tense (free) (Pro).