Spanish has a single, elegant construction that does the work of two different English structures. Where English splits "two years ago" and "it's been two years since…" into separate forms, Spanish uses one frame: hace + time expression + (que) + preterite verb. Master this and you can talk about anchored past events — when something happened relative to now — with native-sounding fluency.
The core construction
The verb hacer in the impersonal third-person singular (hace) functions here like a preposition meaning "ago." The time expression follows it, and the past action is in the preterite.
There are two equivalent word orders:
- Hace + tiempo + que + verbo en pretérito: Hace dos años que me mudé a Madrid.
- Verbo en pretérito + hace + tiempo: Me mudé a Madrid hace dos años.
Both mean exactly the same thing: "I moved to Madrid two years ago" / "It's been two years since I moved to Madrid."
Hace dos años que me mudé a Madrid.
I moved to Madrid two years ago.
Me mudé a Madrid hace dos años.
I moved to Madrid two years ago.
Why the preterite is mandatory
The action being described is a single, completed event with a clear point of occurrence. Moving to Madrid, getting married, breaking your leg, finishing a degree — these are bounded events that happened once. The preterite is the tense that marks completed past actions, so it is the only correct choice here.
If you used the imperfect, you would be describing an ongoing or habitual past state, which contradicts the "X ago" reading. Hace dos años vivía en Madrid means "Two years ago I was living in Madrid" — a description of an ongoing state at that time, NOT an event that began two years ago.
Hace tres años empecé a trabajar en esta empresa.
I started working at this company three years ago.
Conocí a mi pareja hace cinco años en un concierto.
I met my partner five years ago at a concert.
Hace un mes que vendí el coche y todavía no he comprado otro.
I sold my car a month ago and I still haven't bought another one.
Don't confuse it with the present-tense parallel
There is a closely related construction that uses the present tense instead of the preterite, and the meaning is completely different:
- Hace + tiempo + que + presente → ongoing situation that started in the past and continues now.
- Hace + tiempo + que + pretérito → single past event located X time ago.
| Spanish | Tense | English |
|---|---|---|
| Hace dos años que vivo en Madrid. | presente | I've been living in Madrid for two years (and still do). |
| Hace dos años que me mudé a Madrid. | pretérito | I moved to Madrid two years ago (single event). |
Same opening words, completely different meaning. The verb tense is everything.
Hace seis meses que trabajo aquí.
I've been working here for six months. (still working here)
Hace seis meses que empecé a trabajar aquí.
I started working here six months ago. (single event of starting)
Asking the question: ¿Cuánto hace que…?
To ask how long ago someone did something, use ¿Cuánto (tiempo) hace que…? plus the preterite. The answer mirrors the same structure.
¿Cuánto hace que terminaste la carrera? — Hace cinco años, en 2020.
How long ago did you finish your degree? — Five years ago, in 2020.
¿Cuánto tiempo hace que viste a Marta por última vez?
How long has it been since you last saw Marta?
¿Hace cuánto que llegasteis a Sevilla? — Hace dos horas.
How long ago did you (all) arrive in Seville? — Two hours ago.
Notice the third example: ¿Hace cuánto…? with the hace first is also natural and very common in spoken peninsular Spanish. It is slightly more conversational than the textbook ¿Cuánto hace…?
Negative version: hace + tiempo + que no + pretérito perfecto
There is a useful negative twist. To say "I haven't done X for Y time," peninsular Spanish prefers hace + tiempo + que no + present perfect. The preterite does NOT work here, because the negative implies an ongoing absence of the action, not a punctual event.
Hace tres meses que no he ido al gimnasio.
I haven't been to the gym for three months.
Hace años que no nos hemos visto.
We haven't seen each other in years.
Sometimes you'll also hear the simple present in this negative construction, which is also correct and very Spanish: Hace años que no nos vemos. Both are natural.
Hace meses que no como tan bien.
I haven't eaten this well in months.
Common time expressions used
The slot after hace accepts any time expression. The most common ones in everyday peninsular Spanish:
| Time expression | Example |
|---|---|
| hace un rato | Hace un rato me llamó tu madre. (A little while ago your mom called me.) |
| hace un momento | Hace un momento estaba aquí. (A moment ago he was here.) |
| hace media hora | Me llegó el paquete hace media hora. (The package arrived half an hour ago.) |
| hace dos horas | Hace dos horas que comí. (I ate two hours ago.) |
| hace una semana | Hace una semana que volvieron. (They came back a week ago.) |
| hace un mes | Compré el piso hace un mes. (I bought the flat a month ago.) |
| hace mucho (tiempo) | Hace mucho que no la veo. (I haven't seen her in a long time.) |
| hace siglos | ¡Hace siglos que no nos vemos! (We haven't seen each other in ages!) |
The expressions hace siglos (literally "centuries ago") and hace un montón are very common conversational exaggerations. Native speakers use them constantly.
¡Hace siglos que no vienes a vernos!
It's been ages since you came to see us!
Hace un montón que dejé de fumar y me siento mucho mejor.
It's been a long time since I quit smoking and I feel much better.
Sequence of events: hace + tiempo with multiple verbs
In narration, hace + tiempo often anchors the timeline at the start of a story, then the preterite verbs that follow build the sequence.
Hace dos años conocí a Laura en una fiesta, empezamos a salir un mes después y nos casamos el verano pasado.
Two years ago I met Laura at a party, we started dating a month later and we got married last summer.
Hace una hora llegaron los invitados, descorchamos el cava y empezamos a cenar.
An hour ago the guests arrived, we uncorked the cava and we started having dinner.
How this differs from English
English has three different ways to express what Spanish does with this one construction:
- "X ago": "Two years ago I moved to Madrid." → Hace dos años me mudé a Madrid.
- "It's been X since…": "It's been two years since I moved to Madrid." → Hace dos años que me mudé a Madrid.
- "X time has passed since…" (formal): "Two years have passed since I moved to Madrid." → Han pasado dos años desde que me mudé a Madrid.
The first two are direct equivalents of the hace construction; the third uses a different verb (pasar) and is more formal and less common.
Crucially, English speakers must resist the urge to translate "two years ago" as dos años atrás. The word atrás does exist in Spanish and can be used (dos años atrás), but it is rare in everyday peninsular speech and sounds Latin American or literary. In Spain, hace + tiempo is the unmarked default.
The position of que
The connector que is only present when hace + tiempo comes first in the sentence. When the preterite verb comes first, que disappears completely.
- ✅ Hace dos años que me mudé.
- ✅ Me mudé hace dos años.
- ❌ Me mudé que hace dos años. (Incorrect — no que in this order.)
- ❌ Hace dos años me mudé que. (Incorrect — que must directly follow the time expression.)
Hace tres años que dejé el tabaco y nunca me he sentido mejor.
I quit smoking three years ago and I've never felt better.
Dejé el tabaco hace tres años y nunca me he sentido mejor.
I quit smoking three years ago and I've never felt better.
Common Mistakes
❌ Hace dos años me mudaba a Madrid.
Incorrect — the imperfect describes an ongoing past state, not a single event. The preterite is required: me mudé.
✅ Hace dos años me mudé a Madrid.
I moved to Madrid two years ago.
❌ Yo conocí mi pareja hace cinco años atrás.
Incorrect — *atrás* is redundant after *hace* and sounds non-native in Spain. Also missing the personal *a*.
✅ Conocí a mi pareja hace cinco años.
I met my partner five years ago.
❌ Hace tres años que me mudo a Madrid.
Incorrect — the present *me mudo* describes a habitual or current action, not a single past event. For 'I moved three years ago,' the verb must be preterite: *me mudé*.
✅ Hace tres años que me mudé a Madrid.
I moved to Madrid three years ago.
❌ Me mudé a Madrid que hace dos años.
Incorrect — when the verb comes first, *que* is not used.
✅ Me mudé a Madrid hace dos años.
I moved to Madrid two years ago.
❌ ¿Cuánto hace que no fuiste al cine?
Incorrect — the negative *hace que no…* takes the present perfect (has ido) or the simple present (vas), not the preterite. The negative implies an ongoing absence of the action, not a punctual event.
✅ ¿Cuánto hace que no has ido al cine?
How long has it been since you went to the cinema?
Key Takeaways
- Hace + tiempo + (que) + pretérito = "X ago" or "It's been X since…" for single past events.
- The verb is always preterite when the event is a one-time occurrence.
- The order is flexible: Hace dos años que llegué = Llegué hace dos años. With hace first, use que; with verb first, omit que.
- The same opener with present tense means an ongoing situation: Hace dos años que vivo aquí = "I've lived here for two years."
- The negative form uses present perfect in Spain: Hace meses que no he ido = "I haven't gone in months."
- Avoid atrás in peninsular Spanish — hace is the unmarked default.
Now practice Spanish
Reading grammar gets you part of the way. The exercises are where it sticks — free, no signup needed.
Start learning Spanish→Related Topics
- Expresiones de tiempoA1 — The peninsular toolkit for talking about when: ahora, ahora mismo, ayer, hoy, mañana, esta mañana, anoche, dentro de un rato, hace una semana. Includes the peninsular meal schedule, the menos cuarto vs cuarto para distinction, and the perfecto-vs-pretérito rule that ties tense to time expressions.
- Pretérito con expresiones temporalesA2 — The time expressions that trigger the preterite in peninsular Spanish — ayer, anoche, hace dos años, en 2010, durante tres horas — and the equally important set that triggers the present perfect instead in Spain.