If you've been learning French for any serious length of time, you've hit this wall: "I know how to form both. I just don't know which one to use."
You're not alone. Choosing between passé composé and imparfait is consistently rated the hardest decision in French past-tense conjugation by English speakers, because English doesn't have a real equivalent distinction. We get by with one simple past ("I ate") and rely on context.
French doesn't. It forces you to pick. And the pick matters: native speakers hear the wrong choice immediately, even when the verbs are conjugated correctly.
Here's the framework that finally made it click for us.
(This guide is about choosing between them. If you need the mechanics first, see how to form the passé composé and how to form the imparfait.)
The one-line rule
Passé composé = a completed action. Imparfait = an ongoing background, a description, or a repeated habit.
That's it. The rest of this article is just learning to recognize which of those two situations you're in.
Four useful starting patterns
1. A specific, finished action → passé composé
Anything that happened once, started, ended, and is over.
Hier, j'ai mangé une pizza. (Yesterday, I ate a pizza.) Elle est arrivée à 8h. (She arrived at 8.) Nous avons fini le projet. (We finished the project.)
A date or clock time does not choose the tense. Hier, à huit heures, il pleuvait still uses imparfait because it presents the weather as ongoing at that point.
2. A repeated or habitual action → imparfait
Things you used to do, or did regularly.
Quand j'étais petit, je jouais au foot tous les samedis. (When I was little, I played soccer every Saturday.) Nous allions souvent à la plage. (We often went to the beach.) Elle buvait un café chaque matin. (She drank a coffee every morning.)
English clue: if you can rephrase with "used to" or "would" (in the habitual sense), it's imparfait.
3. A description or state of being → imparfait
Setting the scene. What things were like.
Il faisait beau. (The weather was nice.) Elle avait 25 ans et portait une robe rouge. (She was 25 and was wearing a red dress.) J'étais fatigué. (I was tired.)
These examples present background or states in progress. A bounded state can use passé composé: J'ai été malade pendant trois jours. Repetition can also be bounded: J'ai travaillé tous les jours cette semaine summarises a completed series.
4. An interruption: background + sudden event
This is the classic combo that makes French past tense feel cinematic. The setting is imparfait. The interrupting event is passé composé.
Je dormais quand le téléphone a sonné. (I was sleeping when the phone rang.)
Nous mangions quand elle est entrée. (We were eating when she came in.)
Notice the pattern: the long, ongoing thing in the background gets imparfait. The short, sudden thing that interrupts gets passé composé.
Keyword cheat sheet
These expressions often appear in the following patterns, but are clues to interpret, not automatic tense selectors:
| Signals passé composé | Signals imparfait |
|---|---|
| hier (yesterday) | tous les jours (every day) |
| la semaine dernière (last week) | souvent (often) |
| ce matin (this morning) | toujours (always) |
| une fois (once) | d'habitude (usually) |
| soudain (suddenly) | pendant que (while) |
| tout à coup (all of a sudden) | quand j'étais petit (when I was little) |
| à 8 heures (at 8 o'clock) | chaque matin (every morning) |
Compare Hier, il pleuvait quand je suis sorti with Hier, il a plu pendant une heure. The same word hier works with both. Ask whether the speaker presents a situation from within, as background, or as a bounded whole.
The verbs that almost always take imparfait
A handful of verbs describe states rather than actions, and they live in the imparfait by default unless something specific finished:
- être (to be), J'étais content.
- avoir (to have), Elle avait un chien.
- savoir (to know facts), Nous savions la réponse.
- vouloir (to want), Je voulais partir.
- pouvoir (to be able to), Il ne pouvait pas dormir.
- penser / croire (to think / to believe), Je pensais que c'était facile.
⚠️ But watch out: these same verbs shift meaning in passé composé. Je savais = "I knew." J'ai su = "I found out." Je voulais = "I wanted." J'ai voulu = "I tried (and acted on it)." French uses the tense change itself to mean something different.
A mental test you can run on any sentence
When in doubt, ask yourself two questions in order:
- Is this a description, a habit, or something ongoing? → imparfait.
- Did this happen once, with a beginning and an end? → passé composé.
Use those questions as a starting point, then check the context: habits and states can be presented as a bounded whole. Some contexts permit either tense with a change in viewpoint rather than one universally correct answer.
Free practice · 12 questions
Passé composé or imparfait?
1 / 12
Why this is so hard for English speakers
English collapses both into "I ate." French speakers grew up making this distinction without thinking about it, the same way English speakers naturally pick "I have eaten" vs "I ate" without consulting a grammar book.
The good news: it becomes automatic with practice. The bad news: reading about it (even this article) won't get you there. You need to produce the choice over and over until your brain stops asking and just picks.
That's exactly what we built Bonjour Verbs for. The roadmap has a dedicated milestone on imparfait, then another milestone on the passé composé / imparfait contrast specifically, with typed-answer practice on real sentence pairs. You don't graduate the milestone until you're reliably picking the right tense without thinking.
Get a free taste of it on iOS and Android.