Does the past participle agree? The decision chain
Not how to form the passé composé, but whether the participle agrees: with être → with the subject; with avoir → invariable UNLESS the direct object comes first (l', que, quel). Plus the traps: lui/leur don't count, s'est lavée vs s'est lavé les mains, fait + infinitive is invariable.
🎯 This page is not about forming the passé composé (see “Past tenses”) — only about whether the past participle agrees: invisible when you speak, costly when you write.
One decision chain
Two questions, every time:
- Is there something to agree with? (the direct object — “whom / what?”)
- Does it come BEFORE the participle?
Before → agree (add e for feminine, s for plural). Otherwise → leave it alone.
The three rules
| Case | Agreement? | Example |
|---|---|---|
| Auxiliary être | ✅ with the subject | Elle est partie. · Ils sont allés. |
| Auxiliary avoir, object after | ❌ invariable | Elle a mangé une pomme. |
| Auxiliary avoir, direct object before | ✅ with that object | Je l'ai vue. · Les photos que j'ai prises. |
⚡ Three shapes of a preceding object
① Object pronoun le / la / les
Ces lettres ? Je les ai écrites.
② Relative pronoun que
La robe que j'ai achetée hier.
③ Interrogative quel / combien de
Quelle robe as-tu choisie ? · Combien de lettres as-tu écrites ?
⚠️ Indirect objects don't count: Je lui ai parlé. · Je leur ai téléphoné. Test: does the verb take à? If yes → indirect → no agreement.
💡 Reflexive verbs
| Example | Agreement? | Why |
|---|---|---|
| Elle s'est lavée. | ✅ | se is the direct object, placed before |
| Elle s'est lavé les mains. | ❌ | the real object is “les mains”, after |
| Elles se sont parlé. | ❌ | parler à qqn → indirect |
| Ils se sont rencontrés. | ✅ | rencontrer qqn → direct |
🚫 Never agrees
- avoir + object placed after: Elle a écrit une lettre.
- indirect object (lui / leur / se): Elles se sont téléphoné.
- fait + infinitive (invariable): Les robes qu'elle a fait faire.
- object = en: Des erreurs ? J'en ai fait.
Shortcut
Être → subject. Avoir → invariable, unless the direct object came first. Indirect objects never count.
