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 decision: choose depuis or ça fait… que for a situation that continues now. Choose il y a for a completed event that happened a certain time ago.

The three patterns

MeaningPatternExample
Ongoing since a duration or starting pointdepuis + duration/dateJ’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 agoil y a + durationJ’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