French time expressions
Depuis, il y a or ça fait?
English “for” and “ago” can hide an important difference: is the situation still true now, or did the event finish in the past?
The three patterns
| Meaning | Pattern | Example |
|---|---|---|
| Ongoing since a duration or starting point | depuis + duration/date | J’habite ici depuis trois ans. |
| Ongoing duration, common in speech | ça fait + duration + que | Ça fait trois ans que j’habite ici. |
| Completed event a certain time ago | il y a + duration | J’ai déménagé il y a trois ans. |
Depuis: still true now
With an ongoing situation, French normally uses the present tense after depuis, even where English uses a present perfect.
Je travaille avec cette équipe depuis janvier.
I have worked with this team since January—and I still do.
Nous attendons depuis quarante minutes.
We have been waiting for forty minutes—and the wait is continuing.
Ça fait… que: the same timeline, a different shape
Ça fait six mois qu’elle apprend le français.
She has been learning French for six months.
In a past narrative, cela faisait… que moves the reference point into the past.
Cela faisait une heure que nous marchions quand la pluie a commencé.
We had been walking for an hour when the rain began.
Il y a: a finished event
Elle a envoyé le dossier il y a deux jours.
She sent the file two days ago—the sending is complete.
Do not confuse this time expression with existential il y a, meaning “there is/there are.” The words are identical, but the function is different.
Common mistakes
✗ J’ai habité ici depuis 2024. (if you still live here)
✓ J’habite ici depuis 2024.
An ongoing state uses the present with depuis.
✗ Il est parti depuis deux heures.
✓ Il est parti il y a deux heures.
The departure is a completed event two hours ago.
Try the patterns in FKE
Open the depuis card first, then compare it with the linked il y a and ça fait patterns.
Explore French duration patterns