Time Expressions: Hace, Desde, and More

Adapted from The Animated Book of Spanish, an interactive Spanish grammar book.

English uses ago, since, and for to place things in time. Spanish uses hace, desde, and desde hace, and the trick is knowing which one matches the picture in your head:
  • hace

    Me mudé aquí hace tres años.

    I moved here three years ago.

  • desde

    Vivo aquí desde 2022.

    I’ve lived here since 2022.

  • desde hace

    Vivo aquí desde hace tres años.

    I’ve lived here for three years.

  • durante

    Viví en Chile durante tres años.

    I lived in Chile for three years.

On this page

Hace: ago

Hace + a length of time means ago. The verb is in the past.

  • Llegué hace una hora.

    I arrived an hour ago.

  • Nos conocimos hace diez años.

    We met ten years ago.

  • Hace un rato que llamó tu madre.

    Your mom called a little while ago.

Desde: since

Desde + a point in time means since. If it's still going on, Spanish uses the present tense, where English says have been or have lived.

  • Estudio español desde enero.

    I’ve been studying Spanish since January.

  • Mi hermano está enfermo desde el lunes.

    My brother has been sick since Monday.

  • Te espero desde las ocho.

    I’ve been waiting for you since eight.

Desde hace: for, still going

For a length of time that's still going on, use desde hace, or turn it around with hace … que. Both mean the same thing, and both use the present tense.

  • Vivo aquí desde hace tres años.

    orHace tres años que vivo aquí.

    I’ve lived here for three years.

  • Estudio español desde hace seis meses.

    orHace seis meses que estudio español.

    I’ve been studying Spanish for six months.

  • No lo veo desde hace mucho.

    orHace mucho que no lo veo.

    I haven’t seen him in a long time.

Desde or desde hace?

Both mean something started in the past and is still going. The difference is what comes next: a point in time takes desde, and a length of time takes desde hace.

  1. Desde + a point in time
    Trabajo aquí desde 2020.

    I’ve worked here since 2020.

    Desde hace + a length of time
    Trabajo aquí desde hace cinco años.

    I’ve worked here for five years.

  2. Desde + a point in time
    Está enfermo desde el lunes.

    He’s been sick since Monday.

    Desde hace + a length of time
    Está enfermo desde hace dos días.

    He’s been sick for two days.

  3. Desde + a point in time
    Te espero desde las ocho.

    I’ve been waiting for you since eight.

    Desde hace + a length of time
    Te espero desde hace una hora.

    I’ve been waiting for you for an hour.

Llevo dos horas…

In everyday speech, llevar + a length of time is a very common way to say how long you've been doing something. Add an -ando form or a place.

  • Llevo dos horas esperando.

    I’ve been waiting for two hours.

  • ¿Cuánto tiempo llevas estudiando español?

    How long have you been studying Spanish?

  • Llevamos un año en Madrid.

    We’ve been in Madrid for a year.

Durante: for, finished

If it's over, use the past tense with durante, por, or no word at all. English uses for either way, so the tense does the work.

  1. Still going
    Vivo aquí desde hace tres años.

    I’ve lived here for three years (and still do).

    Finished
    Viví allí tres años.

    I lived there for three years (and don’t anymore).

  2. Still going
    Estudio piano desde hace un año.

    I’ve been studying piano for a year.

    Finished
    Estudié piano durante un año.

    I studied piano for a year.

Asking how long

Each of these phrases has a matching question:

  • ¿Cuánto tiempo hace que vives aquí?

    How long have you lived here?

  • ¿Desde cuándo estudias español?

    Since when have you been studying Spanish?

  • ¿Cuánto tiempo llevas en España?

    How long have you been in Spain?

  • ¿Hace cuánto llegaste?

    How long ago did you arrive?

Common mistakes English speakers make

  1. Using por for something still going on

    Incorrect:Vivo aquí por tres años.
    Correct:Vivo aquí desde hace tres años.

    If it's still true, use desde hace (or hace … que).

  2. Using desde with a length of time

    Incorrect:Vivo aquí desde tres años.
    Correct:Vivo aquí desde hace tres años.

    Desde alone is for a point in time. A length of time needs desde hace.

  3. Using desde hace with a point in time

    Incorrect:Te espero desde hace las ocho.
    Correct:Te espero desde las ocho.

    Las ocho is a point in time, so it takes desde.

  4. Using desde hace for something finished

    Incorrect:Viví allí desde hace tres años.
    Correct:Viví allí tres años.

    Desde hace means it's still going. For something that's over, use the past with durante or nothing.

  5. Adding atrás

    Sounds unnatural:Llegué hace una hora atrás.
    Correct:Llegué hace una hora.

    Hace already means ago, so atrás is repeating it.

  6. Using the present perfect with desde hace

    Sounds unnatural:He vivido aquí desde hace tres años.
    Correct:Vivo aquí desde hace tres años.

    With desde hace, the present tense is far more natural.

Questions about time expressions

How do you say "ago" in Spanish?

Hace + a length of time, with the verb in the past: Llegué hace una hora ("I arrived an hour ago").

What is the difference between desde and desde hace?

Desde goes with a point in time: desde 2019, desde el lunes. Desde hace goes with a length of time: desde hace tres años, desde hace dos días. Both mean something started then and is still going.

How do you say "I have lived here for three years" in Spanish?

With the present tense, because it's still true: Vivo aquí desde hace tres años, Hace tres años que vivo aquí, or Llevo tres años viviendo aquí. All three mean the same thing.

How do you say "for" with time in Spanish?

It depends on whether it's still going on. Still going: desde hace or hace … que with the present (Estudio español desde hace un año). Finished: the past tense with durante, por, or nothing at all (Viví allí tres años).

What does "llevo" mean with time?

Llevar + a length of time says how long you've been doing something: Llevo dos horas esperando ("I've been waiting for two hours").

Next upRelative pronounsQue, quien, el que, lo que, cuyo, and donde, and the difference between que and lo que.

Related