How long: hace … que, desde hace, llevar + gerund
Say how long something has been going on, and how long ago something happened.
Part of the free A2 Spanish course. Press the speaker next to an example to hear it.
English says I have been living here for three years. Spanish does not use a perfect tense for this. If the action is still going on, Spanish uses the present tense and adds a time expression. There are three common ways to do it, and they all mean the same thing.
1. Hace + time + que + present
Start with hace (literally "it makes"), then the length of time, then que, then the verb in the present.
- Hace tres años que vivo en Madrid.I've been living in Madrid for three years.
- ¿Cuánto tiempo hace que estudias español?How long have you been studying Spanish?
2. Present + desde hace + time
Put the verb first and the length of time at the end, after desde hace.
- Vivo en Madrid desde hace tres años.I've been living in Madrid for three years.
Desde on its own means since and is followed by a point in time (a date, a day, an age), not by a length of time:
- Trabajo aquí desde enero.I've been working here since January.
- ¿Desde cuándo tienes este coche?Since when have you had this car?
| You give... | Use | Example |
|---|---|---|
| a length of time (tres años, una hora) | desde hace | desde hace tres años |
| a point in time (2020, el lunes, los diez años) | desde | desde 2020 |
3. Llevar + time + gerund
Llevar (normally "to carry, to wear") also expresses duration. Conjugate llevar, add the time, then a gerund: the -ando / -iendo form you met in Estar + gerund: what is happening now. This is very common in everyday Spain Spanish.
- Llevo tres años viviendo en Madrid.I've been living in Madrid for three years.
- ¿Cuánto tiempo llevas esperando?How long have you been waiting?
With estar or a place, you can drop the gerund:
- Llevamos una hora aquí.We've been here for an hour.
For something that has not happened for a while, use llevar + time + sin + infinitive, or hace … que no + present:
- Llevo dos días sin dormir bien.I haven't slept well for two days.
- Hace mucho que no veo a mis primos.I haven't seen my cousins for a long time.
Hace + time with a past tense = "ago"
When the action is finished, hace + time with the preterite (Preterite of regular verbs) means ago. No que is needed when hace comes after the verb.
- Llegué hace diez minutos.I arrived ten minutes ago.
- Mis padres se conocieron hace cuarenta años.My parents met forty years ago.
Present tense = still true now (Hace un año que estudio = I've been studying for a year). Preterite = finished (Estudié hace un año = I studied a year ago).
Latin America
All three patterns are used everywhere. In parts of Latin America (for example Mexico) you will also hear tener + time + gerund: Tengo dos años viviendo aquí. Understand it; in Spain say Llevo dos años viviendo aquí.
Common mistakes
Vivo aquí por tres años: don't translate for with por or para here. Say Vivo aquí desde hace tres años.desde tres años: a length of time needs desde hace; plain desde is for a starting point (desde 2021).He estado viviendo aquí por tres años: a word-for-word copy of English. Use the present: Llevo tres años viviendo aquí.Llevo dos años vivir aquí: llevar takes a gerund (viviendo), or sin + infinitive in the negative.- Mixing up the tenses: Hace un mes que trabajo aquí (I've been working here for a month) is not Trabajé aquí hace un mes (I worked here a month ago).
Practice
- _____ dos meses que aprendo a tocar la guitarra.Options: Hace · Desde · Lleva · Hay
Show the answer
Hace — Hace + time + que + present tense.
- Estudio alemán _____ seis meses.Options: desde hace · desde · hace que · por
Show the answer
desde hace — A length of time after the verb takes desde hace.
- Ana vive en Sevilla _____ 2019.Options: desde · desde hace · hace · hace que
Show the answer
desde — 2019 is a point in time, so plain desde.
- Mi hermano _____ (llevar) cinco años trabajando en un hospital.
Show the answer
lleva